IMX Lineage model

Geonovum Information model
Proposed recommendation

This version:
https://docs.geostandaarden.nl/imx/vv-im-lineagemodel-20240501
Latest published version:
https://docs.geostandaarden.nl/imx/lineagemodel/
Latest editor's draft:
https://geonovum.github.io/IMX-LineageModel
Previous version:
https://docs.geostandaarden.nl/imx/cv-im-lineagemodel-20240108
Editor:
Paul Janssen (Geonovum)
Authors:
Pano Maria (Geonovum)
Jesse Bakker (Kadaster)
Participate:
GitHub Geonovum/IMX-LineageModel
File an issue
Commit history
Pull requests

This document is also available in these non-normative format: pdf


Abstract

This document specifies the IMX Lineage model. The IMX lineage model provenance information generated during an IMX orchestration process, building upon [IMX-Metadata] and [IMX-ModelMapping].

Status of this document

This is the final draft of this document. Edits resulting from consultations have been applied.

Versiebeheer

Dit document is aan verandering onderhevig. Het versiebeheer van het document geeft inzicht in wijzigen en de actualiteit ervan.

Versie Datum Status Bewerking Toelichting
0.1 dd-mm-yyyy concept Initieel document "Kapstok" document aangemaakt

1. Introduction

Kadaster and Geonovum are developing a mechanism to facilitate the semantic integration of decentralized data registers. A central API operates on an integrated semantic layer. The semantic layer constitutes of a coherent information model integrating several domain specific domain models. An API orchestration layer directs data communication to and from existing data registries.

Data retrieval is according to the information model of the semantic layer. Data retrieval will optionally include metadata about the lineage (provenance) of the data.

This document specifies the lineage model used and the mechanism introduced in [IMX-Metadata] to relate the lineage data as metadata to published data.

1.1 Scope

The scope of this lineage model is:

1.2 Working proces

This document, lineage model, is developed in the WaU project ..... The principal working method is agile development through several High5 sessions on use cases of increasing complex information content and ....

2. Analysis

2.1 Context

In today's complex and interconnected world, the answers that people are seeking often require access to data from multiple registries. This is because the information needed to answer a question or solve a problem is often distributed across multiple sources and domains. Data needs to be aggregated and consolidated in order to satify user needs. This needs to be done transparently. It should be clear where the resulting data came from and what has been done to it. For this, insight into lineage of data should be provided.

The lineage model explained in this document provides a standardised way to work with, store and communicate lineage information of data.

2.3 Relevant documentation

[Property-Stereotype-for-Metadata], Interactive Instruments

3. Requirements and approach

Within this chapter two sections are presented; Requirements and Approach. In the Requirements section the requirements for the information model are listed. In the Approach section the requirements are translated into a conceptual model which forms the basis for the logical model described in chapter 4.

3.1 Requirements

The following requirements have been taken into account in the approach:

  1. We should be able to identify and describe singular data items
  2. We should be able to describe which data items contributed to the generation of a data item
  3. We should be able to describe activities that act upon data items
  4. We should be able to find data items that contributed to the generation of a data item
  5. We should be able to describe how data item contributed to the generation of a data item

3.2 Approach

The first requirement, to identify and describe singular pieces data, is realized by the introduction of the data item objecttype as described in IMX-Metadata.

Figure 1 Data item

A data item can be described from different perspectives. This gives a basic model, applicable for many usecases. The perspective the lineage model takes is one of provenance [prov-o]. The lineage model adds to this a way to connect one data item to one or more other data items it is derived from. The latter are called source data items, the former orchestrated data items. For the source data item it is important to know from which data source it is retrieved so that users can interpret the source data item in the context it was published in. This also allows allows users to find related information.

Figure 2 Orchestrated data items derived from source data items

Term Definition
source data item A source data item is a data item that serves as input for an orchestration activity.
orchestrated data item An orchestrated data item is a data item that is generated/obtained by orchestrating source data.
data object A data object is a contextually grouped set of data items.
data source A data source is an entity which provides access to a dataset.

