Я новичок в xml, и я пытаюсь понять элемент xsd: all. Как MSDN говорит:Правильный способ определения элементов с помощью xsd: all
XSD: Все это позволяет элементы в группе появляются (или не появляются) в любом порядке, в содержащем его элементе.
Итак, как я понимаю, если мы делаем простой пример схемы XSD:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" >
<xsd:element name = "MyElem">
<xsd:complexType>
<xsd:all>
<xsd:element name = "name" type = "xsd:string" />
<xsd:element name = "lastname" type = "xsd:string" />
<xsd:element name = "city" type = "xsd:string" />
</xsd:all>
</xsd:complexType>
</xsd:element>
</xsd:schema>
тогда мы можем иметь файл XML так:
<MyElem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Example.xsd" >
<name>"some_name"</name>
<lastname>"some_last_name"</lastname>
<city>"somecity"</city>
</MyElem>
Это довольно ясно. Но когда я пытаюсь не дать MyElem никаких элементов, так как упоминается в определении (позволяет элементы появляются или не появляются), я получаю сообщение об ошибке в XML-файл, в котором говорится:
следующие элементы, как ожидается, в этом месте.
Я использую редактор Altova xmlSpy xml.
Я правильно понял, что элементы могут появляться или не появляться в содержащем элементе?
Благодарим за помощь.