Проверка значения NaN в XML-вводе по XSD, которые ограничивают значение NaN - PullRequest
2 голосов
/ 11 мая 2019

Я пытаюсь проверить двойное значение NaN по схеме XSD, которая предполагает предотвратить такое значение NaN.Однако в .NET это кажется действительным.

Я также проверил это с другими валидаторами XML, такими как онлайн-инструменты и Altova XML Spy.Эти инструменты не принимают значение NaN!

Я использую следующую схему XSD

<xs:element name="myDouble">
    <xs:simpleType>
        <xs:restriction base="xs:double">
          <xs:minExclusive value="-INF"/>
          <xs:maxExclusive value="INF"/>
        </xs:restriction>
    </xs:simpleType>
</xs:element>

Кажется действительным, когда я пытаюсь проверить ввод с помощью библиотек XML .NET:

<myDouble>NaN</myDouble>

Однако я понял, что онлайновые валидаторы и инструменты XML, такие как Altova XML Spy, говорят, что этот ввод недействителен.

Я не мог понять, почему существует такое другое поведение?

Весь код можно найти в следующем репозитории github: https://github.com/ozgurtuzgen/DoubleNaNValidation

...