A data example:

{
  "identification": "G0200.42b3d39246840268e0530a0a28492340",
  "constructionDate": "2006",
  "registeredWith": {
    "consistOf": [
      {
        "property": "bouwjaar",
        "value": {
          "stringValue": "2006"
        },
        "subject": {
          "identificatie": "G0200.42b3d39246840268e0530a0a28492340",
          "domein": null
        },
        "wasDerivedFrom": {
          "property": "oorspronkelijkBouwjaar",
          "value": {
            "stringValue": "2006"
          },
          "subject": {
            "identificatie": "0200100000085932",
            "type": "Pand"
          }
        }
      }
    ]
  }
}

This, however, does not provide any insight into how the source data item(s) were used to generate the orchestrated data item. In order to allow for this the generation itself is identified as an orchestration activity, which is a type of activity. This provides the information that the data item is generated using orchestration techniques.

Figure 3 A data item is generated by an activity

{
  "identification": "G0200.42b3d39246840268e0530a0a28492340",
  "constructionDate": "2006",
  "registeredWith": {
    "consistsOf": [
      {
        "property": "bouwjaar",
        "wasGeneratedBy": {
          "used": {
            "property": "oorspronkelijkBouwjaar",
            "value": {
              "stringValue": "2006"
            },
            "subject": {
              "identificatie": "0200100000085932",
              "type": "Pand"
            }
          }
        },
        "value": {
          "stringValue": "2006"
        },
        "subject": {
          "identificatie": "G0200.42b3d39246840268e0530a0a28492340",
          "domein": null
        }
      }
    ]
  }
}

Lastly, we provide insights into the transformation itself, the mapping used for the orchestration activity. The mapping is described in a seperate artifact called the model mapping. This document describes the relation between two models and how data from one can be transformed to the other. The mapping is structured according to the mapping specification. The rules to generate a specific data item are encompassed in a property mapping, which is executed during orchestration. To describe this, we introduce a specific type of orchestration activity, the property mapping execution.

Term Definition
used Usage is the beginning of utilizing an entity by an activity. Before usage, the activity had not begun to utilize this entity and could not have been affected by the entity. (based on prov:used)
orchestration activity An orchestration activity is an activity that is part of an IMX orchestration process.
property mapping execution A Property mapping execution is an orchestration activity that pertains to the execution of a property mapping.

Figure 4 A data item is generated by a property mapping execution

The property mapping execution can be deconstructed into several smaller activities as it may include multiple intermediary results; each having a query path and a start node, which are then combined and/or transformed into the value of the orchestrated data item. The PropertyMapping is the main entity describing the steps (path mappings) required to derive a specific data item in order of execution. Each step is an activity that informs the property mapping execution; which yields the orchestrated data item. As part of the lineage information we refer to elements in the mapping to provide insights into how the orchestrated data item was constructed. This allows us to convey which data items were used to derive a new data item, and how these were used. Adding this to our lineage model yields the following model.

Term Definition
was informed by A relation between activities stating that one activity uses some output of the other activity. (based on prov:wasInformedBy)
path mapping execution A property path execution is an activity that retrieves data items to serve as input for the property mapping execution.
references The source data item referenced by following the defined path starting from the start node.
start node The source object from which the path is followed to find the used data item.

A path mapping consists out of one path; possibly yielding any number of data items, when executed. The lineage should give insights on precisely how each data item was found and how it contributed to the generation of the orchestrated data item. For each "OrchestrationActivity -used-> DataItem" we map to the respective path.

We do this by further deconstructing the path mapping execution into each path that is defined in the mapping. For each path execution that informs the path mapping execution a used property is linked to the respective path in the model mapping. This allows us to point to the exact mapping element providing the path that leads us to the source data item. A pointer to the node from which the path is followed is added, this is the start node.

Term Definition
Path execution A path execution is an orchestration activity that is part of the path mapping execution.
source object A source object is an object that that is referenced to create an orchestrated data item.

Figure 5 A data item is generated by a property mapping execution, referencing other data items

