我有一個根插入標記,一系列插入標記,每個標記都具有「名稱」屬性。xsd唯一約束不起作用
我無法獲得在線驗證器以發現存在重複的「名稱」值。
我們一直在努力......天。感謝您的發現。
XSD:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.osames.org/osamesorm"
targetNamespace="http://www.osames.org/osamesorm" elementFormDefault="qualified">
<xs:element name="Inserts">
<xs:complexType>
<xs:sequence>
<xs:element name="Insert" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:unique name="unique-isbn">
<xs:selector xpath="Inserts/Insert"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
</xs:schema>
XML:
<?xml version="1.0" encoding="UTF-8"?>
<Inserts xmlns="http://www.osames.org/osamesorm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.osames.org/osamesorm ./xml_schemas/verysimple.xsd">
<Insert name="BaseInsert">INSERT INTO {0} ({1}) values ({2});</Insert>
<Insert name="BaseInsert">INSERT INTO {0} ({1}) values ({2});</Insert>
</Inserts>
我有類似的問題,關鍵的解決辦法是在選擇使用命名空間前綴的! – recineshto