Class SchemaSetImpl.AnyType

java.lang.Object
com.sun.xml.xsom.impl.ComponentImpl
com.sun.xml.xsom.impl.SchemaSetImpl.AnyType
All Implemented Interfaces:
Ref.Type, XSAttContainer, XSComplexType, XSComponent, XSDeclaration, XSType
Enclosing class:
SchemaSetImpl

public class SchemaSetImpl.AnyType extends ComponentImpl implements XSComplexType, Ref.Type
  • Method Details

    • getOwnerSchema

      public SchemaImpl getOwnerSchema()
      Description copied from interface: XSComponent
      Gets a reference to the XSSchema object to which this component belongs.

      In case of XSEmpty component, this method returns null since there is no owner component.

      Specified by:
      getOwnerSchema in interface XSComponent
      Overrides:
      getOwnerSchema in class ComponentImpl
    • isAbstract

      public boolean isAbstract()
      Description copied from interface: XSComplexType
      Checks if this complex type is declared as an abstract type.
      Specified by:
      isAbstract in interface XSComplexType
    • getAttributeWildcard

      public XSWildcard getAttributeWildcard()
      Specified by:
      getAttributeWildcard in interface XSAttContainer
    • getAttributeUse

      public XSAttributeUse getAttributeUse(String nsURI, String localName)
      Description copied from interface: XSAttContainer
      Looks for the attribute use with the specified name from all the attribute uses that are directly/indirectly referenced from this component.

      This is the exact implementation of the "attribute use" schema component.

      Specified by:
      getAttributeUse in interface XSAttContainer
    • iterateAttributeUses

      public Iterator<XSAttributeUse> iterateAttributeUses()
      Description copied from interface: XSAttContainer
      Lists all the attribute uses that are directly/indirectly referenced from this component.

      This is the exact implementation of the "attribute use" schema component.

      Specified by:
      iterateAttributeUses in interface XSAttContainer
    • getDeclaredAttributeUse

      public XSAttributeUse getDeclaredAttributeUse(String nsURI, String localName)
      Description copied from interface: XSAttContainer
      Looks for the attribute use with the specified name from the attribute uses which are declared in this complex type. This does not include att uses declared in att groups that are referenced from this complex type, nor does include att uses declared in base types.
      Specified by:
      getDeclaredAttributeUse in interface XSAttContainer
    • iterateDeclaredAttributeUses

      public Iterator<XSAttributeUse> iterateDeclaredAttributeUses()
      Description copied from interface: XSAttContainer
      Lists all the attribute uses that are declared in this complex type.
      Specified by:
      iterateDeclaredAttributeUses in interface XSAttContainer
    • iterateAttGroups

      public Iterator<XSAttGroupDecl> iterateAttGroups()
      Description copied from interface: XSAttContainer
      Iterates all AttGroups which are directly referenced from this component.
      Specified by:
      iterateAttGroups in interface XSAttContainer
    • getAttributeUses

      public Collection<XSAttributeUse> getAttributeUses()
      Description copied from interface: XSAttContainer
      Gets all the attribute uses.
      Specified by:
      getAttributeUses in interface XSAttContainer
    • getDeclaredAttributeUses

      public Collection<? extends XSAttributeUse> getDeclaredAttributeUses()
      Description copied from interface: XSAttContainer
      Lists all the attribute uses that are declared in this complex type.
      Specified by:
      getDeclaredAttributeUses in interface XSAttContainer
    • getAttGroups

      public Collection<? extends XSAttGroupDecl> getAttGroups()
      Description copied from interface: XSAttContainer
      Iterates all AttGroups which are directly referenced from this component.
      Specified by:
      getAttGroups in interface XSAttContainer
    • isFinal

      public boolean isFinal(int i)
      Specified by:
      isFinal in interface XSComplexType
    • isSubstitutionProhibited

      public boolean isSubstitutionProhibited(int i)
      Description copied from interface: XSComplexType
      Roughly corresponds to the block attribute. But see the spec for gory detail.
      Specified by:
      isSubstitutionProhibited in interface XSComplexType
    • isMixed

      public boolean isMixed()
      Specified by:
      isMixed in interface XSComplexType
    • getContentType

      public XSContentType getContentType()
      Description copied from interface: XSComplexType
      The content of this complex type.
      Specified by:
      getContentType in interface XSComplexType
      Returns:
      always non-null.
    • getExplicitContent

      public XSContentType getExplicitContent()
      Description copied from interface: XSComplexType
      Gets the explicit content of a complex type with a complex content that was derived by extension.

      Informally, the "explicit content" is the portion of the content model added in this derivation. IOW, it's a delta between the base complex type and this complex type.

      For example, when a complex type T2 derives fom T1, then:

       content type of T2 = SEQUENCE( content type of T1, explicit content of T2 )
       
      Specified by:
      getExplicitContent in interface XSComplexType
      Returns:
      If this complex type is derived by restriction or has a simple content, this method returns null. IOW, this method only works for a complex type with a complex content derived by extension from another complex type.
    • getBaseType

      public XSType getBaseType()
      Description copied from interface: XSType
      Returns the base type of this type. Note that if this type represents xs:anyType, this method returns itself. This is awkward as an API, but it follows the schema specification.
      Specified by:
      getBaseType in interface XSType
      Returns:
      always non-null.
    • asSimpleType

      public XSSimpleType asSimpleType()
      Description copied from interface: XSType
      Casts this object to XSSimpleType if possible, otherwise returns null.
      Specified by:
      asSimpleType in interface XSType
    • asComplexType

      public XSComplexType asComplexType()
      Description copied from interface: XSType
      Casts this object to XSComplexType if possible, otherwise returns null.
      Specified by:
      asComplexType in interface XSType
    • isDerivedFrom

      public boolean isDerivedFrom(XSType t)
      Description copied from interface: XSType
      Returns true if this type is derived from the specified type.

      Note that t.isDerivedFrom(t) returns true.

      Specified by:
      isDerivedFrom in interface XSType
    • isSimpleType

      public boolean isSimpleType()
      Description copied from interface: XSType
      Returns true if this instanceof XSSimpleType.
      Specified by:
      isSimpleType in interface XSType
    • isComplexType

      public boolean isComplexType()
      Description copied from interface: XSType
      Returns true if this instanceof XSComplexType.
      Specified by:
      isComplexType in interface XSType
    • asEmpty

      public XSContentType asEmpty()
    • getDerivationMethod

      public int getDerivationMethod()
      Specified by:
      getDerivationMethod in interface XSType
    • getScope

      public XSElementDecl getScope()
      Description copied from interface: XSComplexType
      Gets the scope of this complex type. This is not a property defined in the schema spec.
      Specified by:
      getScope in interface XSComplexType
      Returns:
      null if this complex type is global. Otherwise return the element declaration that contains this anonymous complex type.
    • visit

      public void visit(XSVisitor visitor)
      Description copied from interface: XSComponent
      Accepts a visitor.
      Specified by:
      visit in interface XSComponent
    • apply

      public <T> T apply(XSFunction<T> f)
      Description copied from interface: XSComponent
      Accepts a functor.
      Specified by:
      apply in interface XSComponent
    • getType

      public XSType getType()
      Description copied from interface: Ref.Type
      Obtains a reference as a type.
      Specified by:
      getType in interface Ref.Type
    • getRedefinedBy

      public XSComplexType getRedefinedBy()
      Description copied from interface: XSComplexType
      If this is redefined by another complex type, return that component.
      Specified by:
      getRedefinedBy in interface XSComplexType
      Specified by:
      getRedefinedBy in interface XSType
      Returns:
      null if this component has not been redefined.
    • getRedefinedCount

      public int getRedefinedCount()
      Description copied from interface: XSType
      Returns the number of complex types that redefine this component.

      For example, if A is redefined by B and B is redefined by C, A.getRedefinedCount()==2, B.getRedefinedCount()==1, and C.getRedefinedCount()==0.

      Specified by:
      getRedefinedCount in interface XSType
    • listSubstitutables

      public XSType[] listSubstitutables()
      Description copied from interface: XSType
      Lists up types that can substitute this type by using xsi:type. Includes this type itself.

      This method honors the block flag.

      Specified by:
      listSubstitutables in interface XSType
    • getSubtypes

      public List<XSComplexType> getSubtypes()
      Description copied from interface: XSComplexType
      Returns a list of direct subtypes of this complex type. If the type is not subtyped, returns empty list. Doesn't return null. Note that the complex type may be extended outside of the scope of the schemaset known to XSOM.
      Specified by:
      getSubtypes in interface XSComplexType
    • getElementDecls

      public List<XSElementDecl> getElementDecls()
      Description copied from interface: XSComplexType
      Returns a list of element declarations of this type.
      Specified by:
      getElementDecls in interface XSComplexType
    • getName

      public String getName()
      Description copied from interface: XSDeclaration
      Gets the (local) name of the declaration.
      Specified by:
      getName in interface XSDeclaration
      Returns:
      null if this component is anonymous.
    • getTargetNamespace

      public String getTargetNamespace()
      Description copied from interface: XSDeclaration
      Target namespace to which this component belongs. "" is used to represent the default no namespace.
      Specified by:
      getTargetNamespace in interface XSDeclaration
    • isAnonymous

      @Deprecated public boolean isAnonymous()
      Deprecated.
      Specified by:
      isAnonymous in interface XSDeclaration
    • isGlobal

      public final boolean isGlobal()
      Description copied from interface: XSDeclaration
      Returns true if this declaration is a global declaration. Global declarations are those declaration that can be enumerated through the schema object.
      Specified by:
      isGlobal in interface XSDeclaration
    • isLocal

      public final boolean isLocal()
      Description copied from interface: XSDeclaration
      Returns true if this declaration is a local declaration. Equivalent of !isGlobal()
      Specified by:
      isLocal in interface XSDeclaration