In this model several types have different roles following from incomming relations. This could make the datamodel less clear. In the following diagram roles are made explicit.

Figure 6 Orchestrated data item is generated by a property mapping execution, referencing source data items

In JSON this could look as follows.

{
  "identification": "G0200.42b3d39246840268e0530a0a28492340",
  "constructionDate": "2006",
  "hasLineage": {
    "orchestratedProperties": [
      { <!-- OrchestratedDataItem -->
        "property": "bouwjaar",
        "value": {
          "stringValue": "2006"
        },
        "subject": {
          "identificatie": "G0200.42b3d39246840268e0530a0a28492340",
          "domein": null
        },
        "wasGeneratedBy": { <!-- PropertyMappingExecution -->
          "used" : {  <!-- property mapping -->
            "objectKey": "MAP.IMXGEO.000102",
            "objectType": "PropertyMapping"
          }
          "wasInformedBy": { <!-- PathMappingExecution -->
            "references": { <!-- source data item -->
                "property": "oorspronkelijkBouwjaar",
                "value": {
                  "stringValue": "2006"
                },
                "subject": {
                  "objectKey": "0200100000085932",
                  "objectType": Pand
                }
              },
              "used": { <!-- Path -->
                "path": {
                  "segments": [
                    "isGerelateerdAan",
                    "oorspronkelijkBouwjaar"
                  ]
                }
              },
              "startNode": { <!-- SourceObject -->
                "objectKey": "G0200.42b3d39246840268e0530a0a28492340",
                "objectType": "Pand"
              }
          }
        }
      }
    ]
  }
}

When multiple source data items are used this would result in multiple "wasInformedBy": { ... } statements within the "wasGeneratedBy":{ ... } element.

3.2.1 Summary

The requirements are reflected in the model by introducing the following concepts:

  • Data item

    • "orchestrated data item" for req 1
    • "source data item" for req 2.

    In order to be able to talk about them.

  • Orchestration Activity

    • Property Mapping execution and propertyMapping execution for req 3

    In order to describe that orchestration took place.

  • Data source for req 4.

    In order to decribe where source data is retrieved from and thus can be found.

  • Mapping element

    • Property Mapping and path for req 5.

    In order to precisely indicate what rules were applied to the source data to derive the orchestrated data item(s).

In short:

Figure 7

3.2.2 Limitations

  • We don't indicate the order of the activities or path segments which is an important aspect of the mapping
  • We don't have a way of describing the (software) agent responsible for the orchestration (can be copied from PROV-O).
  • We don't describe objecttype mapping executions.
  • ...

4. Information model and Objectcatalogue

4.1 Information model

Diagram
Figure 8
PathMappingExecutionOrchestratedRelationDataItemOrchestratedComplexDataItemOrchestratedSimpleDataItemModelPropertyMappingExecutionPathExecutionTargetObjectPathPathMappingPropertyMappingValueTypeSourceSimpleDataItemSourceComplexDataItemData SourceSourceRelationDataItemSourceObjectSourceDataItemOrchestratedDataItem

Lineage

4.2 Domain Orchestration

4.2.1 Objecttypes

4.2.1.1 Orchestrated­Data­Item
Name Orchestrated­Data­Item
Definition

An orchestrated data item is a data item that is generated/obtained by orchestrating source data.

Is abstract True
Overview relations
Relation name with multiplicity Definition
Orchestrated­Data­Item [ 0 .. * ] was­Generated­By: was­Generated­By Property­Mapping­Execution [ 1 ]

The activity which generated (or produced) the orchestrated data item.

Orchestrated­Data­Item [ 0 .. * ] subject Target­Object [ 1 ]

The subject of the data item.

Orchestrated­Complex­Data­Item [ 0 .. * ] consists­Of Orchestrated­Data­Item [ 2 .. * ]

The constituent data item of the complex data item.

4.2.1.2 Source­Data­Item
Name Source­Data­Item
Definition

A source data item is a data item that serves as input for an orchestration activity.

