2010-08-02 17 views

Respuesta

23

Algo como esto debería funcionar:

<xs:element name="books" maxOccurs="unbounded"> 
    <xs:complexType> 
     <xs:sequence> 
     <xs:element name="book" maxOccurs="unbounded"> 
      <xs:complexType> 
       <xs:attribute name="isbn" type="xs:string"/> 
      </xs:complexType> 
     </xs:element> 
     </xs:sequence> 
    </xs:complexType> 
    <xs:unique name="unique-isbn"> 
     <xs:selector xpath="book"/> 
     <xs:field xpath="@isbn"/> 
    </xs:unique> 
</xs:element> 

Básicamente, se puede definir una restricción "singularidad" por medio de un elemento <xs:unique> y definir lo que XPath esta singularidad se debe aplicar a.

Consulte W3Schools 'entry on <xs:unique> para obtener más información.

0

Nota: Esto no funciona si tiene diferentes espacios de nombres. A continuación, necesita la expresión XPath completo:

Esto podría ser así:

<xs:unique name="unique-isbn"> 
     <xs:selector xpath="theOtherNamespace:book"/> 
     <xs:field xpath="@isbn"/> 
</xs:unique> 
Cuestiones relacionadas