DataStructureComponent#
Fully qualified class name of the UML model DDI-CDI 1.0: DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::DataStructureComponent
Definition#
Role given to a represented variable in the context of a data structure.
Explanatory notes#
A represented variable can have different roles in different data structures. For instance, the variable sex can be a measure in a wide data structure and a dimension in a dimensional data structure.
Diagram#
Diagram
Inheritance#
Inheritance
Attributes#
Attributes
Name |
Inherited from |
Description |
Data Type |
Multiplicity |
Default value |
|---|---|---|---|---|---|
identifier |
- own class - |
Identifier for objects requiring short- or long-lasting referencing and management. |
0..1 |
||
semantic |
- own class - |
Qualifies the purpose or use expressed as a paired external controlled vocabulary. |
0..* |
||
specialization |
- own class - |
The role played by the component for the data set for purposes of harmonization and integration, typically regarding geography, time, etc. |
0..1 |
Associations#
Associations
Direction |
Association |
Description |
Multiplicity of DataStructureComponent |
Package of Other Class |
Other Class |
Multiplicity of other class |
Aggregation Kind |
Inherited from |
|---|---|---|---|---|---|---|---|---|
from |
DataStructureComponent isDefinedBy RepresentedVariable |
Data structure component is defined by zero to one represented variable. |
0..* |
0..1 |
none |
own class |
||
to |
DataPoint correspondsTo DataStructureComponent |
0..* |
0..* |
none |
own class |
|||
to |
DataStructure has DataStructureComponent |
0..* |
0..1 |
none |
own class |
|||
to |
KeyMember isBasedOn DataStructureComponent |
0..* |
0..* |
none |
own class |
|||
to |
AttributeComponent qualifies DataStructureComponent |
0..* |
- own package - |
0..* |
none |
own class |
||
to |
ComponentPosition indexes DataStructureComponent |
0..1 |
- own package - |
0..* |
none |
own class |
||
to |
ForeignKeyComponent correspondsTo DataStructureComponent |
1..1 |
- own package - |
0..1 |
none |
own class |
||
to |
PrimaryKeyComponent correspondsTo DataStructureComponent |
1..1 |
- own package - |
0..1 |
none |
own class |
Encodings#
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 DataStructureComponent (entire model as XMI)
1<packagedElement xmlns:StandardProfile="http://www.omg.org/spec/UML/20131001/StandardProfile"
2 xmlns:uml="http://www.omg.org/spec/UML/20131001"
3 xmlns:xmi="http://www.omg.org/spec/XMI/20131001"
4 xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent"
5 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent"
6 xmi:type="uml:Class">
7 <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-ownedComment"
8 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-ownedComment"
9 xmi:type="uml:Comment">
10 <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent"/>
11 <body>Definition
12============
13Role given to a represented variable in the context of a data structure.
14
15Explanatory notes
16===================
17A represented variable can have different roles in different data structures. For instance, the variable sex can be a measure in a wide data structure and a dimension in a dimensional data structure.</body>
18 </ownedComment>
19 <name>DataStructureComponent</name>
20 <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-identifier"
21 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-identifier"
22 xmi:type="uml:Property">
23 <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-identifier-ownedComment"
24 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-identifier-ownedComment"
25 xmi:type="uml:Comment">
26 <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-identifier"/>
27 <body>Identifier for objects requiring short- or long-lasting referencing and management.</body>
28 </ownedComment>
29 <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-identifier-lowerValue"
30 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-identifier-lowerValue"
31 xmi:type="uml:LiteralInteger"/>
32 <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-identifier-upperValue"
33 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-identifier-upperValue"
34 xmi:type="uml:LiteralUnlimitedNatural">
35 <value>1</value>
36 </upperValue>
37 <name>identifier</name>
38 <isID>true</isID>
39 <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-Identifier"/>
40 </ownedAttribute>
41 <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-ownedAttribute"
42 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-ownedAttribute"
43 xmi:type="uml:Property">
44 <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-ownedAttribute-lowerValue"
45 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-ownedAttribute-lowerValue"
46 xmi:type="uml:LiteralInteger"/>
47 <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-ownedAttribute-upperValue"
48 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-ownedAttribute-upperValue"
49 xmi:type="uml:LiteralUnlimitedNatural">
50 <value>1</value>
51 </upperValue>
52 <association xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-DataStructureComponent_isDefinedBy_RepresentedVariable"/>
53 <type xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-RepresentedVariable"/>
54 </ownedAttribute>
55 <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-semantic"
56 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-semantic"
57 xmi:type="uml:Property">
58 <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-semantic-ownedComment"
59 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-semantic-ownedComment"
60 xmi:type="uml:Comment">
61 <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-semantic"/>
62 <body>Qualifies the purpose or use expressed as a paired external controlled vocabulary.</body>
63 </ownedComment>
64 <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-semantic-lowerValue"
65 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-semantic-lowerValue"
66 xmi:type="uml:LiteralInteger"/>
67 <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-semantic-upperValue"
68 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-semantic-upperValue"
69 xmi:type="uml:LiteralUnlimitedNatural">
70 <value>*</value>
71 </upperValue>
72 <name>semantic</name>
73 <isOrdered>true</isOrdered>
74 <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-PairedControlledVocabularyEntry"/>
75 </ownedAttribute>
76 <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-specialization"
77 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-specialization"
78 xmi:type="uml:Property">
79 <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-specialization-ownedComment"
80 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-specialization-ownedComment"
81 xmi:type="uml:Comment">
82 <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-specialization"/>
83 <body>The role played by the component for the data set for purposes of harmonization and integration, typically regarding geography, time, etc.</body>
84 </ownedComment>
85 <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-specialization-lowerValue"
86 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-specialization-lowerValue"
87 xmi:type="uml:LiteralInteger"/>
88 <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent-specialization-upperValue"
89 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#DataStructureComponent-specialization-upperValue"
90 xmi:type="uml:LiteralUnlimitedNatural">
91 <value>1</value>
92 </upperValue>
93 <name>specialization</name>
94 <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-SpecializationRole"/>
95 </ownedAttribute>
96</packagedElement>
Fragment for the class DataStructureComponent (entire XML Schema)
1<xs:element name="DataStructureComponent"
2 type="DataStructureComponentXsdType"
3 xml:id="DataStructureComponent">
4 <!-- based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::DataStructureComponent -->
5 <xs:annotation>
6 <xs:documentation>Definition
7 ============
8 Role given to a represented variable in the context of a data structure.
9
10 Explanatory notes
11 ===================
12 A represented variable can have different roles in different data structures. For instance, the variable sex can be a measure in a wide data structure and a dimension in a dimensional data structure.</xs:documentation>
13 </xs:annotation>
14</xs:element>
15<xs:complexType name="DataStructureComponentXsdType"
16 xml:id="DataStructureComponentXsdType">
17 <xs:annotation>
18 <xs:documentation>Definition
19 ============
20 Role given to a represented variable in the context of a data structure.
21
22 Explanatory notes
23 ===================
24 A represented variable can have different roles in different data structures. For instance, the variable sex can be a measure in a wide data structure and a dimension in a dimensional data structure.</xs:documentation>
25 </xs:annotation>
26 <xs:sequence>
27 <xs:element name="identifier"
28 type="IdentifierXsdType"
29 minOccurs="0"
30 maxOccurs="1"
31 xml:id="DataStructureComponent-identifier">
32 <xs:annotation>
33 <xs:documentation>Identifier for objects requiring short- or long-lasting referencing and management.</xs:documentation>
34 </xs:annotation>
35 </xs:element>
36 <xs:element name="semantic"
37 type="PairedControlledVocabularyEntryXsdType"
38 minOccurs="0"
39 maxOccurs="unbounded"
40 xml:id="DataStructureComponent-semantic">
41 <xs:annotation>
42 <xs:documentation>Qualifies the purpose or use expressed as a paired external controlled vocabulary.</xs:documentation>
43 </xs:annotation>
44 </xs:element>
45 <xs:element name="specialization"
46 type="SpecializationRoleXsdType"
47 minOccurs="0"
48 maxOccurs="1"
49 xml:id="DataStructureComponent-specialization">
50 <xs:annotation>
51 <xs:documentation>The role played by the component for the data set for purposes of harmonization and integration, typically regarding geography, time, etc.</xs:documentation>
52 </xs:annotation>
53 </xs:element>
54 <xs:element name="DataStructureComponent_isDefinedBy_RepresentedVariable"
55 minOccurs="0"
56 maxOccurs="1"
57 xml:id="DataStructureComponent_isDefinedBy_RepresentedVariable">
58 <xs:annotation>
59 <xs:documentation>Data structure component is defined by zero to one represented variable.</xs:documentation>
60 </xs:annotation>
61 <xs:complexType>
62 <xs:complexContent>
63 <xs:restriction base="AssociationReferenceXsdType">
64 <xs:sequence>
65 <xs:element name="ddiReference"
66 type="InternationalRegistrationDataIdentifierXsdType"
67 minOccurs="0"
68 maxOccurs="1"
69 xml:id="DataStructureComponent_isDefinedBy_RepresentedVariable-ddiReference"/>
70 <xs:element name="validType"
71 minOccurs="0"
72 maxOccurs="unbounded"
73 xml:id="DataStructureComponent_isDefinedBy_RepresentedVariable-validType">
74 <xs:simpleType>
75 <xs:restriction base="xs:NMTOKEN">
76 <xs:enumeration value="DescriptorVariable"/>
77 <xs:enumeration value="InstanceVariable"/>
78 <xs:enumeration value="ReferenceVariable"/>
79 <xs:enumeration value="RepresentedVariable"/>
80 </xs:restriction>
81 </xs:simpleType>
82 </xs:element>
83 </xs:sequence>
84 </xs:restriction>
85 </xs:complexContent>
86 </xs:complexType>
87 </xs:element>
88 </xs:sequence>
89</xs:complexType>
Fragment for the class DataStructureComponent (entire JSON Schema)
1"cls-DataStructureComponent": {
2 "description": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/DataStructureComponent",
3 "type": "object",
4 "properties": {
5 "@context": {
6 "$ref": "#/defs/at-context"
7 },
8 "@id": {
9 "type": "string",
10 "format": "iri-reference"
11 },
12 "@type": {
13 "const": "DataStructureComponent"
14 },
15 "identifier": {
16 "$comment": "cardinality 0..1 – from cdi:DataStructureComponent",
17 "$ref": "#/defs/dt-Identifier"
18 },
19 "semantic": {
20 "$comment": "cardinality 0..-1 – from cdi:DataStructureComponent",
21 "if": { "type": "array" },
22 "then": { "items": { "$ref": "#/defs/dt-PairedControlledVocabularyEntry" } },
23 "else": { "$ref": "#/defs/dt-PairedControlledVocabularyEntry" }
24 },
25 "specialization": {
26 "$comment": "cardinality 0..1 – from cdi:DataStructureComponent",
27 "$ref": "#/defs/dt-SpecializationRole"
28 },
29 "isDefinedBy_RepresentedVariable": {
30 "description": "DataStructureComponent_isDefinedBy_RepresentedVariable",
31 "$comment": "cardinality 0..1",
32 "$ref": "#/defs/target-RepresentedVariable"
33 },
34 "correspondsTo_DataStructureComponent_OF_DataPoint": {
35 "description": "DataPoint_correspondsTo_DataStructureComponent",
36 "$comment": "cardinality 0..-1",
37 "anyOf": [
38 {
39 "$ref": "#/defs/target-DataPoint"
40 },
41 {
42 "type": "array",
43 "items": {
44 "$ref": "#/defs/target-DataPoint"
45 }
46 }
47 ]
48 },
49 "has_DataStructureComponent_OF_DataStructure": {
50 "description": "DataStructure_has_DataStructureComponent",
51 "$comment": "cardinality 0..1",
52 "$ref": "#/defs/target-DataStructure"
53 },
54 "isBasedOn_OF_KeyMember": {
55 "description": "KeyMember_isBasedOn_DataStructureComponent",
56 "$comment": "cardinality 0..-1",
57 "anyOf": [
58 {
59 "$ref": "#/defs/target-KeyMember"
60 },
61 {
62 "type": "array",
63 "items": {
64 "$ref": "#/defs/target-KeyMember"
65 }
66 }
67 ]
68 },
69 "qualifies_OF_AttributeComponent": {
70 "description": "AttributeComponent_qualifies_DataStructureComponent",
71 "$comment": "cardinality 0..-1",
72 "anyOf": [
73 {
74 "$ref": "#/defs/target-AttributeComponent"
75 },
76 {
77 "type": "array",
78 "items": {
79 "$ref": "#/defs/target-AttributeComponent"
80 }
81 }
82 ]
83 },
84 "indexes_OF_ComponentPosition": {
85 "description": "ComponentPosition_indexes_DataStructureComponent",
86 "$comment": "cardinality 0..-1",
87 "anyOf": [
88 {
89 "$ref": "#/defs/target-ComponentPosition"
90 },
91 {
92 "type": "array",
93 "items": {
94 "$ref": "#/defs/target-ComponentPosition"
95 }
96 }
97 ]
98 },
99 "correspondsTo_DataStructureComponent_OF_ForeignKeyComponent": {
100 "description": "ForeignKeyComponent_correspondsTo_DataStructureComponent",
101 "$comment": "cardinality 0..1",
102 "$ref": "#/defs/target-ForeignKeyComponent"
103 },
104 "correspondsTo_DataStructureComponent_OF_PrimaryKeyComponent": {
105 "description": "PrimaryKeyComponent_correspondsTo_DataStructureComponent",
106 "$comment": "cardinality 0..1",
107 "$ref": "#/defs/target-PrimaryKeyComponent"
108 },
109 "sameAs": {
110 "$ref": "#/defs/owl:sameAs"
111 }
112 },
113 "required": ["@type"],
114 "additionalProperties": false
115},
116"target-DataStructureComponent": {
117 "description": "all subclasses of http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/DataStructureComponent",
118 "anyOf": [
119 { "$ref": "#/defs/cls-DataStructureComponent" },
120 { "$ref": "#/defs/cls-AttributeComponent" },
121 { "$ref": "#/defs/cls-ContextualComponent" },
122 { "$ref": "#/defs/cls-DataStructure" },
123 { "$ref": "#/defs/cls-DimensionComponent" },
124 { "$ref": "#/defs/cls-IdentifierComponent" },
125 { "$ref": "#/defs/cls-MeasureComponent" },
126 { "$ref": "#/defs/cls-SyntheticIdComponent" },
127 { "$ref": "#/defs/cls-VariableDescriptorComponent" },
128 { "$ref": "#/defs/cls-VariableValueComponent" },
129 { "type": "string", "format": "iri-reference" }
130 ]
131},
Fragment for the class DataStructureComponent (main ontology)
1# class DataStructureComponent
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::DataStructureComponent
3cdi:DataStructureComponent
4 a rdfs:Class, owl:Class, ucmis:Class;
5 rdfs:label "DataStructureComponent";
6 rdfs:comment "Definition \n============ \nRole given to a represented variable in the context of a data structure. \n\nExplanatory notes \n=================== \nA represented variable can have different roles in different data structures. For instance, the variable sex can be a measure in a wide data structure and a dimension in a dimensional data structure."@en;
7
8.
9
10cdi:DataStructureComponent-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:DataStructureComponent;
15 rdfs:range cdi:Identifier;
16.
17
18cdi:DataStructureComponent-semantic
19 a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
20 rdfs:label "semantic";
21 rdfs:comment "Qualifies the purpose or use expressed as a paired external controlled vocabulary."@en;
22 rdfs:domain cdi:DataStructureComponent;
23 rdfs:range cdi:PairedControlledVocabularyEntry;
24.
25
26cdi:DataStructureComponent-specialization
27 a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
28 rdfs:label "specialization";
29 rdfs:comment "The role played by the component for the data set for purposes of harmonization and integration, typically regarding geography, time, etc."@en;
30 rdfs:domain cdi:DataStructureComponent;
31 rdfs:range cdi:SpecializationRole;
32.
33
34
35cdi:DataStructureComponent_isDefinedBy_RepresentedVariable
36 a rdf:Property, owl:ObjectProperty, ucmis:Association;
37 # ASSOCIATION
38 rdfs:label "isDefinedBy_RepresentedVariable";
39 skos:altLabel "DataStructureComponent_isDefinedBy_RepresentedVariable";
40 rdfs:comment "Data structure component is defined by zero to one represented variable."@en;
41 rdfs:domain cdi:DataStructureComponent;
42 rdfs:range cdi:RepresentedVariable;
43.
Fragment for the class DataStructureComponent (entire 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
7 "identifier": {
8 "@id": "cdi:DataStructureComponent-identifier",
9 "@type": "@id",
10 "@context": "Identifier.jsonld"
11 },
12 "semantic": {
13 "@id": "cdi:DataStructureComponent-semantic",
14 "@type": "@id",
15 "@context": "PairedControlledVocabularyEntry.jsonld"
16 },
17 "specialization": {
18 "@id": "cdi:DataStructureComponent-specialization",
19 "@type": "@id",
20 "@context": "SpecializationRole.jsonld"
21 },
22
23 "isDefinedBy_RepresentedVariable": {
24 "@id": "cdi:DataStructureComponent_isDefinedBy_RepresentedVariable",
25 "@type": "@id",
26 "@context": "RepresentedVariable.jsonld"
27 },
28 "correspondsTo_DataStructureComponent_OF_DataPoint": {
29 "@reverse": "cdi:DataPoint_correspondsTo_DataStructureComponent",
30 "@type": "@id",
31 "@context": "DataPoint.jsonld"
32 },
33 "has_DataStructureComponent_OF_DataStructure": {
34 "@reverse": "cdi:DataStructure_has_DataStructureComponent",
35 "@type": "@id",
36 "@context": "DataStructure.jsonld"
37 },
38 "isBasedOn_OF_KeyMember": {
39 "@reverse": "cdi:KeyMember_isBasedOn_DataStructureComponent",
40 "@type": "@id",
41 "@context": "KeyMember.jsonld"
42 },
43 "qualifies_OF_AttributeComponent": {
44 "@reverse": "cdi:AttributeComponent_qualifies_DataStructureComponent",
45 "@type": "@id",
46 "@context": "AttributeComponent.jsonld"
47 },
48 "indexes_OF_ComponentPosition": {
49 "@reverse": "cdi:ComponentPosition_indexes_DataStructureComponent",
50 "@type": "@id",
51 "@context": "ComponentPosition.jsonld"
52 },
53 "correspondsTo_DataStructureComponent_OF_ForeignKeyComponent": {
54 "@reverse": "cdi:ForeignKeyComponent_correspondsTo_DataStructureComponent",
55 "@type": "@id",
56 "@context": "ForeignKeyComponent.jsonld"
57 },
58 "correspondsTo_DataStructureComponent_OF_PrimaryKeyComponent": {
59 "@reverse": "cdi:PrimaryKeyComponent_correspondsTo_DataStructureComponent",
60 "@type": "@id",
61 "@context": "PrimaryKeyComponent.jsonld"
62 },
63 " comment ": "tag:json-should-support-trailing-commas"
64 }
65 ],
66 "generatedBy": "This code was generated by the Eclipse Acceleo project UCMIS M2T on 2025-08-29 14:34:49.",
67 "basedOn": "based on the UML data type DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::DataStructureComponent"
68}
Fragment for the class DataStructureComponent (entire SHACL - Shapes Constraint Language)
1# class DataStructureComponent
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::DataStructureComponent
3<#DataStructureComponent> a sh:NodeShape;
4 sh:targetClass cdi:DataStructureComponent;
5 sh:message "See http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/DataStructureComponent";
6 sh:closed true;
7 sh:ignoredProperties ( owl:sameAs );
8 sh:property [
9 sh:path rdf:type;
10 sh:in ( cdi:DataStructureComponent
11 cdi:AttributeComponent
12 cdi:ContextualComponent
13 cdi:DataStructure
14 cdi:DimensionalDataStructure
15 cdi:KeyValueStructure
16 cdi:LongDataStructure
17 cdi:WideDataStructure
18 cdi:DimensionComponent
19 cdi:IdentifierComponent
20 cdi:MeasureComponent
21 cdi:QualifiedMeasure
22 cdi:SyntheticIdComponent
23 cdi:VariableDescriptorComponent
24 cdi:VariableValueComponent
25 ) ;
26 ];
27 # attributes
28 sh:property <#DataStructureComponent-identifier>;
29 sh:property <#DataStructureComponent-semantic>;
30 sh:property <#DataStructureComponent-specialization>;
31 # associations from DataStructureComponent
32 sh:property <#DataStructureComponent_isDefinedBy_RepresentedVariable>;
33 # associations to DataStructureComponent
34 sh:property <#rev_DataPoint_correspondsTo_DataStructureComponent>;
35 sh:property <#rev_DataStructure_has_DataStructureComponent>;
36 sh:property <#rev_KeyMember_isBasedOn_DataStructureComponent>;
37 sh:property <#rev_AttributeComponent_qualifies_DataStructureComponent>;
38 sh:property <#rev_ComponentPosition_indexes_DataStructureComponent>;
39 sh:property <#rev_ForeignKeyComponent_correspondsTo_DataStructureComponent>;
40 sh:property <#rev_PrimaryKeyComponent_correspondsTo_DataStructureComponent>;
41
42
43
44.
45
46<#DataStructureComponent-identifier> a sh:PropertyShape ;
47 sh:path cdi:DataStructureComponent-identifier;
48 sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
49 cdi:Identifier
50
51 ) ]];
52 sh:maxCount 1;
53.
54<#DataStructureComponent-semantic> a sh:PropertyShape ;
55 sh:path cdi:DataStructureComponent-semantic;
56 sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
57 cdi:PairedControlledVocabularyEntry
58
59 ) ]];
60.
61<#DataStructureComponent-specialization> a sh:PropertyShape ;
62 sh:path cdi:DataStructureComponent-specialization;
63 sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
64 cdi:SpecializationRole
65 cdi:GeoRole
66 cdi:TimeRole
67
68 ) ]];
69 sh:maxCount 1;
70.
71
72<#DataStructureComponent_isDefinedBy_RepresentedVariable> a sh:PropertyShape ;
73 sh:path cdi:DataStructureComponent_isDefinedBy_RepresentedVariable;
74 sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
75 cdi:RepresentedVariable
76 cdi:InstanceVariable
77 cdi:DescriptorVariable
78 cdi:ReferenceVariable
79
80 ) ]];
81 sh:maxCount 1;
82.
83<#rev_DataStructureComponent_isDefinedBy_RepresentedVariable> a sh:PropertyShape ;
84 sh:path [ sh:inversePath cdi:DataStructureComponent_isDefinedBy_RepresentedVariable ];
85.
Fragment for the class DataStructureComponent (entire ShEx - Shape Expressions)
1# class DataStructureComponent
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Components::DataStructureComponent
3cdi:DataStructureComponentShape CLOSED {
4 a [cdi:DataStructureComponent];
5 $cdi:DataStructureComponentProperties (
6 cdi:DataStructureComponent-identifier @cdi:IdentifierShape?;
7 cdi:DataStructureComponent-semantic @cdi:PairedControlledVocabularyEntryShape*;
8 cdi:DataStructureComponent-specialization @cdi:SpecializationRoleShape?;
9 cdi:DataStructureComponent_isDefinedBy_RepresentedVariable @cdi:RepresentedVariableShape OR @cdi:InstanceVariableShape?;
10
11 ^cdi:DataPoint_correspondsTo_DataStructureComponent @cdi:DataPointShape *;
12 ^cdi:DataStructure_has_DataStructureComponent @cdi:DataStructureShape OR @cdi:DimensionalDataStructureShape OR @cdi:KeyValueStructureShape OR @cdi:LongDataStructureShape OR @cdi:WideDataStructureShape?;
13 ^cdi:KeyMember_isBasedOn_DataStructureComponent @cdi:KeyMemberShape OR @cdi:DescriptorShape OR @cdi:DimensionalKeyMemberShape OR @cdi:LongMainKeyMemberShape OR @cdi:MainKeyMemberShape OR @cdi:WideKeyMemberShape*;
14 ^cdi:AttributeComponent_qualifies_DataStructureComponent @cdi:AttributeComponentShape *;
15 ^cdi:ComponentPosition_indexes_DataStructureComponent @cdi:ComponentPositionShape *;
16 ^cdi:ForeignKeyComponent_correspondsTo_DataStructureComponent @cdi:ForeignKeyComponentShape ?;
17 ^cdi:PrimaryKeyComponent_correspondsTo_DataStructureComponent @cdi:PrimaryKeyComponentShape ?;
18 );
19}