Is abstract True
Overview relations
Relation name with multiplicity Definition
Source­Data­Item [ 0 .. * ] data­Source Data Source [ 1 ]

The data source from which the source data item can be retrieved

Source­Data­Item [ 0 .. * ] subject Source­Object [ 1 ]

The subject of a source data item.

Path­Execution [ 1 ] references Source­Data­Item [ 0 .. * ]

The source data item referenced by following the defined path starting from the start node.

Source­Complex­Data­Item [ 1 ] consists­Of Source­Data­Item [ 2 .. * ]

The constituent data item of the complex data item.

4.2.1.3 Source­Relation­Data­Item
Name Source­Relation­Data­Item
Definition

A source relation data item is a relation data item that serves as input for an orchestration activity.

Is abstract False
Overview relations
Relation name with multiplicity Definition
Source­Relation­Data­Item [ 1 ] value Source­Object [ 1 ]

The value of the data item.

Source­Relation­Data­Item is specialisatie van Source­Data­Item

A source data item is a data item that serves as input for an orchestration activity.

4.2.1.4 Source­Object
Name Source­Object
Definition

A source object is an object that serves as input for an orchestration activity.

Unique designation identificatie
Is abstract False
Overview attributes
Attribute name Definition Format Card
type

The type of the source object in the data source.

Character­String 1
identificatie

The identification of the source object in the data source.

Character­String 1
Overview relations
Relation name with multiplicity Definition
Source­Data­Item [ 0 .. * ] subject Source­Object [ 1 ]

The subject of a source data item.

Source­Relation­Data­Item [ 1 ] value Source­Object [ 1 ]

The value of the data item.

Path­Execution [ 1 ] start­Node: start­Node Source­Object [ 1 ]

The source object from which the path is followed to find the referenced data item.

4.2.1.5 Data Source
Name Data Source
Definition

A data source is an entity which provides access to a dataset.

Is abstract False
Overview attributes
Attribute name Definition Format Card
name

The name of the data source.

Character­String 1
Overview relations
Relation name with multiplicity Definition
Data Source [ 1 ] conforms­To Model [ 1 ]
Source­Data­Item [ 0 .. * ] data­Source Data Source [ 1 ]

The data source from which the source data item can be retrieved

4.2.1.6 Orchestrated­Relation­Data­Item
Name Orchestrated­Relation­Data­Item
Definition

An orchestrated relation data item is an orchestrated data item that is non-divisible and where the value is an association to an object.

Is abstract False
Overview relations
Relation name with multiplicity Definition
Orchestrated­Relation­Data­Item [ 1 ] value Target­Object [ 1 ]
Orchestrated­Relation­Data­Item is specialisatie van Orchestrated­Data­Item

An orchestrated data item is a data item that is generated/obtained by orchestrating source data.

4.2.1.7 Target­Object
Name Target­Object
Definition

A target object is an object which is the subject of an orchestrated data item.

Unique designation identificatie
Is abstract False
Overview attributes
Attribute name Definition Format Card
identificatie

The identification of the target object

Character­String 1
Domain Character­String 1
Overview relations
Relation name with multiplicity Definition
Orchestrated­Data­Item [ 0 .. * ] subject Target­Object [ 1 ]

The subject of the data item.

Orchestrated­Relation­Data­Item [ 1 ] value Target­Object [ 1 ]
4.2.1.8 Path­Execution
Name Path­Execution
Definition

A path execution is an orchestration activity that is part of the path mapping execution.

Date added <date>
Is abstract False
Overview relations
Relation name with multiplicity Definition
Path­Execution [ 1 ] references Source­Data­Item [ 0 .. * ]

The source data item referenced by following the defined path starting from the start node.

Path­Execution [ 1 ] used: used Path [ 1 ]

The mapping element used in the orchestration activity.

Path­Execution [ 1 ] start­Node: start­Node Source­Object [ 1 ]

The source object from which the path is followed to find the referenced data item.

Path­Mapping­Execution [ 1 ] was­Informed­By Path­Execution [ 1 ]

