org.apache.xerces.impl.xs

## Class XSElementDecl

- java.lang.Object
- - org.apache.xerces.impl.xs.XSElementDecl

All Implemented Interfaces:
  org.apache.xerces.xs.XSElementDeclaration, org.apache.xerces.xs.XSObject, org.apache.xerces.xs.XSTerm

    public class XSElementDecl
    extends java.lang.Object
    implements org.apache.xerces.xs.XSElementDeclaration

The XML representation for an element declaration schema component is an <element> element information item

Version:
  $Id: XSElementDecl.java 1024038 2010-10-18 22:06:35Z sandygao $
Author:
  Elena Litani, IBM, Sandy Gao, IBM

# INTERNAL:

  Usage of this class is not supported. It may be altered or removed at any time.

### Field Summary

Fields
`org.apache.xerces.xs.XSObjectList` `fAnnotations`
`short` `fBlock`
`ValidatedInfo` `fDefault`
`short` `fFinal`
`java.lang.String` `fName`
`short` `fScope`
`XSElementDecl` `fSubGroup`
`java.lang.String` `fTargetNamespace`
`org.apache.xerces.xs.XSTypeDefinition` `fType`
`org.apache.xerces.xni.QName` `fUnresolvedTypeName`
`static short` `SCOPE_ABSENT`
`static short` `SCOPE_GLOBAL`
`static short` `SCOPE_LOCAL`

### Constructor Summary

