-
- All Superinterfaces:
XSComponent
,XSDeclaration
- All Known Subinterfaces:
XSComplexType
,XSListSimpleType
,XSRestrictionSimpleType
,XSSimpleType
,XSUnionSimpleType
- All Known Implementing Classes:
ComplexTypeImpl
,ListSimpleTypeImpl
,RestrictionSimpleTypeImpl
,SchemaSetImpl.AnySimpleType
,SchemaSetImpl.AnyType
,SimpleTypeImpl
,UnionSimpleTypeImpl
public interface XSType extends XSDeclaration
Base interface forXSComplexType
andXSSimpleType
.- Author:
- Kohsuke Kawaguchi ([email protected])
-
-
Field Summary
Fields Modifier and Type Field Description static int
EXTENSION
static int
RESTRICTION
static int
SUBSTITUTION
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description XSComplexType
asComplexType()
Casts this object to XSComplexType if possible, otherwise returns null.XSSimpleType
asSimpleType()
Casts this object to XSSimpleType if possible, otherwise returns null.XSType
getBaseType()
Returns the base type of this type.int
getDerivationMethod()
XSType
getRedefinedBy()
If this is redefined by another type, return that component.int
getRedefinedCount()
Returns the number of complex types that redefine this component.boolean
isComplexType()
Returns true ifthis instanceof XSComplexType
.boolean
isDerivedFrom(XSType t)
Returns true if this type is derived from the specified type.boolean
isSimpleType()
Returns true ifthis instanceof XSSimpleType
.XSType[]
listSubstitutables()
Lists up types that can substitute this type by using xsi:type.-
Methods inherited from interface com.sun.xml.xsom.XSComponent
apply, getAnnotation, getAnnotation, getForeignAttribute, getForeignAttributes, getLocator, getOwnerSchema, getRoot, getSourceDocument, select, selectSingle, visit
-
Methods inherited from interface com.sun.xml.xsom.XSDeclaration
getName, getTargetNamespace, isAnonymous, isGlobal, isLocal
-
-
-
-
Field Detail
-
EXTENSION
static final int EXTENSION
- See Also:
- Constant Field Values
-
RESTRICTION
static final int RESTRICTION
- See Also:
- Constant Field Values
-
SUBSTITUTION
static final int SUBSTITUTION
- See Also:
- Constant Field Values
-
-
Method Detail
-
getBaseType
XSType getBaseType()
Returns the base type of this type. Note that if this type representsxs:anyType
, this method returns itself. This is awkward as an API, but it follows the schema specification.- Returns:
- always non-null.
-
getDerivationMethod
int getDerivationMethod()
-
isSimpleType
boolean isSimpleType()
Returns true ifthis instanceof XSSimpleType
.
-
isComplexType
boolean isComplexType()
Returns true ifthis instanceof XSComplexType
.
-
listSubstitutables
XSType[] listSubstitutables()
Lists up types that can substitute this type by using xsi:type. Includes this type itself.This method honors the block flag.
-
getRedefinedBy
XSType getRedefinedBy()
If this is redefined by another type, return that component.- Returns:
- null if this component has not been redefined.
-
getRedefinedCount
int getRedefinedCount()
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.
-
asSimpleType
XSSimpleType asSimpleType()
Casts this object to XSSimpleType if possible, otherwise returns null.
-
asComplexType
XSComplexType asComplexType()
Casts this object to XSComplexType if possible, otherwise returns null.
-
isDerivedFrom
boolean isDerivedFrom(XSType t)
Returns true if this type is derived from the specified type.Note that
t.isDerivedFrom(t)
returns true.
-
-