The source activity uses some output of the target activity.

Path­Execution is specialisatie van Orchestration­Activity

An orchestration activity is an activity that is part of an IMX orchestration process.

4.2.1.9 Source­Complex­Data­Item
Name Source­Complex­Data­Item
Definition

A source complex data item is a complex data item that serves as input for an orchestration activity.

Is abstract False
Overview relations
Relation name with multiplicity Definition
Source­Complex­Data­Item [ 1 ] consists­Of Source­Data­Item [ 2 .. * ]

The constituent data item of the complex data item.

Source­Complex­Data­Item is specialisatie van Source­Data­Item

A source data item is a data item that serves as input for an orchestration activity.

4.2.1.10 Model
Name Model
Definition

A model is the representation of a logical data model.

Date added <date>
Is abstract False
Overview attributes
Attribute name Definition Format Card
name

The name of the model.

Character­String 1
Overview relations
Relation name with multiplicity Definition
Data Source [ 1 ] conforms­To Model [ 1 ]
4.2.1.11 Source­Simple­Data­Item
Name Source­Simple­Data­Item
Definition

A source simple data item is a simple data item that serves as input for an orchestration activity.

Is abstract False
Overview attributes
Attribute name Definition Format Card
value Value­Type 1
Overview relations
Relation name with multiplicity Definition
Source­Simple­Data­Item is specialisatie van Source­Data­Item

A source data item is a data item that serves as input for an orchestration activity.

4.2.1.12 Path­Mapping­Execution
Name Path­Mapping­Execution
Definition

A path mapping execution is an orchestration activity that is part of the propertymapping execution.

Is abstract False
Overview relations
Relation name with multiplicity Definition
Path­Mapping­Execution [ 1 ] used Path­Mapping [ 1 ]

The mapping element used in the orchestration activity.

Path­Mapping­Execution [ 1 ] was­Informed­By Path­Execution [ 1 ]

The source activity uses some output of the target activity.

Property­Mapping­Execution [ 1 ] was­Informed­By Path­Mapping­Execution [ 1 .. * ]

The source activity uses some output of the target activity.

Path­Mapping­Execution is specialisatie van Orchestration­Activity

An orchestration activity is an activity that is part of an IMX orchestration process.

4.2.1.13 Orchestration­Activity
Name Orchestration­Activity
Definition

An orchestration activity is an activity that is part of an IMX orchestration process.

Is abstract False
4.2.1.14 Orchestrated­Complex­Data­Item
Name Orchestrated­Complex­Data­Item
Definition

An orchestrated complex data item is an orchestrated data item consisting of two or more other orchestrated data items.

Is abstract False
Overview relations
Relation name with multiplicity Definition
Orchestrated­Complex­Data­Item [ 0 .. * ] consists­Of Orchestrated­Data­Item [ 2 .. * ]

The constituent data item of the complex data item.

Orchestrated­Complex­Data­Item is specialisatie van Orchestrated­Data­Item

An orchestrated data item is a data item that is generated/obtained by orchestrating source data.

4.2.1.15 Property­Mapping­Execution
Name Property­Mapping­Execution
Definition

A Property mapping execution is an orchestration activity that pertains to the execution of a property mapping.

Date added <date>
Is abstract False
Overview relations
Relation name with multiplicity Definition
Property­Mapping­Execution [ 1 ] was­Informed­By Path­Mapping­Execution [ 1 .. * ]

The source activity uses some output of the target activity.

Property­Mapping­Execution [ 0 .. * ] used: used Property­Mapping [ 1 ]

The mapping element used in the orchestration activity.

Orchestrated­Data­Item [ 0 .. * ] was­Generated­By: was­Generated­By Property­Mapping­Execution [ 1 ]

The activity which generated (or produced) the orchestrated data item.

Property­Mapping­Execution is specialisatie van Orchestration­Activity

An orchestration activity is an activity that is part of an IMX orchestration process.

4.2.1.16 Orchestrated­Simple­Data­Item
Name Orchestrated­Simple­Data­Item
Definition

