The XML parser will default to value of 0.0 (see E57XmlParser::endElement), so in the cartesianY case it is out of range.
This is correct for any other "Float" node (E57 Standard 8.3.4.2):
The value of a Float is represented as child text of the XML element. This child text shall be zero or one occurrence of the xsd:float representation (if precision is single) or xsd:double (if precision is double), with optional leading and trailing XML whitespace. If no value is specified, the default value of the Float is 0.
However for prototypes (E57 Standard 8.3.9.3 (1)):
(1) The prototype child element specifies the structure of the data that will be stored in the CompressedVector, as well as the possible range of values that the data may take. The prototype shall be any E57 element type (with potential sub-children) except Blob and CompressedVector. The values of the prototype elements and sub-elements are ignored, and need not be specified.
A prototype like the following will throw an exception:
The XML parser will default to
value
of0.0
(seeE57XmlParser::endElement
), so in thecartesianY
case it is out of range.This is correct for any other "Float" node (E57 Standard 8.3.4.2):
However for prototypes (E57 Standard 8.3.9.3 (1)):
So this case should not throw an exception.