org.eclipse.xsd
Interface XSDTypeDefinition

All Superinterfaces:
EObject, Notifier, XSDComponent, XSDConcreteComponent, XSDNamedComponent, XSDRedefinableComponent, XSDRedefineContent, XSDSchemaContent
All Known Subinterfaces:
XSDComplexTypeDefinition, XSDSimpleTypeDefinition
All Known Implementing Classes:
XSDComplexTypeDefinitionImpl, XSDSimpleTypeDefinitionImpl, XSDTypeDefinitionImpl

public interface XSDTypeDefinition
extends XSDRedefinableComponent, XSDRedefineContent

A representation of the model object 'Type Definition'. It is used to represent aspects common to 'Simple Type Definitions' and 'Complex Type Definitions'.

The following features are supported:

See Also:
XSDPackage.getXSDTypeDefinition()

Method Summary
 XSDAnnotation getAnnotation()
          Returns the value of the 'Annotation' containment reference
 EList<XSDAnnotation> getAnnotations()
          Returns the value of the 'Annotations' reference list.
 XSDTypeDefinition getBadTypeDerivation(XSDTypeDefinition xsdTypeDefinition, boolean extension, boolean restriction)
          Returns the first type between this and the given one, that derives from it's base in a way not permitted as constrained by Type Derivation OK Complex and Simple.
 XSDTypeDefinition getBaseType()
          Returns the value of the 'Base Type' reference
 XSDParticle getComplexType()
          Returns the value of the 'Complex Type' reference
 XSDAnnotation getDerivationAnnotation()
          Returns the value of the 'Derivation Annotation' containment reference
 XSDTypeDefinition getRootType()
          Returns the value of the 'Root Type' reference
 XSDSimpleTypeDefinition getSimpleType()
          Returns the value of the 'Simple Type' reference
 void setAnnotation(XSDAnnotation value)
          Sets the value of the 'Annotation' containment reference
 void setDerivationAnnotation(XSDAnnotation value)
          Sets the value of the 'Derivation Annotation' containment reference
 
Methods inherited from interface org.eclipse.xsd.XSDRedefinableComponent
isCircular
 
Methods inherited from interface org.eclipse.xsd.XSDNamedComponent
getAliasName, getAliasURI, getName, getQName, getQName, getTargetNamespace, getURI, hasNameAndTargetNamespace, hasSameNameAndTargetNamespace, hasURI, setName, setTargetNamespace
 
Methods inherited from interface org.eclipse.xsd.XSDConcreteComponent
clearDiagnostics, cloneConcreteComponent, contains, elementAttributesChanged, elementChanged, elementContentsChanged, getComponentsWithApplicationInformation, getComponentsWithUserInformation, getContainer, getDiagnostics, getElement, getRootContainer, getSchema, resolveAttributeDeclaration, resolveAttributeDeclaration, resolveAttributeDeclarationURI, resolveAttributeGroupDefinition, resolveAttributeGroupDefinition, resolveAttributeGroupDefinitionURI, resolveComplexTypeDefinition, resolveComplexTypeDefinition, resolveComplexTypeDefinitionURI, resolveElementDeclaration, resolveElementDeclaration, resolveElementDeclarationURI, resolveIdentityConstraintDefinition, resolveIdentityConstraintDefinition, resolveIdentityConstraintDefinitionURI, resolveModelGroupDefinition, resolveModelGroupDefinition, resolveModelGroupDefinitionURI, resolveNotationDeclaration, resolveNotationDeclaration, resolveNotationDeclarationURI, resolveSimpleTypeDefinition, resolveSimpleTypeDefinition, resolveSimpleTypeDefinitionURI, resolveTypeDefinition, resolveTypeDefinition, resolveTypeDefinitionURI, setElement, updateElement, updateElement, validate
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.xsd.XSDConcreteComponent
clearDiagnostics, cloneConcreteComponent, contains, elementAttributesChanged, elementChanged, elementContentsChanged, getComponentsWithApplicationInformation, getComponentsWithUserInformation, getContainer, getDiagnostics, getElement, getRootContainer, getSchema, resolveAttributeDeclaration, resolveAttributeDeclaration, resolveAttributeDeclarationURI, resolveAttributeGroupDefinition, resolveAttributeGroupDefinition, resolveAttributeGroupDefinitionURI, resolveComplexTypeDefinition, resolveComplexTypeDefinition, resolveComplexTypeDefinitionURI, resolveElementDeclaration, resolveElementDeclaration, resolveElementDeclarationURI, resolveIdentityConstraintDefinition, resolveIdentityConstraintDefinition, resolveIdentityConstraintDefinitionURI, resolveModelGroupDefinition, resolveModelGroupDefinition, resolveModelGroupDefinitionURI, resolveNotationDeclaration, resolveNotationDeclaration, resolveNotationDeclarationURI, resolveSimpleTypeDefinition, resolveSimpleTypeDefinition, resolveSimpleTypeDefinitionURI, resolveTypeDefinition, resolveTypeDefinition, resolveTypeDefinitionURI, setElement, updateElement, updateElement, validate
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 

