gcube-model/docs/gcube-model-isrelatedto.rst

158 KiB

IsRelatedTo

Activates

Activates has a {@link Service} instance both as source and target as well as {@link CallsFor} but with a complete different semantic. Activates is used to indicates that the source {@link Service} of the relation enable the operation of the target Service. Examples are between a {@link VirtualMachine} and an {@link HostingNode} to capture the {@link VirtualMachine} is operating the {@link HostingNode}. Another example is between a {@link VirtualMachine} and an {@link EService}, e.g., between a {@link VirtualMachine} and a database instance. This relation can be created also between an {@link HostingNode} and one {@link EService}, e.g., to represent a container e.g., Tomcat and the web-service(s) is operating. Activates is also used between an {@link EService} and a {@link RunningPlugin} which enrich the functionality offered by the source service.

Activates extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Service Activates 0..n Service Activates has a {@link Service} instance both as source and target as well as {@link CallsFor} but with a complete different semantic. Activates is used to indicates that the source {@link Service} of the relation enable the operation of the target Service. Examples are between a {@link VirtualMachine} and an {@link HostingNode} to capture the {@link VirtualMachine} is operating the {@link HostingNode}. Another example is between a {@link VirtualMachine} and an {@link EService}, e.g., between a {@link VirtualMachine} and a database instance. This relation can be created also between an {@link HostingNode} and one {@link EService}, e.g., to represent a container e.g., Tomcat and the web-service(s) is operating. Activates is also used between an {@link EService} and a {@link RunningPlugin} which enrich the functionality offered by the source service.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Service Activates 0..n Service The source Service enables the target Service to be running. Examples are an Hosting Node which enables an EService; A VirtualMachine enabling an EService or an HostingNode; An EService enabling a RunningPlugin; A VirtualMachine enabling an HostingNode etc

The Activates current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

BelongsTo

BelongsTo indicates that a {@link Person} belong to the target {@link LegalBody}.

BelongsTo extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Person BelongsTo 0..n LegalBody BelongsTo indicates that a {@link Person} belong to the target {@link LegalBody}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Person BelongsTo 0..n LegalBody

The BelongsTo current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

CallsFor

A {@link Service} instance can require another {@link Service} instance to properly operate and this is indicated with CallsFor. Motivations similar to the ones for {@link Requires} relation conducted to the definition for this relation.

CallsFor extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Service CallsFor 0..n Service A {@link Service} instance can require another {@link Service} instance to properly operate and this is indicated with CallsFor. Motivations similar to the ones for {@link Requires} relation conducted to the definition for this relation.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Service CallsFor 0..n Service A reference to the Services needed by the target instance to work.

The CallsFor current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

Discovers

Any {@link EService} or its specialisations can be related with another {@link EService} with Discovers relation. Discovers relation inform that the source {@link EService} discovers the target through the information system.Discovers relation specialise the semantic of {@link CallsFor}.

Discovers extends CallsFor
Definition
Source Relation Multiplicity Target Description
EService Discovers 0..n EService Any {@link EService} or its specialisations can be related with another {@link EService} with Discovers relation. Discovers relation inform that the source {@link EService} discovers the target through the information system.Discovers relation specialise the semantic of {@link CallsFor}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
EService Discovers 0..n EService A reference to any other EService, the EService instance is discovering through query on IS.

The Discovers current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

Uses

Uses relation inform regarding the network invocation of the target{@link EService} by the source. Uses relation specialises the semantic of {@link CallsFor}.

Uses extends CallsFor
Definition
Source Relation Multiplicity Target Description
EService Uses 0..n EService Uses relation inform regarding the network invocation of the target{@link EService} by the source. Uses relation specialises the semantic of {@link CallsFor}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
EService Uses 0..n EService A reference to any other EService, the EService instance is invoking.

The Uses current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

Demands

Demands is used to properly support to share a {@link VirtualService} with another context.

Demands extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
VirtualService Demands 0..n Software Demands is used to properly support to share a {@link VirtualService} with another context.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
VirtualService Demands 0..n Software

The Demands current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

DependsOn

DependsOn indicates that a {@link Software} requires another one to work. This relation must not be confused with {@link Requires}.

DependsOn extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Software DependsOn 0..n Software DependsOn indicates that a {@link Software} requires another one to work. This relation must not be confused with {@link Requires}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Software DependsOn 0..n Software To capture any dependency between two software artifacts.

The DependsOn current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

IsPluginOf

