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 1024040 2010-10-18 22:08:41Z 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
    Modifier and Type | Field and Description
    --- | ---
    `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

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addAnnotation(org.apache.xerces.xs.XSAnnotation annotation)`
    `void` | `addIDConstraint(IdentityConstraint idc)`
    `void` | `addTypeAlternative(XSTypeAlternativeImpl typeAlternative)`
    `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})
    `XSTypeAlternativeImpl` | `getDefaultTypeDefinition()`
    `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.
    `org.apache.xerces.xs.XSObject` | `getParent()` Locally scoped declarations are available for use only within the complex type definition or model group definition identified by the `scope` property.
    `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.
    `XSTypeAlternativeImpl[]` | `getTypeAlternatives()`
    `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.
    `boolean` | `isTypeTableOK()` Checks whether there is a possibility that the type table is complete.
    `void` | `reset()` Reset current element declaration
    `void` | `setConstraintType(short constraintType)`
    `void` | `setDefaultTypeDefinition()`
    `void` | `setIsAbstract()`
    `void` | `setIsGlobal()`
    `void` | `setIsLocal(org.apache.xerces.xs.XSObject enclosingParent)`
    `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(org.apache.xerces.xs.XSObject enclosingParent)

    - #### addIDConstraint

          public void addIDConstraint(IdentityConstraint idc)

    - #### getIDConstraints

          public IdentityConstraint[] getIDConstraints()

    - #### isTypeTableOK

          public boolean isTypeTableOK()

      Checks whether there is a possibility that the type table is complete. (ie the last alternative element in the table has no test attribute)

    - #### addTypeAlternative

          public void addTypeAlternative(XSTypeAlternativeImpl typeAlternative)

    - #### getTypeAlternatives

          public XSTypeAlternativeImpl[] getTypeAlternatives()

    - #### getDefaultTypeDefinition

          public XSTypeAlternativeImpl getDefaultTypeDefinition()

    - #### setDefaultTypeDefinition

          public void setDefaultTypeDefinition()

    - #### 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`

    - #### getParent

          public org.apache.xerces.xs.XSObject getParent()

      Locally scoped declarations are available for use only within the complex type definition or model group definition identified by the `scope` property.
      Specified by:
        `getParent` 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`

    - #### addAnnotation

          public void addAnnotation(org.apache.xerces.xs.XSAnnotation annotation)

    - #### 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`

Copyright © 1999-2022 The Apache Software Foundation. All Rights Reserved.