org.apache.xerces.impl.xs

## Class XSAttributeGroupDecl

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

- All Implemented Interfaces:
    org.apache.xerces.xs.XSAttributeGroupDefinition, org.apache.xerces.xs.XSObject

      public class XSAttributeGroupDecl
      extends java.lang.Object
      implements org.apache.xerces.xs.XSAttributeGroupDefinition

  The XML representation for an attribute group declaration schema component is a global <attributeGroup> element information item
  Version:
    $Id: XSAttributeGroupDecl.java 1166836 2011-09-08 18:21:19Z knoaman $
  Author:
    Sandy Gao, IBM, Rahul Srivastava, Sun Microsystems Inc.

  # 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`
    `XSWildcardDecl` | `fAttributeWC`
    `protected XSObjectListImpl` | `fAttrUses`
    `java.lang.String` | `fIDAttrName`
    `java.lang.String` | `fName`
    `java.lang.String` | `fTargetNamespace`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XSAttributeGroupDecl()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `addAttributeUse(XSAttributeUseImpl attrUse)`
    `java.lang.String` | `addAttributeUse(XSAttributeUseImpl attrUse, boolean allowMultipleIds)`
    `org.apache.xerces.xs.XSAnnotation` | `getAnnotation()` Optional.
    `org.apache.xerces.xs.XSObjectList` | `getAnnotations()` Optional.
    `org.apache.xerces.xs.XSAttributeUse` | `getAttributeUse(java.lang.String namespace, java.lang.String name)`
    `org.apache.xerces.xs.XSAttributeUse` | `getAttributeUseNoProhibited(java.lang.String namespace, java.lang.String name)`
    `org.apache.xerces.xs.XSObjectList` | `getAttributeUses()` {attribute uses} A set of attribute uses.
    `org.apache.xerces.xs.XSWildcard` | `getAttributeWildcard()` {attribute wildcard} Optional.
    `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.
    `short` | `getType()` Get the type of the object, i.e ELEMENT_DECLARATION.
    `void` | `removeProhibitedAttrs()`
    `void` | `replaceAttributeUse(org.apache.xerces.xs.XSAttributeUse oldUse, XSAttributeUseImpl newUse)`
    `void` | `reset()`
    `java.lang.Object[]` | `validRestrictionOf(java.lang.String typeName, XSAttributeGroupDecl baseGroup, XSConstraints xsConstraints)` Check that the attributes in this group validly restrict those from a base group.

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### fName

          public java.lang.String fName

    - #### fTargetNamespace

          public java.lang.String fTargetNamespace

    - #### fAttributeWC

          public XSWildcardDecl fAttributeWC

    - #### fIDAttrName

          public java.lang.String fIDAttrName

    - #### fAnnotations

          public org.apache.xerces.xs.XSObjectList fAnnotations

    - #### fAttrUses

          protected XSObjectListImpl fAttrUses

  - ### Constructor Detail

    - #### XSAttributeGroupDecl

          public XSAttributeGroupDecl()

  - ### Method Detail

    - #### addAttributeUse

          public java.lang.String addAttributeUse(XSAttributeUseImpl attrUse)

    - #### addAttributeUse

          public java.lang.String addAttributeUse(XSAttributeUseImpl attrUse,
                                         boolean allowMultipleIds)

    - #### replaceAttributeUse

          public void replaceAttributeUse(org.apache.xerces.xs.XSAttributeUse oldUse,
                                 XSAttributeUseImpl newUse)

    - #### getAttributeUse

          public org.apache.xerces.xs.XSAttributeUse getAttributeUse(java.lang.String namespace,
                                                            java.lang.String name)

    - #### getAttributeUseNoProhibited

          public org.apache.xerces.xs.XSAttributeUse getAttributeUseNoProhibited(java.lang.String namespace,
                                                                        java.lang.String name)

    - #### removeProhibitedAttrs

          public void removeProhibitedAttrs()

    - #### validRestrictionOf

          public java.lang.Object[] validRestrictionOf(java.lang.String typeName,
                                              XSAttributeGroupDecl baseGroup,
                                              XSConstraints xsConstraints)

      Check that the attributes in this group validly restrict those from a base group. If an error is found, an Object[] is returned. This contains the arguments for the error message describing the error. The last element in the array (at index arr.length - 1) is the the error code. Returns null if there is no error. REVISIT: is there a better way of returning the appropriate information for the error?
      Parameters:
        `typeName` - the name of the type containing this attribute group, used for error reporting purposes
        `baseGroup` - the XSAttributeGroupDecl that is the base we are checking against

    - #### reset

          public void reset()

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

    - #### getAttributeUses

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

      {attribute uses} A set of attribute uses.
      Specified by:
        `getAttributeUses` in interface `org.apache.xerces.xs.XSAttributeGroupDefinition`

    - #### getAttributeWildcard

          public org.apache.xerces.xs.XSWildcard getAttributeWildcard()

      {attribute wildcard} Optional. A wildcard.
      Specified by:
        `getAttributeWildcard` in interface `org.apache.xerces.xs.XSAttributeGroupDefinition`

    - #### getAnnotation

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

      Optional. Annotation.
      Specified by:
        `getAnnotation` in interface `org.apache.xerces.xs.XSAttributeGroupDefinition`

    - #### getAnnotations

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

      Optional. Annotations.
      Specified by:
        `getAnnotations` in interface `org.apache.xerces.xs.XSAttributeGroupDefinition`

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

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