A {@link Plugin} is a piece of Software extending the capabilities of another {@link Software} (main) and requiring the main {@link Software} to be executed. The relation between the main {@link Software} and the {@link Plugin} is expressed by IsPluginOf relation. IsPluginOf is an extension of {@link DependsOn}.

IsPluginOf extends DependsOn
Definition
Source Relation Multiplicity Target Description
Plugin IsPluginOf 0..n Software A {@link Plugin} is a piece of Software extending the capabilities of another {@link Software} (main) and requiring the main {@link Software} to be executed. The relation between the main {@link Software} and the {@link Plugin} is expressed by IsPluginOf relation. IsPluginOf is an extension of {@link DependsOn}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Plugin IsPluginOf 0..n Software A reference to the Software this Plugin is conceived to extend the capabilities.
Plugin IsPluginOf 0..n Software To capture the relation between a Software and its Plugins.

The IsPluginOf current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

Enables

Any {@link Service} representing running code of a specific software has the relation Enables targeted to the corresponding {@link Software}. Enables is used for example by {@link EService} to indicates the running software; from {@link HostingNode} to indicate the running software container; within {@link RunningPlugin} and the software represented as {@link Plugin}.

Enables extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Service Enables 0..n Software Any {@link Service} representing running code of a specific software has the relation Enables targeted to the corresponding {@link Software}. Enables is used for example by {@link EService} to indicates the running software; from {@link HostingNode} to indicate the running software container; within {@link RunningPlugin} and the software represented as {@link Plugin}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Service Enables 0..n Software A reference to any Software the Service is enabling (i.e. the Software is running throught the EService).

The Enables current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

Hosts

Hosts relation is used from a {@link Site} a {@link Service} instance. The target of the Hosts relation depends on the service offered by the Site. When the resources provided by a site are virtual machines, Hosts relation is created from a {@link Site} to a {@link VirtualMachine}. When, instead a Site provides web-services, Hosts relation is created with {@link EService}. If a site provides container facilities Hosts relation is created with {@link HostingNode}. By defining Hosts relation with target {@link Service}, the model is capable of representing the diverse type of federated systems and service.

Hosts extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Site Hosts 0..n Service Hosts relation is used from a {@link Site} a {@link Service} instance. The target of the Hosts relation depends on the service offered by the Site. When the resources provided by a site are virtual machines, Hosts relation is created from a {@link Site} to a {@link VirtualMachine}. When, instead a Site provides web-services, Hosts relation is created with {@link EService}. If a site provides container facilities Hosts relation is created with {@link HostingNode}. By defining Hosts relation with target {@link Service}, the model is capable of representing the diverse type of federated systems and service.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Site Hosts 0..n Service

The Hosts current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

Involves

Involves is used to indicate that and {@link Actor} is involved in a {@link Dataset}.

Involves extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Dataset Involves 0..n Actor Involves is used to indicate that and {@link Actor} is involved in a {@link Dataset}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Dataset Involves 0..n Actor

The Involves current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

IsCompliantWith

IsCompliantWith is used to indicated a {@link Dataset} compliant with a {@link Schema}.

IsCompliantWith extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Dataset IsCompliantWith 0..n Schema IsCompliantWith is used to indicated a {@link Dataset} compliant with a {@link Schema}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Dataset IsCompliantWith 0..n Schema Any schema characterising the content of the dataset, e.g. the schema describing the 'columns' of a CSV-based dataset.

The IsCompliantWith current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

IsConfiguredBy

The relation IsConfiguredBy indicates that the source {@link Software} requires a configuration when it is instantiated.

IsConfiguredBy extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Software IsConfiguredBy 0..n ConfigurationTemplate The relation IsConfiguredBy indicates that the source {@link Software} requires a configuration when it is instantiated.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Software IsConfiguredBy 0..n ConfigurationTemplate

The IsConfiguredBy current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

IsCorrelatedTo

IsCorrelatedTo relates a {@link Dataset} to another.

IsCorrelatedTo extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Dataset IsCorrelatedTo 0..n Dataset IsCorrelatedTo relates a {@link Dataset} to another.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Dataset IsCorrelatedTo 0..n Dataset

The IsCorrelatedTo current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

IsPartOf

IsPartOf is used when a {@link ConcreteDataset} is part of a {@link Dataset}.

IsPartOf extends IsCorrelatedTo
Definition
Source Relation Multiplicity Target Description
ConcreteDataset IsPartOf 0..n Dataset IsPartOf is used when a {@link ConcreteDataset} is part of a {@link Dataset}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
ConcreteDataset IsPartOf 0..n Dataset The reference to the 'incarnations'/'manifestations' contributing to a dataset.

