org.jbind.xml.schema.element
Class ComplexDerivation

java.lang.Object
  extended byorg.jbind.xml.schema.element.Parent
      extended byorg.jbind.xml.schema.element.Element
          extended byorg.jbind.xml.schema.element.OpenAttributes
              extended byorg.jbind.xml.schema.element.Annotated
                  extended byorg.jbind.xml.schema.element.Derivation
                      extended byorg.jbind.xml.schema.element.ComplexDerivation
All Implemented Interfaces:
IAnnotated, IComplexDerivation, IDerivation, IElement, IHasBindingAttributes, IHasLocation, INode, IOpenAttributes, IParent, ISourceInfo, IXmlElement, IXmlNode
Direct Known Subclasses:
ComplexExtensionDerivation, ComplexRestrictionDerivation

public abstract class ComplexDerivation
extends Derivation
implements IComplexDerivation


Constructor Summary
ComplexDerivation(CreationParams aCreationParams)
           
 
Method Summary
 void collectRefsForCreation(IJobRefs aJobRefs)
           
 IElement doCreateChild(CreationParams aCreationParams)
          Hook method to create a child element.
 IRef getEffectiveBaseAttribute()
          Gets the effective base attribute.
 IRef getInlinedBaseAttribute()
          Gets the inlined base attribute.
 IModelGroup getModelGroup()
          Gets the model group.
 IModelGroupRef getModelGroupRef()
           
 ISimpleTypeDef getSimpleTypeDef()
          Gets the simple type definition.
 void validateElement(IElemValHelper aHelper, IConstraintViolations aViolations)
           
 
Methods inherited from class org.jbind.xml.schema.element.Derivation
doCreateAttribute, getAttributeInfos, getBaseAttribute, setBaseAttribute
 
Methods inherited from class org.jbind.xml.schema.element.Annotated
getAnnotation, getAnnotationElement, getId, iterAppInfos
 
Methods inherited from class org.jbind.xml.schema.element.OpenAttributes
getAttributeString
 
Methods inherited from class org.jbind.xml.schema.element.Element
acceptAppInfoVisitor, addAttribute, createChild, createGlobalRef, getAttributes, getBindingAttribute, getBoolean, getChildByClass, getDefaultedLocalBindingAttribute, getDefaultedLocalStringBindingAttribute, getLocalBindingAttribute, getLocalName, getLocalStringBindingAttribute, getLocation, getNamespace, getNamespaceUri, getParent_, getParentHelper, getPrefix, getPrefixToNamespaceMapping, getQName, getSchema, getSchemaDocument, getSchemaElement, getStringBindingAttribute, getSubElement, getTargetNamespace, isTopLevelComponent, iterChildrenByClass, setLocation, setParent_, toString
 
Methods inherited from class org.jbind.xml.schema.element.Parent
addChild, hasChildren, iterChildren, iterXmlNodes, visitChildren
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.jbind.xml.schema.element.IDerivation
getAttributeInfos, getBaseAttribute, getIsExtension, setBaseAttribute
 
Methods inherited from interface org.jbind.xml.schema.element.IAnnotated
getAnnotationElement, getId
 
Methods inherited from interface org.jbind.xml.schema.element.IOpenAttributes
getAttributeString
 
Methods inherited from interface org.jbind.xml.schema.element.IElement
addAttribute, createChild, getQName, getSchema, getSchemaDocument, getSubElement, isTopLevelComponent, iterChildrenByClass
 
Methods inherited from interface org.jbind.xml.schema.element.IParent
addChild, hasChildren, iterChildren
 
Methods inherited from interface org.jbind.xml.schema.element.INode
getParent_, setLocation, setParent_
 
Methods inherited from interface org.jbind.xml.base.IHasLocation
getLocation
 
Methods inherited from interface org.jbind.xml.core.cmp.IXmlNode
acceptAppInfoVisitor
 
Methods inherited from interface org.jbind.xml.base.IHasBindingAttributes
getBindingAttribute, getDefaultedLocalBindingAttribute, getDefaultedLocalStringBindingAttribute, getLocalBindingAttribute, getLocalStringBindingAttribute, getStringBindingAttribute
 
Methods inherited from interface org.jbind.xml.core.cmp.ISourceInfo
getAnnotation, getPrefixToNamespaceMapping
 
Methods inherited from interface org.jbind.xml.core.cmp.IXmlElement
getAttributes, iterXmlNodes
 

Constructor Detail

ComplexDerivation

public ComplexDerivation(CreationParams aCreationParams)
Method Detail

doCreateChild

public IElement doCreateChild(CreationParams aCreationParams)
                       throws XmlException
Description copied from class: Element
Hook method to create a child element.

Overrides:
doCreateChild in class Derivation
Throws:
XmlException

getModelGroup

public IModelGroup getModelGroup()
Description copied from interface: IDerivation
Gets the model group.

Specified by:
getModelGroup in interface IDerivation
Returns:
Returns the model group iff this is a complex content model or null otherwise. (optional)

getModelGroupRef

public IModelGroupRef getModelGroupRef()
Specified by:
getModelGroupRef in interface IDerivation

getSimpleTypeDef

public ISimpleTypeDef getSimpleTypeDef()
Description copied from interface: IDerivation
Gets the simple type definition.

Specified by:
getSimpleTypeDef in interface IDerivation
Returns:
(optional). Returns the inlined simple type definition of a restriction.

getInlinedBaseAttribute

public IRef getInlinedBaseAttribute()
Description copied from interface: IDerivation
Gets the inlined base attribute. In case of simple type restrictions (either as a simple type derivation or as a complex type derivation with simple content) there may be an inlined simple type. The type referenced by the inlined base attribute must be a subtype of the type referenced by the base attribute.

Specified by:
getInlinedBaseAttribute in interface IDerivation
Returns:
(optional).

getEffectiveBaseAttribute

public IRef getEffectiveBaseAttribute()
Description copied from interface: IDerivation
Gets the effective base attribute. If there is a base attribute and an inlined base attribute then the inlined base attribute is returned.

Specified by:
getEffectiveBaseAttribute in interface IDerivation
Returns:
(required).

validateElement

public void validateElement(IElemValHelper aHelper,
                            IConstraintViolations aViolations)
Specified by:
validateElement in interface IElement
Overrides:
validateElement in class Derivation

collectRefsForCreation

public void collectRefsForCreation(IJobRefs aJobRefs)
Specified by:
collectRefsForCreation in interface IDerivation