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?
Much of the background has been captured in the comments section below.
The discussion has been split into parts to make easier to follow.
The traces are to be read by humans/machines
The traces are to be created by humans/machines
Can we survive with just using these names that are inspired by the words in the spec? |
Requirement | Trace required | Trace name | Definition |
---|---|---|---|
SWIM-INFO-016 Mapping of information concepts | requires one concept trace | "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-017 Mapping of data concepts | requires one concept trace and one data type trace |
|
|
SWIM-INFO-018 Additional traces to clarify the mapping | allows any number of additional clarifying traces | "additional" trace | trace to an AIRM concept to fully describe the narrowing of the concept being mapped |
The usual start point depends on the requirement being fulfilled.
Trace name | Source | Target |
---|---|---|
"information concept" trace | Likely sources: information exchange requirements | Best place to start: Conceptual Model. If not found there, use Contextual Model or Logical Model |
| Likely sources: service message | Best place to start: Logical Model. If not found there, use Contextual Model or Conceptual Model for the "data concept" trace |
"additional" trace | source depends on the trace being clarified | Should be in the same model as the trace being qualified. |
General reading order is:
or
All traces have an AND relationship.
Advance users may like to add extra detail concerning the level of semantic correspondence achieved. The requirements talk about "equivalent or wider meaning"
Definition being traced to is... | Annotations that can make this more explicit | |
---|---|---|
Equivalent | ExactCopy: Definition of concepts in the information definition and the AIRM are exact copy of each other. SyntacticallyEqual: Definitions are only different due to syntax corrections (grammar, spelling) but are otherwise equivalent. Rewritten: The definition of the concept in the information definition has been rewritten to reflect information definition specificity. However, the meaning is the same, i.e. the definition still describes exactly the same concept as the AIRM. | |
Wider | Specialised: The definition in the information definition is a special case of the definition found in the AIRM. |
We only need additional traces if the main trace is "specialised" |
Traces cannot be annotated as "generalised" as this breaks the requirement. |
AIRM_Rule 60 The 'Definition:Adapted' AIRM::TaggedValue shall be completed in order to indicate the level of semantic correspondence with the source definition. The list of values is:
AIRM_Rule 116 A data or information construct is considered to be in semantic correspondence with the AIRM if one of the following conditions holds:
|
It is possible to add a further notes to the mapping (or trace?). This comes in handy for example when e.g. tracing legacy interfaces that have data type constraints leading to loss of Information.
However it should be consistent with the information given at the AIRM homepage. Links to the according pages will also help.
How should the different traces be represented in the XSD examples we use?
<dataConceptTrace>
<dataTypeTrace>
<trace keyword="dataConceptTrace>
<trace keyword="dataTypeTrace>
<trace keyword="additionalTrace>
Full example
If we apply all of this: