我想知道是否有可能向元素内的属性添加名称空间。 这是我的XSD:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://fooschema.com"
xmlns="http://fooschema.com"
elementFormDefault="qualified"
version="1.0">
<xs:element name = "class">
<xs:complexType>
<xs:sequence>
<xs:element name="student" type="StudentType" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name = "StudentType">
<xs:sequence>
<xs:element name = "firstname" type = "xs:string"/>
</xs:sequence>
<xs:attribute name = "rollno" type = "xs:positiveInteger"/>
</xs:complexType>
</xs:schema>
这是我的示例xml:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xs:class xmlns:xs = "http://fooschema.com">
<xs:student rollno="393">
<xs:firstname>Dinkar</xs:firstname>
</xs:student>
</xs:class>
现在有一种方法可以将xs
名称空间声明添加到rollno
属性中,如下所示:
<xs:student xs:rollno="393">
答案 0 :(得分:0)
解决方案是添加:
attributeFormDefault="unqualified"
作为XSD定义的一部分。