Package com.sun.xml.xsom
Interface XSComponent
- All Known Subinterfaces:
ContentTypeImpl,XSAttContainer,XSAttGroupDecl,XSAttributeDecl,XSAttributeUse,XSComplexType,XSContentType,XSDeclaration,XSElementDecl,XSFacet,XSIdentityConstraint,XSListSimpleType,XSModelGroup,XSModelGroupDecl,XSNotation,XSParticle,XSRestrictionSimpleType,XSSchema,XSSimpleType,XSTerm,XSType,XSUnionSimpleType,XSWildcard,XSWildcard.Any,XSWildcard.Other,XSWildcard.Union,XSXPath
- All Known Implementing Classes:
AttGroupDeclImpl,AttributeDeclImpl,AttributesHolder,AttributeUseImpl,ComplexTypeImpl,ComponentImpl,ElementDecl,EmptyImpl,FacetImpl,IdentityConstraintImpl,ListSimpleTypeImpl,ModelGroupDeclImpl,ModelGroupImpl,NotationImpl,ParticleImpl,RestrictionSimpleTypeImpl,SchemaImpl,SimpleTypeImpl,UnionSimpleTypeImpl,WildcardImpl,WildcardImpl.Any,WildcardImpl.Finite,WildcardImpl.Other,XPathImpl
public interface XSComponent
Base interface for all the schema components.
- Author:
- Kohsuke Kawaguchi (kohsuke.kawaguchi@sun.com)
-
Method Summary
Modifier and TypeMethodDescription<T> Tapply(XSFunction<T> function) Accepts a functor.Gets the annotation associated to this component, if any.getAnnotation(boolean createIfNotExist) Works likegetAnnotation(), but allow a new emptyXSAnnotationto be created if not exist.getForeignAttribute(String nsUri, String localName) Gets the foreign attribute of the given name, or null if not found.List<? extends ForeignAttributes>Gets the foreign attributes on this schema component.Gets the locator that indicates the source location where this component is created from, or null if no information is available.Gets a reference to theXSSchemaobject to which this component belongs.getRoot()Gets the root schema set that includes this component.Gets theSchemaDocumentthat indicates which document this component was defined in.select(String scd, NamespaceContext nsContext) Evaluates a schema component designator against this schema component and returns the resulting schema components.selectSingle(String scd, NamespaceContext nsContext) Evaluates a schema component designator against this schema component and returns the first resulting schema component.voidAccepts a visitor.
-
Method Details
-
getAnnotation
XSAnnotation getAnnotation()Gets the annotation associated to this component, if any. -
getAnnotation
Works likegetAnnotation(), but allow a new emptyXSAnnotationto be created if not exist.- Parameters:
createIfNotExist- true to create a newXSAnnotationif it doesn't exist already. false to make this method behavel likegetAnnotation().- Returns:
- null if
createIfNotExist==falseand annotation didn't exist. Otherwise non-null.
-
getForeignAttributes
List<? extends ForeignAttributes> getForeignAttributes()Gets the foreign attributes on this schema component.In general, a schema component may match multiple elements in a schema document, and those elements can individually carry foreign attributes.
This method returns a list of
ForeignAttributes, where eachForeignAttributesobject represent foreign attributes on one element.- Returns:
- can be an empty list but never be null.
-
getForeignAttribute
Gets the foreign attribute of the given name, or null if not found.If multiple occurences of the same attribute is found, this method returns the first one.
- See Also:
-
getLocator
Locator getLocator()Gets the locator that indicates the source location where this component is created from, or null if no information is available. -
getOwnerSchema
XSSchema getOwnerSchema()Gets a reference to theXSSchemaobject to which this component belongs.In case of
XSEmptycomponent, this method returns null since there is no owner component. -
getRoot
XSSchemaSet getRoot()Gets the root schema set that includes this component.In case of
XSEmptycomponent, this method returns null since there is no owner component. -
getSourceDocument
SchemaDocument getSourceDocument()Gets theSchemaDocumentthat indicates which document this component was defined in.- Returns:
- null for components that are built-in to XML Schema, such
as anyType, or "empty"
XSContentType. This method also returns null forXSSchema. For all other user-defined components this method returns non-null, even if they are local.
-
select
Evaluates a schema component designator against this schema component and returns the resulting schema components.- Parameters:
scd- Schema component designator. SeeSCDfor more details.nsContext- The namespace context in which SCD is evaluated. Cannot be null.- Returns:
- Can be empty but never null.
- Throws:
IllegalArgumentException- if SCD is syntactically incorrect.
-
selectSingle
Evaluates a schema component designator against this schema component and returns the first resulting schema component.- Parameters:
scd- Schema component designator. SeeSCDfor more details.nsContext- The namespace context in which SCD is evaluated. Cannot be null.- Returns:
- null if the SCD didn't match anything. If the SCD matched more than one node, the first one will be returned.
- Throws:
IllegalArgumentException- if SCD is syntactically incorrect.
-
visit
Accepts a visitor. -
apply
Accepts a functor.
-