|
Related features are associated by the use of `*Uid` tags. Take this example:
|
|
Related features are associated by the use of `*Uid` tags.
|
|
|
|
|
|
|
|
## Plain Association
|
|
|
|
A VOR-DME is a good example. This [[navigational aid]] is a combination of a VOR and a DME.
|
|
|
|
|
|
```xml
|
|
```xml
|
|
<Vor>
|
|
<Vor>
|
... | @@ -24,11 +27,40 @@ Related features are associated by the use of `*Uid` tags. Take this example: |
... | @@ -24,11 +27,40 @@ Related features are associated by the use of `*Uid` tags. Take this example: |
|
</Dme>
|
|
</Dme>
|
|
```
|
|
```
|
|
|
|
|
|
This navigational aid is a VOR-DME, an integrated combination of a VOR and a DME.
|
|
The `VorUid` [[uniquely identifies|identification]] this `Vor` feature. The `Dme` feature contains the full `VorUid` which associates it to the `Vor`.
|
|
|
|
|
|
|
|
The bonding between the two features is weak: Say, if the `codeId` of the `Vor` changes, the `DmeUid` does *not* automatically change as well.
|
|
|
|
|
|
|
|
## Nested Association
|
|
|
|
The association may be nested inside another `*Uid` tag such as [[airports|airport]] and their runways do:
|
|
|
|
|
|
|
|
```xml
|
|
|
|
<Ahp>
|
|
|
|
<AhpUid>
|
|
|
|
<codeId>LFNT</codeId>
|
|
|
|
</AhpUid>
|
|
|
|
(...)
|
|
|
|
</Ahp>
|
|
|
|
<Rwy>
|
|
|
|
<RwyUid>
|
|
|
|
<AhpUid>
|
|
|
|
<codeId>LFNT</codeId>
|
|
|
|
</AhpUid>
|
|
|
|
<txtDesig>16R/34L</txtDesig>
|
|
|
|
</RwyUid>
|
|
|
|
(...)
|
|
|
|
</Rwy>
|
|
|
|
```
|
|
|
|
|
|
|
|
The `AhpUid` [[uniquely identifies|identification]] this `Ahp` feature. The `Rwy` feature contains the full `AhpUid` inside it's `RwyUid` which associates it to the `Ahp`.
|
|
|
|
|
|
|
|
The bonding between the two features is strong: Say, if the `codeId` of the `Ahp` changes, the `RwyUid` does automatically change as well.
|
|
|
|
|
|
|
|
## mid
|
|
|
|
|
|
The `VorUid` [[uniquely identifies|identification]] this `Vor` feature by it's code and position. The `Dme` feature contains the full `VorUid` which associates it to the `Vor`.
|
|
Since a `*Uid` tag may contain quite a number of key properties, the recognition of identical `*Uid` tags in order to associate features is a cumbersome task sometimes.
|
|
|
|
|
|
In the above example, the `VorUid` is rather complex and contains three properties. To facilitate the recognition of such associations, you may add an `mid` attribute:
|
|
To facilitate this matching, you can add an `mid` attribute to the `*Uid` tag:
|
|
|
|
|
|
```xml
|
|
```xml
|
|
<Vor>
|
|
<Vor>
|
... | @@ -54,4 +86,4 @@ In the above example, the `VorUid` is rather complex and contains three properti |
... | @@ -54,4 +86,4 @@ In the above example, the `VorUid` is rather complex and contains three properti |
|
</Dme>
|
|
</Dme>
|
|
```
|
|
```
|
|
|
|
|
|
:warning: Even if a `mid` attribute is present, the properties wrapped by the `*Uid` tag must not be omitted. |
|
:warning: Even if a `mid` attribute is present, the key properties wrapped by the `*Uid` tag must not be omitted. |
|
\ No newline at end of file |
|
\ No newline at end of file |