Method Detail

getAnnotation

XSDAnnotation getAnnotation()
Returns the value of the 'Annotation' containment reference.

This concrete reference represents the direct annotation content of a complexType element or a simpleType element.

Returns:
the value of the 'Annotation' containment reference.
See Also:
setAnnotation(XSDAnnotation), XSDPackage.getXSDTypeDefinition_Annotation()

setAnnotation

void setAnnotation(XSDAnnotation value)
Sets the value of the 'Annotation' containment reference.

Parameters:
value - the new value of the 'Annotation' containment reference.
See Also:
getAnnotation()

getDerivationAnnotation

XSDAnnotation getDerivationAnnotation()
Returns the value of the 'Derivation Annotation' containment reference.

This concrete reference represents the direct annotation content of a complex content extension, complex content restriction, simple content extension, simple content restriction, simple type restriction, simple type list, or simple type union element.

Returns:
the value of the 'Derivation Annotation' containment reference.
See Also:
setDerivationAnnotation(XSDAnnotation), XSDPackage.getXSDTypeDefinition_DerivationAnnotation()

setDerivationAnnotation

void setDerivationAnnotation(XSDAnnotation value)
Sets the value of the 'Derivation Annotation' containment reference.

Parameters:
value - the new value of the 'Derivation Annotation' containment reference.
See Also:
getDerivationAnnotation()

getAnnotations

EList<XSDAnnotation> getAnnotations()
Returns the value of the 'Annotations' reference list. The list contents are of type XSDAnnotation.

This represents the complex type definition annotation or simple type definition annotation infoset property. It is computed from the annotation, content annotation, derivationAnnotation and should typically not be modified directly.

Returns:
the value of the 'Annotations' reference list.
See Also:
XSDPackage.getXSDTypeDefinition_Annotations()

getRootType

XSDTypeDefinition getRootType()
Returns the value of the 'Root Type' reference.

This walks the base types until it hits that one that has the ur-type definition as it's base type.

Returns:
the value of the 'Root Type' reference.
See Also:
XSDPackage.getXSDTypeDefinition_RootType()

getBaseType

XSDTypeDefinition getBaseType()
Returns the value of the 'Base Type' reference.

This represents the same result as either the simple 'Base Type Definition' reference or the complex 'Base Type Definition' reference.

Returns:
the value of the 'Base Type' reference.
See Also:
XSDPackage.getXSDTypeDefinition_BaseType()

getSimpleType

XSDSimpleTypeDefinition getSimpleType()
Returns the value of the 'Simple Type' reference.

This represents either the 'Simple Type Definition' itself or the complex 'Content Type' reference, if it is simple.

Returns:
the value of the 'Simple Type' reference.
See Also:
XSDPackage.getXSDTypeDefinition_SimpleType()

getComplexType

XSDParticle getComplexType()
Returns the value of the 'Complex Type' reference.

This represents the complex 'Content Type' reference, if it is complex, i.e., if it is a 'Particle'.

Returns:
the value of the 'Complex Type' reference.
See Also:
XSDPackage.getXSDTypeDefinition_ComplexType()

getBadTypeDerivation

XSDTypeDefinition getBadTypeDerivation(XSDTypeDefinition xsdTypeDefinition,
                                       boolean extension,
                                       boolean restriction)
Returns the first type between this and the given one, that derives from it's base in a way not permitted as constrained by Type Derivation OK Complex and Simple. The result is null if the derivation is valid; the result is the UR-type, if this type is not related to the given type; otherwise, the result is the base with the blocked derivation method.

Returns:
the first type between this and the given one, that derives from it's base in a way not permitted.

Copyright 2001-2006 IBM Corporation and others.
All Rights Reserved.