LogicalRecordRelationship#
Fully qualified class name of the UML model DDI-CDI 1.0: DDICDIModels::DDICDILibrary::Classes::FormatDescription::LogicalRecordRelationship
Definition#
Relationships between logical records.
Diagram#
Diagram
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 |
||
semantics |
- own class - |
Specifies the semantics of the object in reference to a vocabulary, ontology, etc. |
0..1 |
Associations#
Associations
Direction |
Association |
Description |
Multiplicity of LogicalRecordRelationship |
Package of Other Class |
Other Class |
Multiplicity of other class |
Aggregation Kind |
Inherited from |
|---|---|---|---|---|---|---|---|---|
from |
LogicalRecordRelationship hasSource LogicalRecord |
0..* |
- own package - |
0..* |
none |
own class |
||
from |
LogicalRecordRelationship hasTarget LogicalRecord |
Note that this can be realized as a collection to support tuples. |
0..* |
- own package - |
0..* |
none |
own class |
|
to |
LogicalRecordRelationStructure has LogicalRecordRelationship |
LogicalRecordRelationStructure has zero to many LogicalRecordRelationships. |
0..* |
- own package - |
1..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 LogicalRecordRelationship (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-FormatDescription-LogicalRecordRelationship"
5 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship"
6 xmi:type="uml:Class">
7 <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-ownedComment"
8 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-ownedComment"
9 xmi:type="uml:Comment">
10 <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship"/>
11 <body>Definition
12============
13Relationships between logical records.</body>
14 </ownedComment>
15 <name>LogicalRecordRelationship</name>
16 <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-identifier"
17 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-identifier"
18 xmi:type="uml:Property">
19 <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-identifier-ownedComment"
20 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-identifier-ownedComment"
21 xmi:type="uml:Comment">
22 <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-identifier"/>
23 <body>Identifier for objects requiring short- or long-lasting referencing and management.</body>
24 </ownedComment>
25 <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-identifier-lowerValue"
26 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-identifier-lowerValue"
27 xmi:type="uml:LiteralInteger"/>
28 <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-identifier-upperValue"
29 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-identifier-upperValue"
30 xmi:type="uml:LiteralUnlimitedNatural">
31 <value>1</value>
32 </upperValue>
33 <name>identifier</name>
34 <isID>true</isID>
35 <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-Identifier"/>
36 </ownedAttribute>
37 <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-ownedAttribute_1"
38 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-ownedAttribute_1"
39 xmi:type="uml:Property">
40 <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-ownedAttribute_1-lowerValue"
41 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-ownedAttribute_1-lowerValue"
42 xmi:type="uml:LiteralInteger"/>
43 <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-ownedAttribute_1-upperValue"
44 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-ownedAttribute_1-upperValue"
45 xmi:type="uml:LiteralUnlimitedNatural">
46 <value>*</value>
47 </upperValue>
48 <association xmi:idref="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship_hasTarget_LogicalRecord"/>
49 <type xmi:idref="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecord"/>
50 </ownedAttribute>
51 <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-ownedAttribute_2"
52 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-ownedAttribute_2"
53 xmi:type="uml:Property">
54 <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-ownedAttribute_2-lowerValue"
55 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-ownedAttribute_2-lowerValue"
56 xmi:type="uml:LiteralInteger"/>
57 <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-ownedAttribute_2-upperValue"
58 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-ownedAttribute_2-upperValue"
59 xmi:type="uml:LiteralUnlimitedNatural">
60 <value>*</value>
61 </upperValue>
62 <association xmi:idref="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship_hasSource_LogicalRecord"/>
63 <type xmi:idref="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecord"/>
64 </ownedAttribute>
65 <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-semantics"
66 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-semantics"
67 xmi:type="uml:Property">
68 <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-semantics-ownedComment"
69 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-semantics-ownedComment"
70 xmi:type="uml:Comment">
71 <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-semantics"/>
72 <body>Specifies the semantics of the object in reference to a vocabulary, ontology, etc.</body>
73 </ownedComment>
74 <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-semantics-lowerValue"
75 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-semantics-lowerValue"
76 xmi:type="uml:LiteralInteger"/>
77 <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-FormatDescription-LogicalRecordRelationship-semantics-upperValue"
78 xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#LogicalRecordRelationship-semantics-upperValue"
79 xmi:type="uml:LiteralUnlimitedNatural">
80 <value>1</value>
81 </upperValue>
82 <name>semantics</name>
83 <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-ControlledVocabularyEntry"/>
84 </ownedAttribute>
85</packagedElement>
Fragment for the class LogicalRecordRelationship (entire XML Schema)
1<xs:element name="LogicalRecordRelationship"
2 type="LogicalRecordRelationshipXsdType"
3 xml:id="LogicalRecordRelationship">
4 <!-- based on the UML class DDICDIModels::DDICDILibrary::Classes::FormatDescription::LogicalRecordRelationship -->
5 <xs:annotation>
6 <xs:documentation>Definition
7 ============
8 Relationships between logical records.</xs:documentation>
9 </xs:annotation>
10</xs:element>
11<xs:complexType name="LogicalRecordRelationshipXsdType"
12 xml:id="LogicalRecordRelationshipXsdType">
13 <xs:annotation>
14 <xs:documentation>Definition
15 ============
16 Relationships between logical records.</xs:documentation>
17 </xs:annotation>
18 <xs:sequence>
19 <xs:element name="identifier"
20 type="IdentifierXsdType"
21 minOccurs="0"
22 maxOccurs="1"
23 xml:id="LogicalRecordRelationship-identifier">
24 <xs:annotation>
25 <xs:documentation>Identifier for objects requiring short- or long-lasting referencing and management.</xs:documentation>
26 </xs:annotation>
27 </xs:element>
28 <xs:element name="semantics"
29 type="ControlledVocabularyEntryXsdType"
30 minOccurs="0"
31 maxOccurs="1"
32 xml:id="LogicalRecordRelationship-semantics">
33 <xs:annotation>
34 <xs:documentation>Specifies the semantics of the object in reference to a vocabulary, ontology, etc.</xs:documentation>
35 </xs:annotation>
36 </xs:element>
37 <xs:element name="LogicalRecordRelationship_hasTarget_LogicalRecord"
38 minOccurs="0"
39 maxOccurs="unbounded"
40 xml:id="LogicalRecordRelationship_hasTarget_LogicalRecord">
41 <xs:annotation>
42 <xs:documentation>Note that this can be realized as a collection to support tuples.</xs:documentation>
43 </xs:annotation>
44 <xs:complexType>
45 <xs:complexContent>
46 <xs:restriction base="AssociationReferenceXsdType">
47 <xs:sequence>
48 <xs:element name="ddiReference"
49 type="InternationalRegistrationDataIdentifierXsdType"
50 minOccurs="0"
51 maxOccurs="1"
52 xml:id="LogicalRecordRelationship_hasTarget_LogicalRecord-ddiReference"/>
53 <xs:element name="validType"
54 minOccurs="0"
55 maxOccurs="unbounded"
56 xml:id="LogicalRecordRelationship_hasTarget_LogicalRecord-validType">
57 <xs:simpleType>
58 <xs:restriction base="xs:NMTOKEN">
59 <xs:enumeration value="LogicalRecord"/>
60 </xs:restriction>
61 </xs:simpleType>
62 </xs:element>
63 </xs:sequence>
64 </xs:restriction>
65 </xs:complexContent>
66 </xs:complexType>
67 </xs:element>
68 <xs:element name="LogicalRecordRelationship_hasSource_LogicalRecord"
69 minOccurs="0"
70 maxOccurs="unbounded"
71 xml:id="LogicalRecordRelationship_hasSource_LogicalRecord">
72 <xs:annotation>
73 <xs:documentation></xs:documentation>
74 </xs:annotation>
75 <xs:complexType>
76 <xs:complexContent>
77 <xs:restriction base="AssociationReferenceXsdType">
78 <xs:sequence>
79 <xs:element name="ddiReference"
80 type="InternationalRegistrationDataIdentifierXsdType"
81 minOccurs="0"
82 maxOccurs="1"
83 xml:id="LogicalRecordRelationship_hasSource_LogicalRecord-ddiReference"/>
84 <xs:element name="validType"
85 minOccurs="0"
86 maxOccurs="unbounded"
87 xml:id="LogicalRecordRelationship_hasSource_LogicalRecord-validType">
88 <xs:simpleType>
89 <xs:restriction base="xs:NMTOKEN">
90 <xs:enumeration value="LogicalRecord"/>
91 </xs:restriction>
92 </xs:simpleType>
93 </xs:element>
94 </xs:sequence>
95 </xs:restriction>
96 </xs:complexContent>
97 </xs:complexType>
98 </xs:element>
99 </xs:sequence>
100</xs:complexType>
Fragment for the class LogicalRecordRelationship (entire JSON Schema)
1"cls-LogicalRecordRelationship": {
2 "description": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/LogicalRecordRelationship",
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": "LogicalRecordRelationship"
14 },
15 "identifier": {
16 "$comment": "cardinality 0..1 – from cdi:LogicalRecordRelationship",
17 "$ref": "#/defs/dt-Identifier"
18 },
19 "semantics": {
20 "$comment": "cardinality 0..1 – from cdi:LogicalRecordRelationship",
21 "$ref": "#/defs/dt-ControlledVocabularyEntry"
22 },
23 "hasSource": {
24 "description": "LogicalRecordRelationship_hasSource_LogicalRecord",
25 "$comment": "cardinality 0..-1",
26 "anyOf": [
27 {
28 "$ref": "#/defs/target-LogicalRecord"
29 },
30 {
31 "type": "array",
32 "items": {
33 "$ref": "#/defs/target-LogicalRecord"
34 }
35 }
36 ]
37 },
38 "hasTarget": {
39 "description": "LogicalRecordRelationship_hasTarget_LogicalRecord",
40 "$comment": "cardinality 0..-1",
41 "anyOf": [
42 {
43 "$ref": "#/defs/target-LogicalRecord"
44 },
45 {
46 "type": "array",
47 "items": {
48 "$ref": "#/defs/target-LogicalRecord"
49 }
50 }
51 ]
52 },
53 "has_LogicalRecordRelationship_OF_LogicalRecordRelationStructure": {
54 "description": "LogicalRecordRelationStructure_has_LogicalRecordRelationship",
55 "$comment": "cardinality 1..1",
56 "$ref": "#/defs/target-LogicalRecordRelationStructure"
57 },
58 "sameAs": {
59 "$ref": "#/defs/owl:sameAs"
60 }
61 },
62 "required": ["@type"],
63 "additionalProperties": false
64},
65"target-LogicalRecordRelationship": {
66 "description": "all subclasses of http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/LogicalRecordRelationship",
67 "anyOf": [
68 { "$ref": "#/defs/cls-LogicalRecordRelationship" },
69 { "type": "string", "format": "iri-reference" }
70 ]
71},
Fragment for the class LogicalRecordRelationship (main ontology)
1# class LogicalRecordRelationship
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::FormatDescription::LogicalRecordRelationship
3cdi:LogicalRecordRelationship
4 a rdfs:Class, owl:Class, ucmis:Class;
5 rdfs:label "LogicalRecordRelationship";
6 rdfs:comment "Definition \n============ \nRelationships between logical records."@en;
7
8.
9
10cdi:LogicalRecordRelationship-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:LogicalRecordRelationship;
15 rdfs:range cdi:Identifier;
16.
17
18cdi:LogicalRecordRelationship-semantics
19 a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
20 rdfs:label "semantics";
21 rdfs:comment "Specifies the semantics of the object in reference to a vocabulary, ontology, etc."@en;
22 rdfs:domain cdi:LogicalRecordRelationship;
23 rdfs:range cdi:ControlledVocabularyEntry;
24.
25
26
27cdi:LogicalRecordRelationship_hasSource_LogicalRecord
28 a rdf:Property, owl:ObjectProperty, ucmis:Association;
29 # ASSOCIATION
30 rdfs:label "hasSource";
31 skos:altLabel "LogicalRecordRelationship_hasSource_LogicalRecord";
32
33 rdfs:domain cdi:LogicalRecordRelationship;
34 rdfs:range cdi:LogicalRecord;
35.
36
37cdi:LogicalRecordRelationship_hasTarget_LogicalRecord
38 a rdf:Property, owl:ObjectProperty, ucmis:Association;
39 # ASSOCIATION
40 rdfs:label "hasTarget";
41 skos:altLabel "LogicalRecordRelationship_hasTarget_LogicalRecord";
42 rdfs:comment "Note that this can be realized as a collection to support tuples."@en;
43 rdfs:domain cdi:LogicalRecordRelationship;
44 rdfs:range cdi:LogicalRecord;
45.
Fragment for the class LogicalRecordRelationship (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:LogicalRecordRelationship-identifier",
9 "@type": "@id",
10 "@context": "Identifier.jsonld"
11 },
12 "semantics": {
13 "@id": "cdi:LogicalRecordRelationship-semantics",
14 "@type": "@id",
15 "@context": "ControlledVocabularyEntry.jsonld"
16 },
17
18 "hasSource": {
19 "@id": "cdi:LogicalRecordRelationship_hasSource_LogicalRecord",
20 "@type": "@id",
21 "@context": "LogicalRecord.jsonld"
22 },
23 "hasTarget": {
24 "@id": "cdi:LogicalRecordRelationship_hasTarget_LogicalRecord",
25 "@type": "@id",
26 "@context": "LogicalRecord.jsonld"
27 },
28 "has_LogicalRecordRelationship_OF_LogicalRecordRelationStructure": {
29 "@reverse": "cdi:LogicalRecordRelationStructure_has_LogicalRecordRelationship",
30 "@type": "@id",
31 "@context": "LogicalRecordRelationStructure.jsonld"
32 },
33 " comment ": "tag:json-should-support-trailing-commas"
34 }
35 ],
36 "generatedBy": "This code was generated by the Eclipse Acceleo project UCMIS M2T on 2025-08-29 14:34:52.",
37 "basedOn": "based on the UML data type DDICDIModels::DDICDILibrary::Classes::FormatDescription::LogicalRecordRelationship"
38}
Fragment for the class LogicalRecordRelationship (entire SHACL - Shapes Constraint Language)
1# class LogicalRecordRelationship
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::FormatDescription::LogicalRecordRelationship
3<#LogicalRecordRelationship> a sh:NodeShape;
4 sh:targetClass cdi:LogicalRecordRelationship;
5 sh:message "See http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/LogicalRecordRelationship";
6 sh:closed true;
7 sh:ignoredProperties ( owl:sameAs );
8 sh:property [
9 sh:path rdf:type;
10 sh:in ( cdi:LogicalRecordRelationship
11 ) ;
12 ];
13 # attributes
14 sh:property <#LogicalRecordRelationship-identifier>;
15 sh:property <#LogicalRecordRelationship-semantics>;
16 # associations from LogicalRecordRelationship
17 sh:property <#LogicalRecordRelationship_hasSource_LogicalRecord>;
18 sh:property <#LogicalRecordRelationship_hasTarget_LogicalRecord>;
19 # associations to LogicalRecordRelationship
20 sh:property <#rev_LogicalRecordRelationStructure_has_LogicalRecordRelationship>;
21
22
23
24.
25
26<#LogicalRecordRelationship-identifier> a sh:PropertyShape ;
27 sh:path cdi:LogicalRecordRelationship-identifier;
28 sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
29 cdi:Identifier
30
31 ) ]];
32 sh:maxCount 1;
33.
34<#LogicalRecordRelationship-semantics> a sh:PropertyShape ;
35 sh:path cdi:LogicalRecordRelationship-semantics;
36 sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
37 cdi:ControlledVocabularyEntry
38
39 ) ]];
40 sh:maxCount 1;
41.
42
43<#LogicalRecordRelationship_hasSource_LogicalRecord> a sh:PropertyShape ;
44 sh:path cdi:LogicalRecordRelationship_hasSource_LogicalRecord;
45 sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
46 cdi:LogicalRecord
47
48 ) ]];
49.
50<#rev_LogicalRecordRelationship_hasSource_LogicalRecord> a sh:PropertyShape ;
51 sh:path [ sh:inversePath cdi:LogicalRecordRelationship_hasSource_LogicalRecord ];
52.
53<#LogicalRecordRelationship_hasTarget_LogicalRecord> a sh:PropertyShape ;
54 sh:path cdi:LogicalRecordRelationship_hasTarget_LogicalRecord;
55 sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
56 cdi:LogicalRecord
57
58 ) ]];
59.
60<#rev_LogicalRecordRelationship_hasTarget_LogicalRecord> a sh:PropertyShape ;
61 sh:path [ sh:inversePath cdi:LogicalRecordRelationship_hasTarget_LogicalRecord ];
62.
Fragment for the class LogicalRecordRelationship (entire ShEx - Shape Expressions)
1# class LogicalRecordRelationship
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::FormatDescription::LogicalRecordRelationship
3cdi:LogicalRecordRelationshipShape CLOSED {
4 a [cdi:LogicalRecordRelationship];
5 cdi:LogicalRecordRelationship-identifier @cdi:IdentifierShape?;
6 cdi:LogicalRecordRelationship-semantics @cdi:ControlledVocabularyEntryShape?;
7 cdi:LogicalRecordRelationship_hasSource_LogicalRecord @cdi:LogicalRecordShape *;
8
9 cdi:LogicalRecordRelationship_hasTarget_LogicalRecord @cdi:LogicalRecordShape *;
10
11 ^cdi:LogicalRecordRelationStructure_has_LogicalRecordRelationship @cdi:LogicalRecordRelationStructureShape ;
12 }