Associations (Non-Compositions)

Get the non-composition associations in the DEXPI Information Model.

Each association that is not a composition has the following form:

../_images/generic_association.svg

The SPARQL query below yields the values for the symbols in italics.

Variables

type_of_member_end_2
The class that has an attribute name_of_member_end_1.
upper_of_member_end_2
The upper multiplicity of the second association end.
name_of_member_end_1
The name of the attribute of type_of_member_end_2.
type_of_member_end_1
The type of the attribute of type_of_member_end_2.
upper_of_member_end_1
The upper multiplicity of the attribute of type_of_member_end_2.
description

Optional. A description of the association.

Note

Descriptions may contain markup that is used to build the official PDF version of the DEXPI Specification. In the cached HTML, CSV, and Excel results below, this markup has been removed for better readability. For example, a description such as The \labeledref[class:]{ControlledActuator} of the <owner> will be shown as The ControlledActuator of the ActuatingSystem.

proteus_association_type_of_member_end_1

In case the association is implemented as a Proteus <Association>: the Proteus association type corresponding to member end 1.

Otherwise: empty

proteus_association_type_of_member_end_2

In case the association is implemented as a Proteus <Association>: the Proteus association type corresponding to member end 2.

Otherwise: empty

SPARQL Query

PREFIX meta: <http://sandbox.dexpi.org/meta/>

SELECT ?type_of_member_end_2 ?upper_of_member_end_2 ?name_of_member_end_1 ?type_of_member_end_1 ?upper_of_member_end_1 ?description ?proteus_association_type_of_member_end_1 ?proteus_association_type_of_member_end_2
WHERE
{
    [] a meta:ModelClass;
        meta:simpleLabel ?type_of_member_end_2;
        meta:hasDeclaration ?decl.

    ?decl a meta:ModelReferenceDeclaration;
        meta:simpleLabel ?name_of_member_end_1;
        meta:hasTargetType ?target_class;
        meta:hasCardinality ?card;
        meta:hasSourceCardinality ?source_card.

    ?target_class a meta:ModelClass;
        meta:simpleLabel ?type_of_member_end_1.

    {
        {
            ?card meta:maxValues ?upper_of_member_end_1.
        }
        UNION
        {
            BIND("*" as ?upper_of_member_end_1).
            FILTER NOT EXISTS { ?card meta:maxValues ?any_value. }
        }
    }

    {
        {
            ?source_card meta:maxValues ?upper_of_member_end_2.
        }
        UNION
        {
            BIND("*" as ?upper_of_member_end_2).
            FILTER NOT EXISTS { ?source_card meta:maxValues ?any_value. }
        }
    }

    OPTIONAL
    {
        ?decl meta:description ?description.
    }

    OPTIONAL
    {
        ?decl meta:proteusImplementation [
            a meta:AssociationModelReference;
            meta:sourceAssociation ?proteus_association_type_of_member_end_1;
            meta:targetAssociation ?proteus_association_type_of_member_end_2 ].
    }
}
ORDER BY ?type_of_member_end_2 ?name_of_member_end_2

Partial SPARQL Results

The full query result contains 36 rows. The first rows are as follows:

type_of_member_end_2 upper_of_member_end_2 name_of_member_end_1 type_of_member_end_1 upper_of_member_end_1 description proteus_association_type_of_member_end_1 proteus_association_type_of_member_end_2
ActuatingFunction 1 ActuatingLocation PipingNetworkSegment 1 The actuating location of the ActuatingFunction. is located in is the location of
ActuatingFunction * Systems ActuatingSystem 1 The ActuatingSystem that implements the ActuatingFunction. is fulfilled by fulfills
AgitatorRotor * Chamber Chamber 1 The Chamber in which the AgitatorRotor is located, if applicable. The Chamber must be a component of the same object as the AgitatorRotor. is located in is the location of
AreaIsa95LocatedStructure * AreaIsa95 AreaIsa95 1 The AreaIsa95 in which the AreaIsa95LocatedStructure is located. is located in is the location of
Displacer * Chamber Chamber 1 The Chamber in which the Displacer is located, if applicable. The Chamber must be a component of the same object as the Displacer. is located in is the location of
... ... ... ... ... ... ... ...

Full SPARQL Results

Cached

Note

The cached results below are guaranteed to correspond to DEXPI P&ID Specification 1.2.

Cached results:

Online

Note

Online results can change! There is no guarantee that these results correspond to DEXPI P&ID Specification 1.2.

Get results online from DEXPI SPARQL server at http://endpoint.dexpi.org: