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


Name

anyName — Name class accepting any name

Synopsis

element anyName
{
 (
 attribute ns { text }?,
 attribute datatypeLibrary {xsd:anyURI}?,
 attribute * - (rng:* | local:*) { text }*
 ),
 ( ( element * - rng:* { ... }* ) & element except { ... }? )
}

Class

name-class

May be included in

attribute, choice, element, except

Compact syntax equivalent

*-nameClass

Description

The anyName name class matches any name from any namespace. This wide spectrum may be restricted by embedding except name classes.

Restrictions

Within the scope of an element, the name classes of attributes can't overlap. The same restrictions apply to name classes of elements when these elements are combined by interleave.

Example

<element>
 <anyName/>
 <ref name="anything"/>
</element>
        
<element>
 <anyName>
   <except>
     <nsName ns=""/>
     <nsName ns="http://eric.van-der-vlist.com/ns/library"/>
     <nsName ns="http://eric.van-der-vlist.com/ns/person"/>
   </except>
 </anyName>
 <ref name="anything"/>
</element>
      
<attribute>
  <anyName/>
</attribute>

Attributes

datatypeLibrary

This attribute defines the default datatype library. The value is inherited. Note that although datatypeLibrary is allowed in anyName to maintain coherence with other RELAX NG elements, it has no direct effect on anyName itself and none on name class definitions in which it might be embedded.

ns

This attribute defines the default namespace for the elements defined in a portion of a schema. The value is inherited. Although ns is allowed in anyName, it has no direct consequence on anyName itself. ns always allows any name from any namespace and can have a consequence only on name class definitions embedded in this one.


This text is released under the Free Software Foundation GFDL.