Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Table of Contents |
---|
The opportunity
It is not clear in which order to read traces when there are more than one in a single semantic correspondence statement. Some traces are, in fact, qualifiers of other traces.
Is it possible to:
- somehow differentiate the traces and
- apply a reading order?
Discussion
The discussion has been split into parts to make easier to follow.
Assumptions
The SWIM Information Definition Specification assumes that we are not yet in an environment that is fully supported by semantic technologies. Therefore, humans are the more realistic target for the semantic correspondence statements. This leads to the following statements about traces:
- The traces are to be read by humans but may be read by machines (machine processable).
- The traces are to be created and inspected by humans. There is nothing to stop machines creating the mappings but any such mappings will still need human inspection.
- The maintenance and migration of traces can be managed by machines (or humans) based on scripts.
Note |
---|
The need for a machine readable list of mappings has been recorded in the AIRM CCB to ease the migration of mappings between versions of the AIRM. This can be summarised as the need for "machine processable" maintenance of traces. |
Different types of traces
The table below outlines the names and definition to be used for the different types of trace. The names are inspired by the words from the SWIM Information Specification's requirements. This approach makes it clear which requirement is being satisfied by the trace.
Trace name | Definition | Requirement | Trace required |
---|---|---|---|
"information concept" trace | trace from the information concept in the information definition to the AIRM concept that has an equivalent or wider meaning | SWIM-INFO-016 Mapping of information concepts | requires one concept trace |
|
| SWIM-INFO-017 Mapping of data concepts | requires one concept trace and one data type trace |
"narrowing" trace | trace to an AIRM concept to fully describe the narrowing of the concept being mapped | SWIM-INFO-018 Additional traces to clarify the mapping | allows any number of additional narrowing traces |
Source and target of traces
Info |
---|
The Interoperability Architecture provides good guidance on the best place to start when looking to establish a semantic correspondence. Basically, the best place to start is usually the adjacent box within the grid. |
The usual start point depends on the type of information definition being traced.
Type of information definition | Best place to start | ||||||
---|---|---|---|---|---|---|---|
information exchange requirements | The best place to start is the AIRM Conceptual Model. However, information exchange requirements can vary in the level of detail included. Therefore, if no suitable AIRM concept is found in the AIRM Conceptual Model, the AIRM Logical Model may be useful. For the most part, it is expected that these types of trace fall under requirement 16. Narrowing traces (requirement 18) can be added as needed. It is usual that these trace to the same part of the AIRM as the "main" trace.
| ||||||
service message / information exchange model | Service messages and information exchange models can include concepts that are of different level of granularity. For example, they may contain standardised "messages" such as NOTAM and METAR. They also contain more atomic concepts such as "Aerodrome" or "Airspace". These in turn may have attributes/properties such as the "ICAO location indicator". Although it is difficult to give generic advice that is applicable in all cases, the following guidance is applicable:
Narrowing traces (requirement 18) can be added as needed. It is usual that these trace to the same part of the AIRM as the "main" trace.
|
Reading order of traces
General reading order is:
- "information concept" trace
- "narrowing" traces (0..*)
or
- "data concept" trace
- "data type" trace (1)
- "narrowing" traces (0..*)
All traces have an AND relationship.
Info |
---|
The following rules apply to the traces:
|
How many traces are sufficient/enough?
The important thing is to add sufficient traces but no more than enough to make sure the semantics are understood.
There is no need to add more traces.
If you find that too many traces are required to ensure that the semantics are understood, there may be a problem somewhere in fully understanding the meaning of a concept.
if there are too much traces needed maybe think about a change request? toIn that case a change may be needed to the information definition and/or the AIRM.
- granularity - map the atoms.
Level of semantic correspondence
Advanced users may like to add extra detail concerning the level of semantic correspondence achieved. The requirements talk about "equivalent or wider meaning". The table below contains the old AIRM Rulebook names and the skos equivalents.
Definition being traced to is... | Annotations that can make this more explicit in SESAR documents | in skos |
---|---|---|
Equivalent |
|
|
Wider | Specialised: The definition in the information definition is a special case of the definition found in the AIRM. | skos:narrowMatch: used to state a hierarchical mapping link between two concepts. |
Info |
---|
The skos names are preferred. Skos has rich support in semantic technologies. However, SESAR documents use slightly different names based on the old AIRM Rulebook. Both options are therefore valid. |
Note |
---|
We only need narrowing traces if the main trace is "specialised" or "narrowMatch" |
Note |
---|
Traces cannot be annotated as "generalised" as this breaks the requirement. |
Annotating traces
It is possible to add further notes to the mapping (the container for one or more trace). This comes in handy when e.g. tracing legacy interfaces that have data type constraints leading to loss of Information.
The table below gives two alternatives for recording the traces in XSD.
Using element names is the preferred option as it can be used more easily in rules. The element name contains semantic hints even if the attributes are not added.
However, the attribute option is also supported as there are a lot of traces developed that do not use element names. Support for this option should be deprecated in the future.
<dataConceptTrace>
<dataTypeTrace>
<trace keyword="dataConceptTrace>
<trace keyword="dataTypeTrace>
"narrowing" trace
<narrowingTrace>
<trace keyword="narrowingTrace>
Full example
If we apply all of this:
:
see if "degree" has a skos name instead.
check for a compressed notation - JSON examples. Unwrap the "mapping" level at least.or: