У меня есть следующий XML:
<Person>
<Name>James</Name>
<Age>18</Age>
</Person>
В XSD, который проверяет этот XML, я хочу добавить еще один элемент. Я хочу, чтобы этот элемент был необязательным, но со значением по умолчанию - поэтому, если он отсутствует при проверке XML, он заполняется значением по умолчанию. Допустим, новый элемент - это NumberOfSiblings, который по умолчанию равен 0. Я сделал это так:
<xs:element name="Person">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string"/>
<xs:element name="Age" type="xs:integer" />
<xs:element name="NumberOfSiblings" type="xs:integer" minOccurs="0" default="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
Итак, давайте предположим, что я пришел для анализа XML выше в .Net / C #. Есть ли способ проверить его так, чтобы он автоматически создавал элемент со значением по умолчанию, и, следовательно, парсер не падал? Если нет, как правильно получить это значение по умолчанию из XSD?