org.apache.ws.jaxme.xs.xml
Class XsNamespaceList

java.lang.Object
  extended by org.apache.ws.jaxme.xs.xml.XsNamespaceList
Direct Known Subclasses:
XsNamespaceList.Basic, XsNamespaceList.Other

public abstract class XsNamespaceList
extends java.lang.Object

Implementation of the xs:namespaceList type, specified like this:

  <xs:simpleType name="namespaceList">
    <xs:annotation>
      <xs:documentation>
        A utility type, not for public use
      </xs:documentation>
    </xs:annotation>
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="##any"/>
          <xs:enumeration value="##other"/>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:list>
          <xs:simpleType>
            <xs:union memberTypes="xs:anyURI">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="##targetNamespace"/>
                   <xs:enumeration value="##local"/>
                </xs:restriction>
              </xs:simpleType>
            </xs:union>
          </xs:simpleType>
        </xs:list>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
 

Author:
Jochen Wiedmann

Nested Class Summary
static class XsNamespaceList.Basic
          Default implementation of XsNamespaceList.
static class XsNamespaceList.Other
          A namespace list matching "##other" with the given target namespace pTargetNamespace.
 
Field Summary
static XsNamespaceList ANY
          The namespace list matching "##any".
 
Constructor Summary
XsNamespaceList()
           
 
Method Summary
abstract  XsAnyURI[] getUris()
          Returns the array of URI's specified in the namespace list.
abstract  boolean isAny()
          Returns whether the namespace list matches ##any.
abstract  boolean isOther()
          Returns whether the namespace list matches ##other.
static XsNamespaceList valueOf(java.lang.String pValue, XsAnyURI pTargetNamespace)
          Returns a namespace list, matching the 'namespace' attribute given by pValue.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ANY

public static final XsNamespaceList ANY

The namespace list matching "##any".

Constructor Detail

XsNamespaceList

public XsNamespaceList()
Method Detail

valueOf

public static XsNamespaceList valueOf(java.lang.String pValue,
                                      XsAnyURI pTargetNamespace)

Returns a namespace list, matching the 'namespace' attribute given by pValue. The given target namespace is used, if required.


isAny

public abstract boolean isAny()

Returns whether the namespace list matches ##any. If this is the case, then isOther() returns false and getUris() returns null.


isOther

public abstract boolean isOther()

Returns whether the namespace list matches ##other. If the result is true, then getUris() may be used to obtain an array with a single element, the target namespace.


getUris

public abstract XsAnyURI[] getUris()

Returns the array of URI's specified in the namespace list. If isAny() returns true, then the result is null. If isOther() returns true, then the result is an array with a single element: The target namespace or "" for an absent namespace.