The IsPartOf current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

IsCustomizedBy

IsCustomizedBy evidences that any {@link Service} can be customised by a {@link ConfigurationTemplate}.

IsCustomizedBy extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Service IsCustomizedBy 0..n ConfigurationTemplate IsCustomizedBy evidences that any {@link Service} can be customised by a {@link ConfigurationTemplate}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Service IsCustomizedBy 0..n ConfigurationTemplate
Service IsCustomizedBy 0..n ConfigurationTemplate A reference to any configuration characterising the Service behaviour.

The IsCustomizedBy current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

IsDerivationOf

IsDerivationOf indicate that the source {@link Configuration} is an instantiation of the target {@link ConfigurationTemplate}.

IsDerivationOf extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Configuration IsDerivationOf 0..n ConfigurationTemplate IsDerivationOf indicate that the source {@link Configuration} is an instantiation of the target {@link ConfigurationTemplate}.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Configuration IsDerivationOf 0..n ConfigurationTemplate

The IsDerivationOf current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

IsOwnedBy

Any {@link Site} is owned by an {@link Actor} and this is captured by the IsOwnedBy relation. The referenced {@link Actor} can be used as a contact point during an emergency, to agree on the scheduling of a site downtime and to request additional resources during the downtime of another site.

IsOwnedBy extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Site IsOwnedBy 0..n Actor Any {@link Site} is owned by an {@link Actor} and this is captured by the IsOwnedBy relation. The referenced {@link Actor} can be used as a contact point during an emergency, to agree on the scheduling of a site downtime and to request additional resources during the downtime of another site.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Site IsOwnedBy 0..n Actor

The IsOwnedBy current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

Manages

Manages indicates that of the source {@link Service} manages the target {@link Dataset}, e.g. read, manipulate, etc.

Manages extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Service Manages 0..n Dataset Manages indicates that of the source {@link Service} manages the target {@link Dataset}, e.g. read, manipulate, etc.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Service Manages 0..n Dataset A reference to any Dataset resource managed by the Service instance.
Service Manages 0..n Dataset The link between the service that 'manages' the dataset and the dataset, e.g. the service that hosts the dataset and give access to it.

The Manages current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.

Requires

Requires is used to indicate that the source {@link Software} when activated requires to interact with a specific {@link Service} instance, i.e., the target of the relation. This relation usually reflects an administrative constraint than a technological limitation. When there are no constraint on the instance the relation is instead {@link DependsOn} which is between two {@link Software}.Not necessarily all the {@link Software} running in the infrastructure are represented as resources. Only the {@link Software} required for infrastructure administration or the ones to be managed with specific policies are represented. Indeed, Requires relation is normally used as policy constraint. Let imagine an open source software which uses a MySQL database as backend. In many cases, what characterises the software instance is the data present in the backend. The infrastructure manager could stipulate an agreement with a provider having a particular set of data which is not for public domain. The software once deployed, giving the business agreement, is entitled to use the instance of the provider and not a generic MySQL database instance. The infrastructure manager imposes the use of such a particular instance because of the data it contains.

Requires extends IsRelatedTo
Definition
Source Relation Multiplicity Target Description
Software Requires 0..n Service Requires is used to indicate that the source {@link Software} when activated requires to interact with a specific {@link Service} instance, i.e., the target of the relation. This relation usually reflects an administrative constraint than a technological limitation. When there are no constraint on the instance the relation is instead {@link DependsOn} which is between two {@link Software}.Not necessarily all the {@link Software} running in the infrastructure are represented as resources. Only the {@link Software} required for infrastructure administration or the ones to be managed with specific policies are represented. Indeed, Requires relation is normally used as policy constraint. Let imagine an open source software which uses a MySQL database as backend. In many cases, what characterises the software instance is the data present in the backend. The infrastructure manager could stipulate an agreement with a provider having a particular set of data which is not for public domain. The software once deployed, giving the business agreement, is entitled to use the instance of the provider and not a generic MySQL database instance. The infrastructure manager imposes the use of such a particular instance because of the data it contains.
Properties
Name Type Attributes Description
This type does not define any additional attributes.
Known Usage
Source Relation Multiplicity Target Description
Service Requires 0..n Service A reference to any Service needed by a Software to properly operate, e.g. this can be used to capture a sort of run-time requirements between a software component and the Service it needs.
Software Requires 0..n Service To capture any dependency between a software artifact and a Service, e.g. A software requiring a specific database instance.

The Requires current version is 1.0.0.

Changelog:

  • 1.0.0: First Version.