My reading of Datex-II (as of version 2.3) is that OpenLR locations are specified roughly like this for linear features:
…
<SituationRecord …>
<!-- description of the event here -->
<groupOfLocations xsi:type="Linear">
<linearExtension>
<openlrExtendedLinear>
<firstDirection>
<!-- location reference points here -->
</firstDirection>
<oppositeDirection> <!-- where applicable -->
<!-- location reference points here -->
</oppositeDirection>
</openlrExtendedLinear>
…
Indeed I have seen Datex-II situation publications structured like this, and JAXB parses them nicely into the class scheme I generated from the XSD.
Now I am seeing feeds which have <openlrLineLocationReference>
instead of <firstDirection>
. Since the XSD appears to make no mention of that, JAXB ignores the <openlrLineLocationReference>
element and the OpenlrExtendedLinear
instance it returns contains no data (it has two members, firstDirection
and oppositeDirection
, both of which are null).
Is that incorrect data, or have I missed some part of the specs? (I see Datex-II 3.0 is out by now, but parsing the XSDs with JAXB failed—has this part of OpenLR been updated?)