KeyMember#
Fully qualified class name of the UML model DDI-CDI 1.0: DDICDIModels::DDICDILibrary::Classes::DataDescription::KeyMember
Definition#
Single data instance that is part of a key.
Diagram#
Diagram
Inheritance#
Inheritance
Attributes#
Attributes
Name |
Inherited from |
Description |
Data Type |
Multiplicity |
Default value |
|---|---|---|---|---|---|
content |
The content of this value expressed as a string. |
0..1 |
|||
identifier |
Identifier for objects requiring short- or long-lasting referencing and management. |
0..1 |
|||
whiteSpace |
The usual setting “collapse” states that leading and trailing white space will be removed and multiple adjacent white spaces will be treated as a single white space. When setting to “replace” all occurrences of #x9 (tab), #xA (line feed) and #xD (carriage return) are replaced with #x20 (space) but leading and trailing spaces will be retained. If the existence of any of these white spaces is critical to the understanding of the content, change the value of this attribute to “preserve”. |
0..1 |
Associations#
Associations
Direction |
Association |
Description |
Multiplicity of KeyMember |
Package of Other Class |
Other Class |
Multiplicity of other class |
Aggregation Kind |
Inherited from |
|---|---|---|---|---|---|---|---|---|
to |
Datum uses InstanceValue |
1..* |
- own package - |
0..* |
none |
|||
to |
InstanceKey has InstanceValue |
0..1 |
0..* |
none |
||||
from |
InstanceValue hasValueFrom ValueDomain |
0..* |
1..1 |
none |
||||
from |
InstanceValue isStoredIn DataPoint |
0..1 |
- own package - |
0..1 |
none |
|||
from |
InstanceValue represents ConceptualValue |
1..* |
- own package - |
0..1 |
none |
|||
to |
Key has KeyMember |
0..* |
- own package - |
0..1 |
none |
own class |
||
from |
KeyMember isBasedOn DataStructureComponent |
0..* |
0..* |
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 KeyMember (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-KeyMember"
5 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#KeyMember"
6 xmi:type="uml:Class">
7 <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-KeyMember-ownedComment"
8 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#KeyMember-ownedComment"
9 xmi:type="uml:Comment">
10 <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-KeyMember"/>
11 <body>Definition
12============
13Single data instance that is part of a key.</body>
14 </ownedComment>
15 <name>KeyMember</name>
16 <generalization xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-KeyMember-generalization"
17 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#KeyMember-generalization"
18 xmi:type="uml:Generalization">
19 <general xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-InstanceValue"/>
20 </generalization>
21 <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-KeyMember-ownedAttribute"
22 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#KeyMember-ownedAttribute"
23 xmi:type="uml:Property">
24 <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-KeyMember-ownedAttribute-lowerValue"
25 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#KeyMember-ownedAttribute-lowerValue"
26 xmi:type="uml:LiteralInteger"/>
27 <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-KeyMember-ownedAttribute-upperValue"
28 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#KeyMember-ownedAttribute-upperValue"
29 xmi:type="uml:LiteralUnlimitedNatural">
30 <value>*</value>
31 </upperValue>
32 <association xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-KeyMember_isBasedOn_DataStructureComponent"/>
33 <type xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Components-DataStructureComponent"/>
34 </ownedAttribute>
35</packagedElement>
Fragment for the class KeyMember (entire XML Schema)
1<xs:element name="KeyMember"
2 type="KeyMemberXsdType"
3 xml:id="KeyMember">
4 <!-- based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::KeyMember -->
5 <xs:annotation>
6 <xs:documentation>Definition
7 ============
8 Single data instance that is part of a key.</xs:documentation>
9 </xs:annotation>
10</xs:element>
11<xs:complexType name="KeyMemberXsdType"
12 xml:id="KeyMemberXsdType">
13 <xs:annotation>
14 <xs:documentation>Definition
15 ============
16 Single data instance that is part of a key.</xs:documentation>
17 </xs:annotation>
18 <xs:complexContent>
19 <xs:extension base="InstanceValueXsdType">
20 <xs:sequence>
21 <xs:element name="KeyMember_isBasedOn_DataStructureComponent"
22 minOccurs="0"
23 maxOccurs="unbounded"
24 xml:id="KeyMember_isBasedOn_DataStructureComponent">
25 <xs:annotation>
26 <xs:documentation></xs:documentation>
27 </xs:annotation>
28 <xs:complexType>
29 <xs:complexContent>
30 <xs:restriction base="AssociationReferenceXsdType">
31 <xs:sequence>
32 <xs:element name="ddiReference"
33 type="InternationalRegistrationDataIdentifierXsdType"
34 minOccurs="0"
35 maxOccurs="1"
36 xml:id="KeyMember_isBasedOn_DataStructureComponent-ddiReference"/>
37 <xs:element name="validType"
38 minOccurs="0"
39 maxOccurs="unbounded"
40 xml:id="KeyMember_isBasedOn_DataStructureComponent-validType">
41 <xs:simpleType>
42 <xs:restriction base="xs:NMTOKEN">
43 <xs:enumeration value="AttributeComponent"/>
44 <xs:enumeration value="ContextualComponent"/>
45 <xs:enumeration value="DataStructure"/>
46 <xs:enumeration value="DataStructureComponent"/>
47 <xs:enumeration value="DimensionComponent"/>
48 <xs:enumeration value="DimensionalDataStructure"/>
49 <xs:enumeration value="IdentifierComponent"/>
50 <xs:enumeration value="KeyValueStructure"/>
51 <xs:enumeration value="LongDataStructure"/>
52 <xs:enumeration value="MeasureComponent"/>
53 <xs:enumeration value="QualifiedMeasure"/>
54 <xs:enumeration value="SyntheticIdComponent"/>
55 <xs:enumeration value="VariableDescriptorComponent"/>
56 <xs:enumeration value="VariableValueComponent"/>
57 <xs:enumeration value="WideDataStructure"/>
58 </xs:restriction>
59 </xs:simpleType>
60 </xs:element>
61 </xs:sequence>
62 </xs:restriction>
63 </xs:complexContent>
64 </xs:complexType>
65 </xs:element>
66 </xs:sequence>
67 </xs:extension>
68 </xs:complexContent>
69</xs:complexType>
Fragment for the class KeyMember (entire JSON Schema)
1"cls-KeyMember": {
2 "description": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/KeyMember",
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": "KeyMember"
14 },
15 "content": {
16 "$comment": "cardinality 0..1 – from cdi:InstanceValue",
17 "$ref": "#/defs/dt-TypedString"
18 },
19 "identifier": {
20 "$comment": "cardinality 0..1 – from cdi:InstanceValue",
21 "$ref": "#/defs/dt-Identifier"
22 },
23 "whiteSpace": {
24 "$comment": "cardinality 0..1 – from cdi:InstanceValue",
25 "$ref": "#/defs/enum-WhiteSpaceRule"
26 },
27 "isBasedOn": {
28 "description": "KeyMember_isBasedOn_DataStructureComponent",
29 "$comment": "cardinality 0..-1",
30 "anyOf": [
31 {
32 "$ref": "#/defs/target-DataStructureComponent"
33 },
34 {
35 "type": "array",
36 "items": {
37 "$ref": "#/defs/target-DataStructureComponent"
38 }
39 }
40 ]
41 },
42 "hasValueFrom_ValueDomain": {
43 "description": "InstanceValue_hasValueFrom_ValueDomain",
44 "$comment": "cardinality 1..1",
45 "$ref": "#/defs/target-ValueDomain"
46 },
47 "isStoredIn": {
48 "description": "InstanceValue_isStoredIn_DataPoint",
49 "$comment": "cardinality 0..1",
50 "$ref": "#/defs/target-DataPoint"
51 },
52 "represents": {
53 "description": "InstanceValue_represents_ConceptualValue",
54 "$comment": "cardinality 0..1",
55 "$ref": "#/defs/target-ConceptualValue"
56 },
57 "has_KeyMember_OF_Key": {
58 "description": "Key_has_KeyMember",
59 "$comment": "cardinality 0..1",
60 "$ref": "#/defs/target-Key"
61 },
62 "uses_InstanceValue_OF_Datum": {
63 "description": "Datum_uses_InstanceValue",
64 "$comment": "cardinality 0..-1",
65 "anyOf": [
66 {
67 "$ref": "#/defs/target-Datum"
68 },
69 {
70 "type": "array",
71 "items": {
72 "$ref": "#/defs/target-Datum"
73 }
74 }
75 ]
76 },
77 "has_InstanceValue_OF_InstanceKey": {
78 "description": "InstanceKey_has_InstanceValue",
79 "$comment": "cardinality 0..-1",
80 "anyOf": [
81 {
82 "$ref": "#/defs/target-InstanceKey"
83 },
84 {
85 "type": "array",
86 "items": {
87 "$ref": "#/defs/target-InstanceKey"
88 }
89 }
90 ]
91 },
92 "sameAs": {
93 "$ref": "#/defs/owl:sameAs"
94 }
95 },
96 "required": ["hasValueFrom_ValueDomain","@type"],
97 "additionalProperties": false
98},
99"target-KeyMember": {
100 "description": "all subclasses of http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/KeyMember",
101 "anyOf": [
102 { "$ref": "#/defs/cls-KeyMember" },
103 { "$ref": "#/defs/cls-Descriptor" },
104 { "$ref": "#/defs/cls-DimensionalKeyMember" },
105 { "$ref": "#/defs/cls-LongMainKeyMember" },
106 { "$ref": "#/defs/cls-MainKeyMember" },
107 { "$ref": "#/defs/cls-WideKeyMember" },
108 { "type": "string", "format": "iri-reference" }
109 ]
110},
Fragment for the class KeyMember (main ontology)
1# class KeyMember
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::KeyMember
3cdi:KeyMember
4 a rdfs:Class, owl:Class, ucmis:Class;
5 rdfs:label "KeyMember";
6 rdfs:comment "Definition \n============ \nSingle data instance that is part of a key."@en;
7 rdfs:subClassOf cdi:InstanceValue;
8.
9
10
11cdi:KeyMember_isBasedOn_DataStructureComponent
12 a rdf:Property, owl:ObjectProperty, ucmis:Association;
13 # ASSOCIATION
14 rdfs:label "isBasedOn";
15 skos:altLabel "KeyMember_isBasedOn_DataStructureComponent";
16
17 rdfs:domain cdi:KeyMember;
18 rdfs:range cdi:DataStructureComponent;
19.
Fragment for the class KeyMember (entire JSON-LD)
1{
2 "@context": [
3 "InstanceValue.jsonld",
4 {
5 "cdi": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/",
6 "xsd": "http://www.w3.org/2001/XMLSchema#",
7
8
9 "isBasedOn": {
10 "@id": "cdi:KeyMember_isBasedOn_DataStructureComponent",
11 "@type": "@id",
12 "@context": "DataStructureComponent.jsonld"
13 },
14 "has_KeyMember_OF_Key": {
15 "@reverse": "cdi:Key_has_KeyMember",
16 "@type": "@id",
17 "@context": "Key.jsonld"
18 },
19 " comment ": "tag:json-should-support-trailing-commas"
20 }
21 ],
22 "generatedBy": "This code was generated by the Eclipse Acceleo project UCMIS M2T on 2025-08-29 14:34:52.",
23 "basedOn": "based on the UML data type DDICDIModels::DDICDILibrary::Classes::DataDescription::KeyMember"
24}
Fragment for the class KeyMember (entire SHACL - Shapes Constraint Language)
1# class KeyMember
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::KeyMember
3<#KeyMember> a sh:NodeShape;
4 sh:targetClass cdi:KeyMember;
5 sh:message "See http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/KeyMember";
6 sh:closed true;
7 sh:ignoredProperties ( owl:sameAs );
8 sh:property [
9 sh:path rdf:type;
10 sh:in ( cdi:KeyMember
11 cdi:Descriptor
12 cdi:DimensionalKeyMember
13 cdi:LongMainKeyMember
14 cdi:MainKeyMember
15 cdi:WideKeyMember
16 ) ;
17 ];
18 # attributes
19 # associations from KeyMember
20 sh:property <#KeyMember_isBasedOn_DataStructureComponent>;
21 # associations to KeyMember
22 sh:property <#rev_Key_has_KeyMember>;
23
24 # ---- superclass: InstanceValue
25 # attributes
26 sh:property <#InstanceValue-content>;
27 sh:property <#InstanceValue-identifier>;
28 sh:property <#InstanceValue-whiteSpace>;
29 # associations from InstanceValue
30 sh:property <#InstanceValue_hasValueFrom_ValueDomain>;
31 sh:property <#InstanceValue_isStoredIn_DataPoint>;
32 sh:property <#InstanceValue_represents_ConceptualValue>;
33 # associations to InstanceValue
34 sh:property <#rev_Datum_uses_InstanceValue>;
35 sh:property <#rev_InstanceKey_has_InstanceValue>;
36
37
38
39
40
41.
42
43
44<#KeyMember_isBasedOn_DataStructureComponent> a sh:PropertyShape ;
45 sh:path cdi:KeyMember_isBasedOn_DataStructureComponent;
46 sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
47 cdi:DataStructureComponent
48 cdi:AttributeComponent
49 cdi:ContextualComponent
50 cdi:DataStructure
51 cdi:DimensionalDataStructure
52 cdi:KeyValueStructure
53 cdi:LongDataStructure
54 cdi:WideDataStructure
55 cdi:DimensionComponent
56 cdi:IdentifierComponent
57 cdi:MeasureComponent
58 cdi:QualifiedMeasure
59 cdi:SyntheticIdComponent
60 cdi:VariableDescriptorComponent
61 cdi:VariableValueComponent
62
63 ) ]];
64.
65<#rev_KeyMember_isBasedOn_DataStructureComponent> a sh:PropertyShape ;
66 sh:path [ sh:inversePath cdi:KeyMember_isBasedOn_DataStructureComponent ];
67.
Fragment for the class KeyMember (entire ShEx - Shape Expressions)
1# class KeyMember
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::KeyMember
3cdi:KeyMemberShape CLOSED {
4 a [cdi:KeyMember];
5 $cdi:KeyMemberProperties (
6 ^cdi:Key_has_KeyMember @cdi:KeyShape OR @cdi:DimensionalKeyShape OR @cdi:InstanceKeyShape OR @cdi:LongKeyShape OR @cdi:WideKeyShape?;
7 cdi:KeyMember_isBasedOn_DataStructureComponent @cdi:DataStructureComponentShape OR @cdi:AttributeComponentShape OR @cdi:ContextualComponentShape OR @cdi:DataStructureShape OR @cdi:DimensionComponentShape OR @cdi:IdentifierComponentShape OR @cdi:MeasureComponentShape OR @cdi:SyntheticIdComponentShape OR @cdi:VariableDescriptorComponentShape OR @cdi:VariableValueComponentShape*;
8
9 &cdi:InstanceValueProperties;
10 );
11}