Using Part 2 for definition of Part 7 templates

latest update 2024-12-24  

Introduction

Part 2 of ISO 15926 defines a conceptual graph model and an upper ontology. It defines a reference system of generic nodes and vertices that can be specialized and combined in implementations. However, conceptual models aren't very suitable for direct implementation.

In this topic it is shown how that gap is bridged for Part 7 Templates.

Example 1

First a graph for the template IndividualHasPropertyWithValue

The graph inside the dotted lines represents an instance of that template. It is constructed from instances of Part 2 entity types, including two such instances as they are in the RDL (Reference Data Library) that presents ISO 15926-4. This graph defines the semantics of the template instance.

It is possible to represent this in RDF(S), but that is such a direct implementation of a conceptual model. In Part 7 an implementation is defined where only the variables are of interest, with a reference to the graph inside the dotted lines. That can be seen at the far right of above diagram.

The code for this template instance is:
xyz:8545
      rdf:type tpl:IndividualHasPropertyWithValue ;
      tpl:hasPropertyPossessor xyz:12345 ; # John Doe
      tpl:hasPropertyType rdl:RDS7285420 ; # WEIGHT
      tpl:valPropertyValue "84.7"^^xsd:decimal ;
      tpl:hasScale rdl:RDS1328669 ; # KILOGRAM
      meta:valEffectiveDate "2021-10-20T17:19:00Z"^^xsd:dateTime .
The code for instantiation of the 'lifted templeate' version thereof is using the node numbers in the template graph of the template
Please note that using suffices of the UUID if the template instance has the advantage that all components of a template then get a globally unique ID that leads directly to the context of that template instance.
@prefix ex:  <https://data.example.org/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix dm: <http://data.15926.org/dm/> .
@prefix tm: <http://data.15926.org/tm/> .
@prefix tpl: <http://data.15926.org/tpl/> .
@prefix rdl: <http://data.15926.org/rdl/> .
@prefix meta: <http://data.15926.org/meta/> .

ex:9d762866-ec2c-4c14-89c6-bec348c37914
	rdf:type dm:Person, dm:WholeLifeIndiviual, dm:ActualIndividual, rdl: ;
	rdfs:label "John Doe" ;
	meta:valEffectiveDate "2024-10-18 T09:22:00Z"^^xsd:dateTime .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892
	rdf:type tpl:IndividualHasPropertyWithValue, dm:LiftedTemplate ;
	tpl:hasPropertyPossessor ex:1450222a-583c-4052-a29b-4b7d7450614e ;
	tpl:hasPropertyType rdl:RDS285420 ;
	tpl:valPropertyValue "84.7"^^xsd:decimal ;
	tpl:hasScale rdl:RDS1328669 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_05 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_06 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_07 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_08 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_09 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_10 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_11 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_12 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_13 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_14 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_15 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_16 ;
	tm:hasLiftedPart ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_17 ;
	meta:hasLifecycleActivity rdl:RDS9709622 ;
	meta:valEffectiveDate "2024-10-20T17:19:00Z"^^xsd:dateTime .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_05
	rdf:type dm:TemporalWholePart ;
	dm:whole ex:847931fd-eade-4beb-b07d-a9e889611c19 ;  
	dm:part ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_06 .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_06
	rdf:type dm:Individual .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_07
	rdf:type dm:Classification ;
	dm:classified ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_06 ;  
	dm:classifier ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_09 .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_08
	rdf:type dm:Classification ;
	dm:classified ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_09 ;
	dm:classifier ex:rdl:RDS353339 .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_09
	rdf:type dm:Property .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_10
	rdf:type dm:Classification ;
	dm:classified ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_11 ;
	dm:classifier rdl:RDS2229868 .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_11
	rdf:type dm:PropertyQuantification ;
	dm:input ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_09 ;
	dm:result ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_13 .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_12
	rdf:type dm:ClassOfIdentification ;
	dm:pattern  "30.57"^^xsd:decimal ;
	dm:represented ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_13 .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_13
	rdf:type dm:ArithmeticNumber .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_14
	rdf:type dm:Beginning ;
	dm:part ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_15 ;
	dm:whole ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_06 .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_15
	rdf:type dm:PointInTime .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_16
	rdf:type dm:ClassOfIdentification ;
	dm:pattern ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_17 ;
	dm:represented ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_15 .

ex:bf100233-c8d0-4ffe-a1f3-de76f1641892_17
	rdf:type dm:Literal ;
	dm:value"2024-10-20T17:19:00Z"^^xsd:dateTime .

Example 2

The second example is of the template ClassifiedDescriptionOfIndividual

Here is an example of how information representation is classified with DocumentDefinition, Language, and RepresentationForm(at). The code for this template instance is:
xyz:6432
      rdf:type tpl:ClassifiedDescriptionOfIndividual ;
      tpl:hasDescribed xyz:2345; # P-101
      tpl:hasDescriptor "E-121에 대한 보일러 급수"; # 'Boiler Feed water to E-121' according the rules for a service description and in the Korean language and Hangul format
      tpl:hasDescriptorType xyz:R423783 ; # XYZ Corp. Service Description In Korean Language and in HANGUL format.
      meta:valEffectiveDate "2024-10-08T14:42:00Z"^^xsd:dateTime .
BTW, symbols in lightgreen are for RDL items, and dark green for classes in a local RDL extension

.