org.apache.ws.jaxme.xs.impl

Class XSElementImpl

Implemented Interfaces:
XSElement, XSObject, XSOpenAttrs
Known Direct Subclasses:
JAXBElementImpl

public class XSElementImpl
extends XSOpenAttrsImpl
implements XSElement

Author:
Jochen Wiedmann

Constructor Summary

XSElementImpl(XSObject pParent, XsTElement pBaseElement)

Method Summary

XSAnnotation[]
getAnnotations()
Returns the array of annotations.
String
getDefault()
Returns the elements "default" value or null, if no such attribute is set.
String
getFixed()
Returns the elements "fixed" value or null, if no such attribute is set.
XSIdentityConstraint[]
getIdentityConstraints()
Fetch all of the identity constraints that this element places upon its child tags.
XSKeyRef[]
getKeyRefs()
Fetch all of the keyref's declared by this element.
XsQName
getName()
Returns the elements name.
XSGroup
getSubstitutionGroup()
If the element may be substituted by other elements (in other words: if it is the head of a substitution group), returns the choice group of all the elements that may be used to replace the element.
XsQName
getSubstitutionGroupName()
Returns the name of an element, which may be substituted by this element.
XSType
getType()
Returns the elements type.
protected XsTElement
getXsTElement()
boolean
isAbstract()
Returns whether the element is abstract or not.
boolean
isBlockedForSubstitution()
Returns whether this element is blocked for substitution.
boolean
isGlobal()
Returns whether the element is global or not.
protected boolean
isInnerComplexType()
protected boolean
isInnerSimpleType()
boolean
isNillable()
Returns whether the element is nillable or not.
boolean
isReference()
Returns, whether the element is created by referencing another element.
protected boolean
isValidated()
void
setSubstitutionGroup(XSGroup pGroup)
If the element may be substituted by other elements (in other words: if it is the head of a substitution group), sets the choice group of all the elements that may be used to replace the element.
void
validate()

Methods inherited from class org.apache.ws.jaxme.xs.impl.XSOpenAttrsImpl

getOpenAttributes

Methods inherited from class org.apache.ws.jaxme.xs.impl.XSObjectImpl

getLocator, getParentObject, getXSSchema, getXsObject, isTopLevelObject, validate, validateAllIn

Constructor Details

XSElementImpl

protected XSElementImpl(XSObject pParent,
                        XsTElement pBaseElement)
            throws SAXException

Method Details

getAnnotations

public XSAnnotation[] getAnnotations()
Returns the array of annotations.
Specified by:
getAnnotations in interface XSElement

getDefault

public String getDefault()
Returns the elements "default" value or null, if no such attribute is set.
Specified by:
getDefault in interface XSElement

getFixed

public String getFixed()
Returns the elements "fixed" value or null, if no such attribute is set.
Specified by:
getFixed in interface XSElement

getIdentityConstraints

public XSIdentityConstraint[] getIdentityConstraints()
Fetch all of the identity constraints that this element places upon its child tags. Note that a single xs:unique or xs:key tag may expand to several elements in this array depending on their xpath fields.
Specified by:
getIdentityConstraints in interface XSElement

getKeyRefs

public XSKeyRef[] getKeyRefs()
Fetch all of the keyref's declared by this element.
Specified by:
getKeyRefs in interface XSElement

getName

public XsQName getName()
Returns the elements name. Note that, unlike types, an element always has a name.
Specified by:
getName in interface XSElement

getSubstitutionGroup

public XSGroup getSubstitutionGroup()
If the element may be substituted by other elements (in other words: if it is the head of a substitution group), returns the choice group of all the elements that may be used to replace the element. The element itself is part of the substitution group if, and only if, the element is not abstract.
Specified by:
getSubstitutionGroup in interface XSElement

getSubstitutionGroupName

public XsQName getSubstitutionGroupName()
Returns the name of an element, which may be substituted by this element.
Specified by:
getSubstitutionGroupName in interface XSElement

getType

public XSType getType()
Returns the elements type.
Specified by:
getType in interface XSElement

getXsTElement

protected XsTElement getXsTElement()

isAbstract

public boolean isAbstract()
Returns whether the element is abstract or not.
Specified by:
isAbstract in interface XSElement

isBlockedForSubstitution

public boolean isBlockedForSubstitution()
Returns whether this element is blocked for substitution.
Specified by:
isBlockedForSubstitution in interface XSElement

isGlobal

public boolean isGlobal()
Returns whether the element is global or not.
Specified by:
isGlobal in interface XSElement

isInnerComplexType

protected boolean isInnerComplexType()

isInnerSimpleType

protected boolean isInnerSimpleType()

isNillable

public boolean isNillable()
Returns whether the element is nillable or not.
Specified by:
isNillable in interface XSElement

isReference

public boolean isReference()
Returns, whether the element is created by referencing another element.
Specified by:
isReference in interface XSElement

isValidated

protected boolean isValidated()

setSubstitutionGroup

public void setSubstitutionGroup(XSGroup pGroup)
If the element may be substituted by other elements (in other words: if it is the head of a substitution group), sets the choice group of all the elements that may be used to replace the element. The element itself is part of the substitution group if, and only if, the element is not abstract.
Specified by:
setSubstitutionGroup in interface XSElement

validate

public void validate()
            throws SAXException
Specified by:
validate in interface XSObject
Overrides:
validate in interface XSObjectImpl