Czy parsery/deserializatory XML ogólnie są w stanie odróżnić nillable elements explicitly set to null and optional elements that are left out?Czy parsery XML wskazują różnicę między xsi: nil = "true" a pominiętymi elementami?
Załóżmy, że mamy następujące typu złożonego:
<complexType name="NiceType">
<sequence>
<element name="niceElem" nillable="true" type="int" minOccurs="0" />
</sequence>
</complexType>
element jednoznacznie wartość zerową (przykład 1):
<niceType>
<niceElem xsi:nil="true"/>
</niceType>
element pominięty (przykład 2):
<niceType>
</niceType>
Czy parsery w ogóle, takie jak implementacje JAX-B lub .NET alikes, takie jak moduł XML WCF, będą w stanie powiedzieć różnica między przykładem 1 i przykładem 2 powyżej? Innymi słowy, czy w sposób umożliwiający współdziałanie byłby w stanie połączyć obydwie reprezentacje NULL - jak w przykładzie - w celu przekazania różnych odcieni NULL?
Doskonałe sformułowanie - * "różne odcienie NULL" * - czynią przyzwoitą nazwę zespołu! –
Świetny pomysł, nieco nerdowy zespół, ale tak czy inaczej :) – nize