by Eric van der Vlist is published by O'Reilly & Associates (ISBN: 0596004214)


Name

xsd:IDREFS — Definition of lists of references to unique identifiers

Synopsis

<xsd:simpleType name="IDREFS" id="IDREFS">
 <xsd:restriction>
 <xsd:simpleType>
 <xsd:list>
 <xsd:simpleType>
 <xsd:restriction base="xsd:IDREF"/>
 </xsd:simpleType>
 </xsd:list>
 </xsd:simpleType>
 <xsd:minLength value="1"/>
 </xsd:restriction>
</xsd:simpleType>

Derived from

xsd:IDREF

Primary

None

Known subtypes

None

Data parameters (facets)

enumeration, length, maxLength, minLength

Description

xsd:IDREFS is derived as a list from xsd:IDREF. It represents whitespace-separated lists of references to identifiers that are defined using the ID datatype.

The lexical space of xsd:IDREFS is the lexical space of a list of xsd:NCName values with a minimum length of one element (xsd:IDREFS can't be empty lists).

For RELAX NG implementations that support the DTD compatibility library, xsd:IDREFS emulates the IDREFS attribute type of the XML DTDs, even though it can define simple content elements as well as attributes.

Restrictions

Applications that need to maintain compatibility with DTDs shouldn't use this datatype for elements, but instead should reserve it for attributes.

The lexical domain (lists of xsd:NCName) of this datatype doesn't allow the definition of lists of numerical key references or references containing whitespace.

Example

<element name="book">
  <element name="isbn">
    <data type="xsd:int"/>
  </element>
  <element name="title">
    <data type="xsd:string"/>
  </element>
  <element name="author-ref">
    <attribute name="ref">
      <data type="xsd:IDREF"/>
    </attribute>
  </element>
  <element name="character-refs">
    <data type="xsd:IDREFS"/>
  </element>
  <attribute name="identifier">
    <data type="xsd:ID"/>
  </attribute>
</element>

This text is released under the Free Software Foundation GFDL.