An orchestrated simple data item is an orchestrated data item that is non-divisible and contains a literal value.

Is abstract False
Overview attributes
Attribute name Definition Format Card
value

The value of the data item.

Value­Type 1
Overview relations
Relation name with multiplicity Definition
Orchestrated­Simple­Data­Item is specialisatie van Orchestrated­Data­Item

An orchestrated data item is a data item that is generated/obtained by orchestrating source data.

4.2.2 Keuzen

4.2.2.1 Value­Type
Name Value­Type
Overzicht keuze elementen
Keuze element Definition Format Card
boolean Boolean 1
integer Integer 1
lijn GM_Curve 1
punt GM_Point 1
real Real 1
string Character­String 1
vlak GM_Surface 1

4.2.3 Attribuut- en relatiesoort details

4.2.3.1 Objecttype details
4.2.3.1.1 Orchestrated­Data­Item
Relatiesoort details Orchestrated­Data­Item was­Generated­By
Name was­Generated­By
Definition

The activity which generated (or produced) the orchestrated data item.

Nillable False
Multiplicity 1
Related objecttype Property­Mapping­Execution
Relatiesoort details Orchestrated­Data­Item subject
Name subject
Definition

The subject of the data item.

Nillable False
Multiplicity 1
Related objecttype Target­Object
4.2.3.1.2 Source­Data­Item
Relatiesoort details Source­Data­Item data­Source
Name data­Source
Definition

The data source from which the source data item can be retrieved

Nillable False
Multiplicity 1
Related objecttype Data Source
Relatiesoort details Source­Data­Item subject
Name subject
Definition

The subject of a source data item.

Nillable False
Multiplicity 1
Related objecttype Source­Object
4.2.3.1.3 Source­Relation­Data­Item
Relatiesoort details Source­Relation­Data­Item value
Name value
Definition

The value of the data item.

Nillable False
Multiplicity 1
Related objecttype Source­Object
4.2.3.1.4 Source­Object
Attribuutsoort details Source­Object type
Name type
Definition

The type of the source object in the data source.

Nillable False
Multiplicity 1
Format Character­String
Attribuutsoort details Source­Object identificatie
Name identificatie
Definition

The identification of the source object in the data source.

Nillable False
Multiplicity 1
Format Character­String
4.2.3.1.5 Data Source
Attribuutsoort details Data Source name
Name name
Definition

The name of the data source.

Nillable False
Multiplicity 1
Format Character­String
Relatiesoort details Data Source conforms­To
Name conforms­To
Nillable False
Multiplicity 1
Related objecttype Model
4.2.3.1.6 Orchestrated­Relation­Data­Item
Relatiesoort details Orchestrated­Relation­Data­Item value
Name value
Nillable False
Multiplicity 1
Related objecttype Target­Object
4.2.3.1.7 Target­Object
Attribuutsoort details Target­Object identificatie
Name identificatie
Definition

The identification of the target object

Nillable False
Multiplicity 1
Format Character­String
Attribuutsoort details Target­Object Domain
Name Domain
Nillable False
Multiplicity 1
Format Character­String
4.2.3.1.8 Path­Execution
Relatiesoort details Path­Execution references
Name references
Definition

The source data item referenced by following the defined path starting from the start node.

Nillable False
Multiplicity 0 .. *
Related objecttype Source­Data­Item
Relatiesoort details Path­Execution used
Name used
Definition

The mapping element used in the orchestration activity.

Toelichting Een inhoudelijke toelichting op de definitie, ter verheldering of nadere duiding.
Nillable False
Multiplicity 1
Related objecttype Path
Relatiesoort details Path­Execution start­Node
Name start­Node
Definition

The source object from which the path is followed to find the referenced data item.

Nillable False
Multiplicity 1
Related objecttype Source­Object
4.2.3.1.9 Source­Complex­Data­Item
Relatiesoort details Source­Complex­Data­Item consists­Of
Name consists­Of
Definition

The constituent data item of the complex data item.