Constructors
Constructor and Description
`XSElementDecl()`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addIDConstraint(IdentityConstraint idc)`
`boolean` `equals(java.lang.Object o)` whether two decls are the same
`boolean` `getAbstract()` {abstract} A boolean.
`java.lang.Object` `getActualVC()` Value Constraint: Binding specific actual constraint value or `null` if the value is in error or there is no value constraint.
`short` `getActualVCType()` The actual constraint value built-in datatype, e.g.
`org.apache.xerces.xs.XSAnnotation` `getAnnotation()` Optional.
`org.apache.xerces.xs.XSObjectList` `getAnnotations()` Optional.
`short` `getConstraintType()` A value constraint: one of default, fixed.
`java.lang.String` `getConstraintValue()` A value constraint: The actual value (with respect to the {type definition})
`short` `getDisallowedSubstitutions()` The supplied values for {disallowed substitutions}
`org.apache.xerces.xs.XSComplexTypeDefinition` `getEnclosingCTDefinition()` Locally scoped declarations are available for use only within the complex type definition identified by the `scope` property.
`IdentityConstraint[]` `getIDConstraints()`
`org.apache.xerces.xs.XSNamedMap` `getIdentityConstraints()` {identity-constraint definitions} A set of constraint definitions.
`org.apache.xerces.xs.ShortList` `getItemValueTypes()` In the case the actual constraint value represents a list, i.e.
`java.lang.String` `getName()` The `name` of this `XSObject` depending on the `XSObject` type.
`java.lang.String` `getNamespace()` The namespace URI of this node, or `null` if it is unspecified.
`org.apache.xerces.xs.XSNamespaceItem` `getNamespaceItem()` A namespace schema information item corresponding to the target namespace of the component, if it is globally declared; or `null` otherwise.
`boolean` `getNillable()` If {nillable} is true, then an element may also be valid if it carries the namespace qualified attribute with [local name] nil from namespace http://www.w3.org/2001/XMLSchema-instance and value true (see xsi:nil (2.6.2)) even if it has no text or element content despite a {content type} which would otherwise require content.
`short` `getScope()` Optional.
`org.apache.xerces.xs.XSElementDeclaration` `getSubstitutionGroupAffiliation()` {substitution group affiliation} Optional.
`short` `getSubstitutionGroupExclusions()` Specifies if this declaration can be nominated as the {substitution group affiliation} of other element declarations having the same {type definition} or types derived therefrom.
`short` `getType()` Get the type of the object, i.e ELEMENT_DECLARATION.
`org.apache.xerces.xs.XSTypeDefinition` `getTypeDefinition()` Either a simple type definition or a complex type definition.
`org.apache.xerces.xs.XSValue` `getValueConstraintValue()` The actual value of the default or fixed value constraint.
`int` `hashCode()` get the hash code
`boolean` `isDisallowedSubstitution(short disallowed)` Convenience method.
`boolean` `isSubstitutionGroupExclusion(short exclusion)` Convenience method.
`void` `reset()` Reset current element declaration
`void` `setConstraintType(short constraintType)`
`void` `setIsAbstract()`
`void` `setIsGlobal()`
`void` `setIsLocal(XSComplexTypeDecl enclosingCT)`
`void` `setIsNillable()`
`java.lang.String` `toString()`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### SCOPE_ABSENT

    public static final short SCOPE_ABSENT

See Also:
  Constant Field Values

#### SCOPE_GLOBAL

    public static final short SCOPE_GLOBAL

See Also:
  Constant Field Values

#### SCOPE_LOCAL

    public static final short SCOPE_LOCAL

See Also:
  Constant Field Values

#### fName

    public java.lang.String fName

#### fTargetNamespace

    public java.lang.String fTargetNamespace

#### fType

    public org.apache.xerces.xs.XSTypeDefinition fType

#### fUnresolvedTypeName

    public org.apache.xerces.xni.QName fUnresolvedTypeName

#### fScope

    public short fScope

#### fBlock

    public short fBlock

#### fFinal

    public short fFinal

#### fAnnotations

    public org.apache.xerces.xs.XSObjectList fAnnotations

#### fDefault

    public ValidatedInfo fDefault

#### fSubGroup

    public XSElementDecl fSubGroup

### Constructor Detail

#### XSElementDecl

    public XSElementDecl()

### Method Detail

#### setConstraintType

    public void setConstraintType(short constraintType)

#### setIsNillable

    public void setIsNillable()

#### setIsAbstract

    public void setIsAbstract()

#### setIsGlobal

    public void setIsGlobal()

#### setIsLocal

    public void setIsLocal(XSComplexTypeDecl enclosingCT)

#### addIDConstraint

    public void addIDConstraint(IdentityConstraint idc)

#### getIDConstraints

    public IdentityConstraint[] getIDConstraints()

#### toString

    public java.lang.String toString()

Overrides:
  `toString` in class `java.lang.Object`

#### hashCode

    public int hashCode()

get the hash code

Overrides:
  `hashCode` in class `java.lang.Object`

#### equals

    public boolean equals(java.lang.Object o)

whether two decls are the same

Overrides:
  `equals` in class `java.lang.Object`

#### reset

    public void reset()

Reset current element declaration

#### getType

    public short getType()

Get the type of the object, i.e ELEMENT_DECLARATION.

Specified by:
  `getType` in interface `org.apache.xerces.xs.XSObject`

#### getName

    public java.lang.String getName()

The `name` of this `XSObject` depending on the `XSObject` type.

Specified by:
  `getName` in interface `org.apache.xerces.xs.XSObject`

#### getNamespace

    public java.lang.String getNamespace()

The namespace URI of this node, or `null` if it is unspecified. defines how a namespace URI is attached to schema components.

Specified by:
  `getNamespace` in interface `org.apache.xerces.xs.XSObject`

#### getTypeDefinition

    public org.apache.xerces.xs.XSTypeDefinition getTypeDefinition()

Either a simple type definition or a complex type definition.

Specified by:
  `getTypeDefinition` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getScope

    public short getScope()

Optional. Either global or a complex type definition ( `ctDefinition`). This property is absent in the case of declarations within named model groups: their scope will be determined when they are used in the construction of complex type definitions.

Specified by:
  `getScope` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getEnclosingCTDefinition

    public org.apache.xerces.xs.XSComplexTypeDefinition getEnclosingCTDefinition()

Locally scoped declarations are available for use only within the complex type definition identified by the `scope` property.

Specified by:
  `getEnclosingCTDefinition` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getConstraintType

    public short getConstraintType()

A value constraint: one of default, fixed.

Specified by:
  `getConstraintType` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getConstraintValue

    public java.lang.String getConstraintValue()

A value constraint: The actual value (with respect to the {type definition})

Specified by:
  `getConstraintValue` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getNillable

    public boolean getNillable()

If {nillable} is true, then an element may also be valid if it carries the namespace qualified attribute with [local name] nil from namespace http://www.w3.org/2001/XMLSchema-instance and value true (see xsi:nil (2.6.2)) even if it has no text or element content despite a {content type} which would otherwise require content.

Specified by:
  `getNillable` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getIdentityConstraints

    public org.apache.xerces.xs.XSNamedMap getIdentityConstraints()

{identity-constraint definitions} A set of constraint definitions.

Specified by:
  `getIdentityConstraints` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getSubstitutionGroupAffiliation

    public org.apache.xerces.xs.XSElementDeclaration getSubstitutionGroupAffiliation()

{substitution group affiliation} Optional. A top-level element definition.

Specified by:
  `getSubstitutionGroupAffiliation` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### isSubstitutionGroupExclusion

    public boolean isSubstitutionGroupExclusion(short exclusion)

Convenience method. Check if `exclusion` is a substitution group exclusion for this element declaration.

Specified by:
  `isSubstitutionGroupExclusion` in interface `org.apache.xerces.xs.XSElementDeclaration`
Parameters:
  `exclusion` - Extension, restriction or none. Represents final set for the element.
Returns:
  True if `exclusion` is a part of the substitution group exclusion subset.

#### getSubstitutionGroupExclusions

    public short getSubstitutionGroupExclusions()

Specifies if this declaration can be nominated as the {substitution group affiliation} of other element declarations having the same {type definition} or types derived therefrom.

Specified by:
  `getSubstitutionGroupExclusions` in interface `org.apache.xerces.xs.XSElementDeclaration`
Returns:
  A bit flag representing {extension, restriction} or NONE.

#### isDisallowedSubstitution

    public boolean isDisallowedSubstitution(short disallowed)

Convenience method. Check if `disallowed` is a disallowed substitution for this element declaration.

Specified by:
  `isDisallowedSubstitution` in interface `org.apache.xerces.xs.XSElementDeclaration`
Parameters:
  `disallowed` - Substitution, extension, restriction or none. Represents a block set for the element.
Returns:
  True if `disallowed` is a part of the substitution group exclusion subset.

#### getDisallowedSubstitutions

    public short getDisallowedSubstitutions()

The supplied values for {disallowed substitutions}

Specified by:
  `getDisallowedSubstitutions` in interface `org.apache.xerces.xs.XSElementDeclaration`
Returns:
  A bit flag representing {substitution, extension, restriction} or NONE.

#### getAbstract

    public boolean getAbstract()

{abstract} A boolean.

Specified by:
  `getAbstract` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getAnnotation

    public org.apache.xerces.xs.XSAnnotation getAnnotation()

Optional. Annotation.

Specified by:
  `getAnnotation` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getAnnotations

    public org.apache.xerces.xs.XSObjectList getAnnotations()

Optional. Annotations.

Specified by:
  `getAnnotations` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getNamespaceItem

    public org.apache.xerces.xs.XSNamespaceItem getNamespaceItem()

Description copied from interface: `org.apache.xerces.xs.XSObject`
A namespace schema information item corresponding to the target namespace of the component, if it is globally declared; or `null` otherwise.

Specified by:
  `getNamespaceItem` in interface `org.apache.xerces.xs.XSObject`
See Also:
  `XSObject.getNamespaceItem()`

#### getActualVC

    public java.lang.Object getActualVC()

Description copied from interface: `org.apache.xerces.xs.XSElementDeclaration`
Value Constraint: Binding specific actual constraint value or `null` if the value is in error or there is no value constraint.

Specified by:
  `getActualVC` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getActualVCType

    public short getActualVCType()

Description copied from interface: `org.apache.xerces.xs.XSElementDeclaration`
The actual constraint value built-in datatype, e.g. `STRING_DT, SHORT_DT`. If the type definition of this value is a list type definition, this method returns `LIST_DT`. If the type definition of this value is a list type definition whose item type is a union type definition, this method returns `LISTOFUNION_DT`. To query the actual constraint value of the list or list of union type definitions use `itemValueTypes`. If the `actualNormalizedValue` is `null`, this method returns `UNAVAILABLE_DT`.

Specified by:
  `getActualVCType` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getItemValueTypes

    public org.apache.xerces.xs.ShortList getItemValueTypes()

Description copied from interface: `org.apache.xerces.xs.XSElementDeclaration`
In the case the actual constraint value represents a list, i.e. the `actualValueType` is `LIST_DT`, the returned array consists of one type kind which represents the itemType. If the actual constraint value represents a list type definition whose item type is a union type definition, i.e. `LISTOFUNION_DT`, for each actual constraint value in the list the array contains the corresponding memberType kind. For examples, see `ItemPSVI.itemValueTypes`.

Specified by:
  `getItemValueTypes` in interface `org.apache.xerces.xs.XSElementDeclaration`

#### getValueConstraintValue

    public org.apache.xerces.xs.XSValue getValueConstraintValue()

Description copied from interface: `org.apache.xerces.xs.XSElementDeclaration`
The actual value of the default or fixed value constraint.

Specified by:
  `getValueConstraintValue` in interface `org.apache.xerces.xs.XSElementDeclaration`