ForeignKeyComponent

Fully qualified class name: DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::ForeignKeyComponent

Definition

Role of a data structure component for content referencing purposes

Explanatory notes

Equivalent to a foreign key attribute (i.e. column) in the relational model. It can be used in conjunction with a primary key component to link data structures and their related data sets.

Diagram

Attributes

Name

Inherited from

Description

Data Type

Multiplicity

Default value

identifier

- own class -

Identifier for objects requiring short- or long-lasting referencing and management.

Identifier

0..1

Associations

Direction

Association

Description

Multiplicity of ForeignKeyComponent

Package of Other Class

Other Class

Multiplicity of other class

Aggregation Kind

Inherited from

to

ForeignKey isComposedOf ForeignKeyComponent

1..*

- own package -

ForeignKey

1..1

none

- own class -

from

ForeignKeyComponent correspondsTo DataStructureComponent

0..1

- own package -

DataStructureComponent

1..1

none

- own class -

from

ForeignKeyComponent references PrimaryKeyComponent

0..1

- own package -

PrimaryKeyComponent

1..1

none

- own class -

Syntax representations / encodings

All syntax representations except the Canonical XMI are provided as reference points for specific implementations, or for use as defaults if sufficient in the form presented.

Fragment for the class ForeignKeyComponent (entire model as XMI)

 1<packagedElement xmlns:StandardProfile="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard"
 2                 xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML"
 3                 xmlns:xmi="http://www.omg.org/spec/XMI/20131001"
 4                 xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent"
 5                 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent"
 6                 xmi:type="uml:Class">
 7   <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-ownedComment"
 8                 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-ownedComment"
 9                 xmi:type="uml:Comment">
10      <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent"/>
11      <body>Definition
12============
13Role of a data structure component for content referencing purposes
14
15Explanatory notes
16===================
17Equivalent to a foreign key attribute (i.e. column) in the relational model.
18It can be used in conjunction with a primary key component to link data structures and their related data sets.</body>
19   </ownedComment>
20   <name>ForeignKeyComponent</name>
21   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-identifier"
22                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-identifier"
23                   xmi:type="uml:Property">
24      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-identifier-ownedComment"
25                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-identifier-ownedComment"
26                    xmi:type="uml:Comment">
27         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-identifier"/>
28         <body>Identifier for objects requiring short- or long-lasting referencing and management.</body>
29      </ownedComment>
30      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-identifier-lowerValue"
31                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-identifier-lowerValue"
32                  xmi:type="uml:LiteralInteger"/>
33      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-identifier-upperValue"
34                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-identifier-upperValue"
35                  xmi:type="uml:LiteralUnlimitedNatural">
36         <value>1</value>
37      </upperValue>
38      <name>identifier</name>
39      <isID>true</isID>
40      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-Identifier"/>
41   </ownedAttribute>
42   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-ownedAttribute_1"
43                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-ownedAttribute_1"
44                   xmi:type="uml:Property">
45      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-ownedAttribute_1-lowerValue"
46                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-ownedAttribute_1-lowerValue"
47                  xmi:type="uml:LiteralInteger">
48         <value>1</value>
49      </lowerValue>
50      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-ownedAttribute_1-upperValue"
51                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-ownedAttribute_1-upperValue"
52                  xmi:type="uml:LiteralUnlimitedNatural">
53         <value>1</value>
54      </upperValue>
55      <association xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent_references_PrimaryKeyComponent"/>
56      <type xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-PrimaryKeyComponent"/>
57   </ownedAttribute>
58   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-ownedAttribute_2"
59                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-ownedAttribute_2"
60                   xmi:type="uml:Property">
61      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-ownedAttribute_2-lowerValue"
62                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-ownedAttribute_2-lowerValue"
63                  xmi:type="uml:LiteralInteger">
64         <value>1</value>
65      </lowerValue>
66      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent-ownedAttribute_2-upperValue"
67                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ForeignKeyComponent-ownedAttribute_2-upperValue"
68                  xmi:type="uml:LiteralUnlimitedNatural">
69         <value>1</value>
70      </upperValue>
71      <association xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-ForeignKeyComponent_correspondsTo_DataStructureComponent"/>
72      <type xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent"/>
73   </ownedAttribute>
74</packagedElement>