Toelichting

A complex data item always consists out of two or more data items, which in turn can consists out of other data items.

Nillable False
Multiplicity 2 .. *
Related objecttype Source­Data­Item
4.2.3.1.10 Model
Attribuutsoort details Model name
Name name
Definition

The name of the model.

Toelichting Een inhoudelijke toelichting op de definitie, ter verheldering of nadere duiding.
Nillable False
Multiplicity 1
Patroon De verzameling van waarden die gegevens van deze attribuutsoort kunnen hebben, oftewel het waardenbereik, uitgedrukt in een specifieke structuur.
Format Character­String
4.2.3.1.11 Source­Simple­Data­Item
Attribuutsoort details Source­Simple­Data­Item value
Name value
Nillable False
Multiplicity 1
Format Value­Type
4.2.3.1.12 Path­Mapping­Execution
Relatiesoort details Path­Mapping­Execution used
Name used
Definition

The mapping element used in the orchestration activity.

Nillable False
Multiplicity 1
Related objecttype Path­Mapping
Relatiesoort details Path­Mapping­Execution was­Informed­By
Name was­Informed­By
Definition

The source activity uses some output of the target activity.

Nillable False
Multiplicity 1
Related objecttype Path­Execution
4.2.3.1.13 Orchestrated­Complex­Data­Item
Relatiesoort details Orchestrated­Complex­Data­Item consists­Of
Name consists­Of
Definition

The constituent data item of the complex data item.

Toelichting

A complex data item always consists out of two or more data items, which in turn can consists out of other data items.

Nillable False
Multiplicity 2 .. *
Related objecttype Orchestrated­Data­Item
4.2.3.1.14 Property­Mapping­Execution
Relatiesoort details Property­Mapping­Execution was­Informed­By
Name was­Informed­By
Definition

The source activity uses some output of the target activity.

Toelichting Een inhoudelijke toelichting op de definitie, ter verheldering of nadere duiding.
Nillable False
Multiplicity 1 .. *
Related objecttype Path­Mapping­Execution
Relatiesoort details Property­Mapping­Execution used
Name used
Definition

The mapping element used in the orchestration activity.

Nillable False
Multiplicity 1
Related objecttype Property­Mapping
4.2.3.1.15 Orchestrated­Simple­Data­Item
Attribuutsoort details Orchestrated­Simple­Data­Item value
Name value
Definition

The value of the data item.

Nillable False
Multiplicity 1
Format Value­Type
4.2.3.2 Keuze
4.2.3.2.1 Keuze Value­Type
Keuze element Value­Type boolean
Name boolean
Multiplicity 1
Format Boolean
Keuze element Value­Type integer
Name integer
Multiplicity 1
Format Integer
Keuze element Value­Type lijn
Name lijn
Multiplicity 1
Format GM_Curve
Keuze element Value­Type punt
Name punt
Multiplicity 1
Format GM_Point
Keuze element Value­Type real
Name real
Multiplicity 1
Format Real
Keuze element Value­Type string
Name string
Multiplicity 1
Format Character­String
Keuze element Value­Type vlak
Name vlak
Multiplicity 1
Format GM_Surface

4.3 View IMX Mapping model

Diagram
Figure 10
PathMappingPathPropertyMapping

Mapping

4.3.1 Objecttypes

4.3.1.1 Path­Mapping
Name Path­Mapping
Definition

A path mapping is a set of declarations which express references to data items of data objects of source data sources and actions on those.

Is abstract False
Overview attributes
Attribute name Definition Format Card
name

The name of the path mapping.

Character­String 1
Overview relations
Relation name with multiplicity Definition
Path­Mapping [ 1 ] path: path Path [ 0 .. * ]
Path­Mapping [ 1 ] next­Path­Mapping Path­Mapping [ 1 ]

The subsequent path mapping to be executed as part of a property mapping.

Path­Mapping­Execution [ 1 ] used Path­Mapping [ 1 ]

The mapping element used in the orchestration activity.

