Package com.sun.xml.xsom
Interface XSComplexType
-
- All Superinterfaces:
XSAttContainer
,XSComponent
,XSDeclaration
,XSType
- All Known Implementing Classes:
ComplexTypeImpl
public interface XSComplexType extends XSType, XSAttContainer
Complex type.- Author:
- Kohsuke Kawaguchi (kohsuke.kawaguchi@sun.com)
-
-
Field Summary
-
Fields inherited from interface com.sun.xml.xsom.XSType
EXTENSION, RESTRICTION, SUBSTITUTION
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description XSContentType
getContentType()
The content of this complex type.java.util.List<XSElementDecl>
getElementDecls()
Returns a list of element declarations of this type.XSContentType
getExplicitContent()
Gets the explicit content of a complex type with a complex content that was derived by extension.XSComplexType
getRedefinedBy()
If thisXSComplexType
is redefined by another complex type, return that component.XSElementDecl
getScope()
Gets the scope of this complex type.java.util.List<XSComplexType>
getSubtypes()
Returns a list of direct subtypes of this complex type.boolean
isAbstract()
Checks if this complex type is declared as an abstract type.boolean
isFinal(int derivationMethod)
boolean
isMixed()
boolean
isSubstitutionProhibited(int method)
Roughly corresponds to the block attribute.-
Methods inherited from interface com.sun.xml.xsom.XSAttContainer
getAttGroups, getAttributeUse, getAttributeUses, getAttributeWildcard, getDeclaredAttributeUse, getDeclaredAttributeUses, iterateAttGroups, iterateAttributeUses, iterateDeclaredAttributeUses
-
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
-
Methods inherited from interface com.sun.xml.xsom.XSType
asComplexType, asSimpleType, getBaseType, getDerivationMethod, getRedefinedCount, isComplexType, isDerivedFrom, isSimpleType, listSubstitutables
-
-
-
-
Method Detail
-
isAbstract
boolean isAbstract()
Checks if this complex type is declared as an abstract type.
-
isFinal
boolean isFinal(int derivationMethod)
-
isSubstitutionProhibited
boolean isSubstitutionProhibited(int method)
Roughly corresponds to the block attribute. But see the spec for gory detail.
-
getScope
XSElementDecl getScope()
Gets the scope of this complex type. This is not a property defined in the schema spec.- Returns:
- null if this complex type is global. Otherwise return the element declaration that contains this anonymous complex type.
-
getContentType
XSContentType getContentType()
The content of this complex type.- Returns:
- always non-null.
-
getExplicitContent
XSContentType getExplicitContent()
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 )
- 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.
-
isMixed
boolean isMixed()
-
getRedefinedBy
XSComplexType getRedefinedBy()
If thisXSComplexType
is redefined by another complex type, return that component.- Specified by:
getRedefinedBy
in interfaceXSType
- Returns:
- null if this component has not been redefined.
-
getSubtypes
java.util.List<XSComplexType> getSubtypes()
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.- Returns:
-
getElementDecls
java.util.List<XSElementDecl> getElementDecls()
Returns a list of element declarations of this type.- Returns:
-
-