Fragment for the class ForeignKeyComponent (entire XML Schema)

  1<xs:element name="ForeignKeyComponent"
  2            type="ForeignKeyComponentXsdType"
  3            xml:id="ForeignKeyComponent">
  4  <!-- based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::ForeignKeyComponent -->
  5  <xs:annotation>
  6    <xs:documentation>Definition
  7          ============
  8          Role of a data structure component for content referencing purposes
  9          
 10          Explanatory notes
 11          ===================
 12          Equivalent to a foreign key attribute (i.e. column) in the relational model.
 13          It can be used in conjunction with a primary key component to link data structures and their related data sets.</xs:documentation>
 14  </xs:annotation>
 15</xs:element>
 16<xs:complexType name="ForeignKeyComponentXsdType"
 17                xml:id="ForeignKeyComponentXsdType">
 18  <xs:annotation>
 19    <xs:documentation>Definition
 20          ============
 21          Role of a data structure component for content referencing purposes
 22          
 23          Explanatory notes
 24          ===================
 25          Equivalent to a foreign key attribute (i.e. column) in the relational model.
 26          It can be used in conjunction with a primary key component to link data structures and their related data sets.</xs:documentation>
 27  </xs:annotation>
 28  <xs:sequence>
 29    <xs:element name="identifier"
 30                type="IdentifierXsdType"
 31                minOccurs="0"
 32                maxOccurs="1"
 33                xml:id="ForeignKeyComponent-identifier">
 34      <xs:annotation>
 35        <xs:documentation>Identifier for objects requiring short- or long-lasting referencing and management.</xs:documentation>
 36      </xs:annotation>
 37    </xs:element>
 38    <xs:element name="ForeignKeyComponent_references_PrimaryKeyComponent"
 39                minOccurs="1"
 40                maxOccurs="1"
 41                xml:id="ForeignKeyComponent_references_PrimaryKeyComponent">
 42      <xs:annotation>
 43        <xs:documentation></xs:documentation>
 44      </xs:annotation>
 45      <xs:complexType>
 46        <xs:complexContent>
 47          <xs:restriction base="AssociationReferenceXsdType">
 48            <xs:sequence>
 49              <xs:element name="ddiReference"
 50                          type="InternationalRegistrationDataIdentifierXsdType"
 51                          minOccurs="0"
 52                          maxOccurs="1"
 53                          xml:id="ForeignKeyComponent_references_PrimaryKeyComponent-ddiReference"/>
 54              <xs:element name="validType"
 55                          minOccurs="0"
 56                          maxOccurs="1"
 57                          xml:id="ForeignKeyComponent_references_PrimaryKeyComponent-validType">
 58                <xs:simpleType>
 59                  <xs:restriction base="xs:NMTOKEN">
 60                    <xs:enumeration value="PrimaryKeyComponent"/>
 61                  </xs:restriction>
 62                </xs:simpleType>
 63              </xs:element>
 64            </xs:sequence>
 65          </xs:restriction>
 66        </xs:complexContent>
 67      </xs:complexType>
 68    </xs:element>
 69    <xs:element name="ForeignKeyComponent_correspondsTo_DataStructureComponent"
 70                minOccurs="1"
 71                maxOccurs="1"
 72                xml:id="ForeignKeyComponent_correspondsTo_DataStructureComponent">
 73      <xs:annotation>
 74        <xs:documentation></xs:documentation>
 75      </xs:annotation>
 76      <xs:complexType>
 77        <xs:complexContent>
 78          <xs:restriction base="AssociationReferenceXsdType">
 79            <xs:sequence>
 80              <xs:element name="ddiReference"
 81                          type="InternationalRegistrationDataIdentifierXsdType"
 82                          minOccurs="0"
 83                          maxOccurs="1"
 84                          xml:id="ForeignKeyComponent_correspondsTo_DataStructureComponent-ddiReference"/>
 85              <xs:element name="validType"
 86                          minOccurs="0"
 87                          maxOccurs="1"
 88                          xml:id="ForeignKeyComponent_correspondsTo_DataStructureComponent-validType">
 89                <xs:simpleType>
 90                  <xs:restriction base="xs:NMTOKEN">
 91                    <xs:enumeration value="AttributeComponent"/>
 92                    <xs:enumeration value="ContextualComponent"/>
 93                    <xs:enumeration value="DataStructure"/>
 94                    <xs:enumeration value="DataStructureComponent"/>
 95                    <xs:enumeration value="DimensionComponent"/>
 96                    <xs:enumeration value="DimensionalDataStructure"/>
 97                    <xs:enumeration value="IdentifierComponent"/>
 98                    <xs:enumeration value="KeyValueStructure"/>
 99                    <xs:enumeration value="LongDataStructure"/>