Property­Mapping [ 1 ] path­Mapping: path­Mapping Path­Mapping [ 1 .. * ]
4.3.1.2 Path
Name Path
Definition

A path, or path expression, is a set of declarations which, conceptually, represent a possible route through a graph of data items. A path is comprised of an ordered, non-unique sequence of segments. Each segment represents a step in that route.

Is abstract False
Overview attributes
Attribute name Definition Format Card
segment

A segment is a string that represents a property reference.

Character­String 1 .. *
Overview relations
Relation name with multiplicity Definition
Path­Execution [ 1 ] used: used Path [ 1 ]

The mapping element used in the orchestration activity.

Path­Mapping [ 1 ] path: path Path [ 0 .. * ]
4.3.1.3 Property­Mapping
Name Property­Mapping
Definition

A property mapping is a set of declarations which express the mapping of a target object type property within an object type mapping.

Is abstract False
Overview attributes
Attribute name Definition Format Card
property­Name

The name of the property in the target model which is the target of this property mapping.

Character­String 1
Overview relations
Relation name with multiplicity Definition
Property­Mapping [ 1 ] path­Mapping: path­Mapping Path­Mapping [ 1 .. * ]
Property­Mapping­Execution [ 0 .. * ] used: used Property­Mapping [ 1 ]

The mapping element used in the orchestration activity.

4.3.2 Attribuut- en relatiesoort details

4.3.2.1 Objecttype details
4.3.2.1.1 Path­Mapping
Attribuutsoort details Path­Mapping name
Name name
Definition

The name of the path mapping.

Toelichting Een inhoudelijke toelichting op de definitie, ter verheldering of nadere duiding.
Nillable False
Multiplicity 1
Patroon De verzameling van waarden die gegevens van deze attribuutsoort kunnen hebben, oftewel het waardenbereik, uitgedrukt in een specifieke structuur.
Format Character­String
Relatiesoort details Path­Mapping path
Name path
Nillable False
Multiplicity 0 .. *
Related objecttype Path
Relatiesoort details Path­Mapping next­Path­Mapping
Name next­Path­Mapping
Definition

The subsequent path mapping to be executed as part of a property mapping.

Nillable False
Multiplicity 1
Related objecttype Path­Mapping
4.3.2.1.2 Path
Attribuutsoort details Path segment
Name segment
Definition

A segment is a string that represents a property reference.

Nillable False
Multiplicity 1 .. *
Format Character­String
4.3.2.1.3 Property­Mapping
Attribuutsoort details Property­Mapping property­Name
Name property­Name
Definition

The name of the property in the target model which is the target of this property mapping.

Toelichting Een inhoudelijke toelichting op de definitie, ter verheldering of nadere duiding.
Nillable False
Multiplicity 1
Patroon De verzameling van waarden die gegevens van deze attribuutsoort kunnen hebben, oftewel het waardenbereik, uitgedrukt in een specifieke structuur.
Format Character­String
Relatiesoort details Property­Mapping path­Mapping
Name path­Mapping
Nillable False
Multiplicity 1 .. *
Related objecttype Path­Mapping

5. List of Figures

A. Index

A.1 Terms defined by this specification

A.2 Terms defined by reference

B. References

B.1 Informative references

[IMX-Metadata]
IMX - Metadata basic principles. Geonovum. W3C Editor's Draft. URL: https://geonovum.github.io/IMX-Metadata
[IMX-ModelMapping]
IMX Model Mapping. Geonovum. W3C Editor's Draft. URL: https://geonovum.github.io/IMX-ModelMapping
[Property-Stereotype-for-Metadata]
Property Stereotype for Metadata. Publisher-1. V1.0. URL: https://shapechange.net/wp-content/uploads/2019/12/UGAS19-D100_property_stereotypes.pdf
[prov-o]
PROV-O: The PROV Ontology. Timothy Lebo; Satya Sahoo; Deborah McGuinness. W3C. 30 April 2013. W3C Recommendation. URL: https://www.w3.org/TR/prov-o/
Geonovum Information model - Proposed recommendation