Можно ли проверить следующую XML, где имя ребенка родителя является его атрибут «имя»:XSD: Имя ребенка является имя атрибута родительского
<root>
<parent name="foo">
<foo/>
</parent>
<parent name="bar">
<bar/>
</parent>
<parent name="abc">
<xyz/> <!-- invalid -->
</parent>
</root>
XSD, согласно запросу:
<xsd:schema elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:complexType name="parentType">
<xsd:sequence>
<!-- TODO: enforce element name same as it's parent's attribute "name" -->
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required"/>
</xsd:complexType>
<xsd:element name="root">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="parent" type="parentType"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
«TODO» - это то место, где я в тупике. Заранее благодарю за любую помощь!
Конечно, можно проверить любой XML, он может оказаться недействительным. Пожалуйста, добавьте * .xsd схему в свой пост, чтобы получить полезный ответ. –