100                    <xs:enumeration value="MeasureComponent"/>
101                    <xs:enumeration value="QualifiedMeasure"/>
102                    <xs:enumeration value="SyntheticIdComponent"/>
103                    <xs:enumeration value="VariableDescriptorComponent"/>
104                    <xs:enumeration value="VariableValueComponent"/>
105                    <xs:enumeration value="WideDataStructure"/>
106                  </xs:restriction>
107                </xs:simpleType>
108              </xs:element>
109            </xs:sequence>
110          </xs:restriction>
111        </xs:complexContent>
112      </xs:complexType>
113    </xs:element>
114  </xs:sequence>
115</xs:complexType>

Fragment for the class ForeignKeyComponent (main ontology)

 1# class ForeignKeyComponent
 2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::ForeignKeyComponent
 3cdi:ForeignKeyComponent
 4  a rdfs:Class, owl:Class, ucmis:Class;
 5  rdfs:label "ForeignKeyComponent";
 6  rdfs:comment "Definition\n============\nRole of a data structure component for content referencing purposes\n\nExplanatory notes\n===================\nEquivalent to a foreign key attribute (i.e. column) in the relational model.\nIt can be used in conjunction with a primary key component to link data structures and their related data sets."@en;
 7  
 8.
 9
10cdi:ForeignKeyComponent-identifier
11  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
12  rdfs:label "identifier";
13  rdfs:comment "Identifier for objects requiring short- or long-lasting referencing and management."@en;
14  rdfs:domain cdi:ForeignKeyComponent;
15  rdfs:range cdi:Identifier;
16.
17
18
19cdi:ForeignKeyComponent_correspondsTo_DataStructureComponent
20  a rdf:Property, owl:ObjectProperty, ucmis:Association;
21  # ASSOCIATION
22  rdfs:label "correspondsTo";
23  skos:altLabel "ForeignKeyComponent_correspondsTo_DataStructureComponent";
24  
25  rdfs:domain cdi:ForeignKeyComponent;
26  rdfs:range cdi:DataStructureComponent;
27.
28
29cdi:ForeignKeyComponent_references_PrimaryKeyComponent
30  a rdf:Property, owl:ObjectProperty, ucmis:Association;
31  # ASSOCIATION
32  rdfs:label "references";
33  skos:altLabel "ForeignKeyComponent_references_PrimaryKeyComponent";
34  
35  rdfs:domain cdi:ForeignKeyComponent;
36  rdfs:range cdi:PrimaryKeyComponent;
37.

Fragment for the class ForeignKeyComponent (main JSON-LD)

 1{
 2  "@context": [
 3    {
 4      "cdi": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/",
 5      "xsd": "http://www.w3.org/2001/XMLSchema#",
 6      "ForeignKeyComponent": "cdi:ForeignKeyComponent",
 7      "identifier": {
 8        "@id": "cdi:ForeignKeyComponent-identifier",
 9        "@type": "@id",
10        "@context": "Identifier.jsonld"
11      },
12      
13      "correspondsTo": {
14        "@id": "cdi:ForeignKeyComponent_correspondsTo_DataStructureComponent",
15        "@type": "@id"      },
16      "references": {
17        "@id": "cdi:ForeignKeyComponent_references_PrimaryKeyComponent",
18        "@type": "@id"      },
19      "isComposedOf_OF_ForeignKey": {
20        "@reverse": "cdi:ForeignKey_isComposedOf_ForeignKeyComponent",
21        "@type": "@id"
22      },
23      " comment ": "tag:json-should-support-trailing-commas" 
24    }
25  ],
26  "generatedBy": "This code was generated by the Eclipse Acceleo project UCMIS M2T on 2024-09-23 21:52:56.",
27  "basedOn": "based on the UML data type DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::ForeignKeyComponent"
28}