0
我有复杂类型的层次结构。按类型划分的xsd元素名称
例如:与元件StreetNumber,StreetName和POSTALCODE 混凝土类型是homeAddress用碱地址与基地址 混凝土型BusinessAddress
类型是homeAddress和BusinessAddress不具有任何额外的元件并且仅 摘要类型地址类型是不同的。
是否有可能在我的XML中有超过1个地址类型?
<HomeAddress>
...
</HomeAddress>
<HomeAddress>
...
</HomeAddress>
在XSD:
<xs:element name="address" type="Address" maxOccurs="unbounded"/>
我想根据实际类型元素的名称是动态的。
如Java,可以在子类型被分配到超强型?我如何知道什么是实际类型? –
是的。尝试通过像jaxb(用于Java)或xsd.exe(用于C#)的序列化代码生成工具来运行您的XSD,以查看OO继承概念如何将1:1映射到XML类型。关于“实际类型”,homeAddress是一个地址,所以它们都是。如果有帮助,可以在上面的例子中添加另一个复杂的子类型(例如“businessAddress”)。 –
http://stackoverflow.com/questions/5020313/polymorphism-in-xsd-schema-and-jaxb-class的可能重复 –