org.apache.xerces.impl.xs

## Class ElementPSVImpl

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

- All Implemented Interfaces:
    org.apache.xerces.xs.ElementPSVI, org.apache.xerces.xs.ItemPSVI

      public class ElementPSVImpl
      extends java.lang.Object
      implements org.apache.xerces.xs.ElementPSVI

  Element PSV infoset augmentations implementation. The following information will be available at the startElement call: name, namespace, type, notation, validation context The following information will be available at the endElement call: nil, specified, normalized value, member type, validity, error codes, default
  Version:
    $Id: ElementPSVImpl.java 1128992 2011-05-30 04:47:00Z mukulg $
  Author:
    Elena Litani 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
    --- | ---
    `protected org.apache.xerces.xs.XSElementDeclaration` | `fDeclaration` element declaration
    `protected java.lang.String[]` | `fErrors` error codes and error messages
    `protected org.apache.xerces.xs.datatypes.ObjectList` | `fFailedAssertions` failed assertions
    `protected SchemaGrammar[]` | `fGrammars` deferred XSModel
    `protected org.apache.xerces.xs.datatypes.ObjectList` | `fInheritedAttributes` inherited attributes
    `protected boolean` | `fIsConstant` true if this object is immutable
    `protected boolean` | `fNil` true if clause 3.2 of Element Locally Valid (Element) (3.3.4) is satisfied, otherwise false
    `protected org.apache.xerces.xs.XSNotationDeclaration` | `fNotation` http://www.w3.org/TR/xmlschema-1/#e-notation
    `protected org.apache.xerces.xs.XSModel` | `fSchemaInformation` the schema information property
    `protected boolean` | `fSpecified` true if the element value was provided by the schema; false otherwise.
    `protected org.apache.xerces.xs.XSTypeAlternative` | `fTypeAlternative` type alternative
    `protected org.apache.xerces.xs.XSTypeDefinition` | `fTypeDecl` type of element, could be xsi:type
    `protected short` | `fValidationAttempted` validation attempted: none, partial, full
    `protected java.lang.String` | `fValidationContext` validation context: could be QName or XPath expression
    `protected short` | `fValidity` validity: valid, invalid, unknown
    `protected ValidatedInfo` | `fValue` Schema value

    - ### Fields inherited from interface org.apache.xerces.xs.ItemPSVI

      `VALIDATION_FULL, VALIDATION_NONE, VALIDATION_PARTIAL, VALIDITY_INVALID, VALIDITY_NOTKNOWN, VALIDITY_VALID`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ElementPSVImpl()`
    `ElementPSVImpl(boolean isConstant, org.apache.xerces.xs.ElementPSVI elementPSVI)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `org.apache.xerces.xs.ItemPSVI` | `constant()` Returns a reference to an immutable instance with the same data that this instance of `ItemPSVI` currently has.
    `void` | `copySchemaInformationTo(ElementPSVImpl target)`
    `java.lang.Object` | `getActualNormalizedValue()` `[schema normalized value]`: Binding specific actual value or `null` if the value is in error.
    `short` | `getActualNormalizedValueType()` The actual value built-in datatype, e.g.
    `org.apache.xerces.xs.XSElementDeclaration` | `getElementDeclaration()` An item isomorphic to the element declaration used to validate this element.
    `org.apache.xerces.xs.StringList` | `getErrorCodes()` A list of error codes generated from validation attempts.
    `org.apache.xerces.xs.StringList` | `getErrorMessages()` A list of error messages generated from the validation attempt or an empty `StringList` if no errors occurred during the validation attempt.
    `org.apache.xerces.xs.datatypes.ObjectList` | `getFailedAssertions()` Failed assertions.
    `org.apache.xerces.xs.datatypes.ObjectList` | `getInheritedAttributes()` Inherited attributes.
    `boolean` | `getIsSchemaSpecified()` [schema specified]
    `org.apache.xerces.xs.ShortList` | `getItemValueTypes()` In the case the actual value represents a list, i.e.
    `org.apache.xerces.xs.XSSimpleTypeDefinition` | `getMemberTypeDefinition()` If and only if that type definition is a simple type definition with {variety} union, or a complex type definition whose {content type} is a simple thype definition with {variety} union, then an item isomorphic to that member of the union's {member type definitions} which actually validated the element item's normalized value.
    `boolean` | `getNil()` [nil]
    `org.apache.xerces.xs.XSNotationDeclaration` | `getNotation()` [notation]
    `java.lang.String` | `getSchemaDefault()` [schema default]
    `org.apache.xerces.xs.XSModel` | `getSchemaInformation()` [schema information]
    `java.lang.String` | `getSchemaNormalizedValue()` [schema normalized value]
    `org.apache.xerces.xs.XSValue` | `getSchemaValue()` If this item has a simple type definition or a complex type with simple content, then return the value with respect to the simple type.
    `org.apache.xerces.xs.XSTypeAlternative` | `getTypeAlternative()` [type alternative]: type alternative.
    `org.apache.xerces.xs.XSTypeDefinition` | `getTypeDefinition()` An item isomorphic to the type definition used to validate this element.
    `short` | `getValidationAttempted()` Determines the extent to which the document has been validated
    `java.lang.String` | `getValidationContext()` The nearest ancestor element information item with a `[schema information]` property (or this element item itself if it has such a property).
    `short` | `getValidity()` Determine the validity of the node with respect to the validation being attempted
    `boolean` | `isConstant()` Returns `true` if this specific instance of `ItemPSVI` is immutable, otherwise `false`.
    `void` | `reset()` Reset() should be called in validator startElement(..) method.

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

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

- - ### Field Detail

    - #### fDeclaration

          protected org.apache.xerces.xs.XSElementDeclaration fDeclaration

      element declaration

    - #### fTypeDecl

          protected org.apache.xerces.xs.XSTypeDefinition fTypeDecl

      type of element, could be xsi:type

    - #### fNil

          protected boolean fNil

      true if clause 3.2 of Element Locally Valid (Element) (3.3.4) is satisfied, otherwise false

    - #### fSpecified

          protected boolean fSpecified

      true if the element value was provided by the schema; false otherwise.

    - #### fValue

          protected ValidatedInfo fValue

      Schema value

    - #### fNotation

          protected org.apache.xerces.xs.XSNotationDeclaration fNotation

      http://www.w3.org/TR/xmlschema-1/#e-notation

    - #### fValidationAttempted

          protected short fValidationAttempted

      validation attempted: none, partial, full

    - #### fValidity

          protected short fValidity

      validity: valid, invalid, unknown

    - #### fErrors

          protected java.lang.String[] fErrors

      error codes and error messages

    - #### fValidationContext

          protected java.lang.String fValidationContext

      validation context: could be QName or XPath expression

    - #### fGrammars

          protected SchemaGrammar[] fGrammars

      deferred XSModel

    - #### fSchemaInformation

          protected org.apache.xerces.xs.XSModel fSchemaInformation

      the schema information property

    - #### fIsConstant

          protected boolean fIsConstant

      true if this object is immutable

    - #### fInheritedAttributes

          protected org.apache.xerces.xs.datatypes.ObjectList fInheritedAttributes

      inherited attributes

    - #### fFailedAssertions

          protected org.apache.xerces.xs.datatypes.ObjectList fFailedAssertions

      failed assertions

    - #### fTypeAlternative

          protected org.apache.xerces.xs.XSTypeAlternative fTypeAlternative

      type alternative

  - ### Constructor Detail

    - #### ElementPSVImpl

          public ElementPSVImpl()

    - #### ElementPSVImpl

          public ElementPSVImpl(boolean isConstant,
                        org.apache.xerces.xs.ElementPSVI elementPSVI)

  - ### Method Detail

    - #### constant

          public org.apache.xerces.xs.ItemPSVI constant()

      Description copied from interface: `org.apache.xerces.xs.ItemPSVI`
      Returns a reference to an immutable instance with the same data that this instance of `ItemPSVI` currently has.
      Specified by:
        `constant` in interface `org.apache.xerces.xs.ItemPSVI`

    - #### isConstant

          public boolean isConstant()

      Description copied from interface: `org.apache.xerces.xs.ItemPSVI`
      Returns `true` if this specific instance of `ItemPSVI` is immutable, otherwise `false`.
      Specified by:
        `isConstant` in interface `org.apache.xerces.xs.ItemPSVI`

    - #### getSchemaDefault

          public java.lang.String getSchemaDefault()

      [schema default]
      Specified by:
        `getSchemaDefault` in interface `org.apache.xerces.xs.ItemPSVI`
      Returns:
        The canonical lexical representation of the declaration's {value constraint} value.
      See Also:

        - #### getSchemaNormalizedValue

              public java.lang.String getSchemaNormalizedValue()

          [schema normalized value]
          Specified by:
            `getSchemaNormalizedValue` in interface `org.apache.xerces.xs.ItemPSVI`
          Returns:
            the normalized value of this item after validation
          See Also:

            - #### getIsSchemaSpecified

                  public boolean getIsSchemaSpecified()

              [schema specified]
              Specified by:
                `getIsSchemaSpecified` in interface `org.apache.xerces.xs.ItemPSVI`
              Returns:
                true - value was specified in schema, false - value comes from the infoset
              See Also:
                XML Schema Part 1: Structures [schema specified]

            - #### getValidationAttempted

                  public short getValidationAttempted()

              Determines the extent to which the document has been validated
              Specified by:
                `getValidationAttempted` in interface `org.apache.xerces.xs.ItemPSVI`
              Returns:
                return the [validation attempted] property. The possible values are NO_VALIDATION, PARTIAL_VALIDATION and FULL_VALIDATION

            - #### getValidity

                  public short getValidity()

              Determine the validity of the node with respect to the validation being attempted
              Specified by:
                `getValidity` in interface `org.apache.xerces.xs.ItemPSVI`
              Returns:
                return the [validity] property. Possible values are: UNKNOWN_VALIDITY, INVALID_VALIDITY, VALID_VALIDITY

            - #### getErrorCodes

                  public org.apache.xerces.xs.StringList getErrorCodes()

              A list of error codes generated from validation attempts. Need to find all the possible subclause reports that need reporting
              Specified by:
                `getErrorCodes` in interface `org.apache.xerces.xs.ItemPSVI`
              Returns:
                Array of error codes

            - #### getErrorMessages

                  public org.apache.xerces.xs.StringList getErrorMessages()

              A list of error messages generated from the validation attempt or an empty `StringList` if no errors occurred during the validation attempt. The indices of error messages in this list are aligned with those in the `[schema error code]` list.
              Specified by:
                `getErrorMessages` in interface `org.apache.xerces.xs.ItemPSVI`

            - #### getValidationContext

                  public java.lang.String getValidationContext()

              Description copied from interface: `org.apache.xerces.xs.ItemPSVI`
              The nearest ancestor element information item with a `[schema information]` property (or this element item itself if it has such a property). For more information refer to element validation context and attribute validation context .
              Specified by:
                `getValidationContext` in interface `org.apache.xerces.xs.ItemPSVI`

            - #### getNil

                  public boolean getNil()

              [nil]
              Specified by:
                `getNil` in interface `org.apache.xerces.xs.ElementPSVI`
              Returns:
                true if clause 3.2 of Element Locally Valid (Element) (3.3.4) above is satisfied, otherwise false
              See Also:

                - #### getNotation

                      public org.apache.xerces.xs.XSNotationDeclaration getNotation()

                  [notation]
                  Specified by:
                    `getNotation` in interface `org.apache.xerces.xs.ElementPSVI`
                  Returns:
                    The notation declaration.
                  See Also:

                    - #### getTypeDefinition

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

                      An item isomorphic to the type definition used to validate this element.
                      Specified by:
                        `getTypeDefinition` in interface `org.apache.xerces.xs.ItemPSVI`
                      Returns:
                        a type declaration

                    - #### getMemberTypeDefinition

                          public org.apache.xerces.xs.XSSimpleTypeDefinition getMemberTypeDefinition()

                      If and only if that type definition is a simple type definition with {variety} union, or a complex type definition whose {content type} is a simple thype definition with {variety} union, then an item isomorphic to that member of the union's {member type definitions} which actually validated the element item's normalized value.
                      Specified by:
                        `getMemberTypeDefinition` in interface `org.apache.xerces.xs.ItemPSVI`
                      Returns:
                        a simple type declaration

                    - #### getElementDeclaration

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

                      An item isomorphic to the element declaration used to validate this element.
                      Specified by:
                        `getElementDeclaration` in interface `org.apache.xerces.xs.ElementPSVI`
                      Returns:
                        an element declaration

                    - #### getSchemaInformation

                          public org.apache.xerces.xs.XSModel getSchemaInformation()

                      [schema information]
                      Specified by:
                        `getSchemaInformation` in interface `org.apache.xerces.xs.ElementPSVI`
                      Returns:
                        The schema information property if it's the validation root, null otherwise.
                      See Also:
                        XML Schema Part 1: Structures [schema information]

                    - #### getActualNormalizedValue

                          public java.lang.Object getActualNormalizedValue()

                      Description copied from interface: `org.apache.xerces.xs.ItemPSVI`
                      `[schema normalized value]`: Binding specific actual value or `null` if the value is in error.
                      Specified by:
                        `getActualNormalizedValue` in interface `org.apache.xerces.xs.ItemPSVI`

                    - #### getActualNormalizedValueType

                          public short getActualNormalizedValueType()

                      Description copied from interface: `org.apache.xerces.xs.ItemPSVI`
                      The actual 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 value of the list or list of union type definitions use `itemValueTypes`. If the `actualNormalizedValue` is `null`, this method returns `UNAVAILABLE_DT`.
                      Specified by:
                        `getActualNormalizedValueType` in interface `org.apache.xerces.xs.ItemPSVI`

                    - #### getItemValueTypes

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

                      Description copied from interface: `org.apache.xerces.xs.ItemPSVI`
                      In the case the actual value represents a list, i.e. the `actualNormalizedValueType` is `LIST_DT`, the returned array consists of one type kind which represents the itemType . For example:

                           <simpleType name="listtype"> <list
                           itemType="positiveInteger"/> </simpleType> <element
                           name="list" type="listtype"/> ... <list>1 2 3</list>

                      The `schemaNormalizedValue` value is "1 2 3", the `actualNormalizedValueType` value is `LIST_DT`, and the `itemValueTypes` is an array of size 1 with the value `POSITIVEINTEGER_DT`.
                      If the actual value represents a list type definition whose item type is a union type definition, i.e. `LISTOFUNION_DT`, for each actual value in the list the array contains the corresponding memberType kind. For example:

                           <simpleType
                           name='union_type' memberTypes="integer string"/> <simpleType
                           name='listOfUnion'> <list itemType='union_type'/>
                           </simpleType> <element name="list" type="listOfUnion"/>
                           ... <list>1 2 foo</list>

                      The `schemaNormalizedValue` value is "1 2 foo", the `actualNormalizedValueType` is `LISTOFUNION_DT` , and the `itemValueTypes` is an array of size 3 with the following values: `INTEGER_DT, INTEGER_DT, STRING_DT`.
                      Specified by:
                        `getItemValueTypes` in interface `org.apache.xerces.xs.ItemPSVI`

                    - #### getSchemaValue

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

                      Description copied from interface: `org.apache.xerces.xs.ItemPSVI`
                      If this item has a simple type definition or a complex type with simple content, then return the value with respect to the simple type. If this item doesn't have a simple-typed value, the behavior of this method is not specified.
                      Specified by:
                        `getSchemaValue` in interface `org.apache.xerces.xs.ItemPSVI`

                    - #### getInheritedAttributes

                          public org.apache.xerces.xs.datatypes.ObjectList getInheritedAttributes()

                      Inherited attributes.
                      Specified by:
                        `getInheritedAttributes` in interface `org.apache.xerces.xs.ElementPSVI`
                      Returns:
                        inherited attributes list, or an empty list if there are no inherited attributes.

                    - #### getFailedAssertions

                          public org.apache.xerces.xs.datatypes.ObjectList getFailedAssertions()

                      Failed assertions.
                      Specified by:
                        `getFailedAssertions` in interface `org.apache.xerces.xs.ElementPSVI`
                      Returns:
                        failed assertions list, or an empty list if none of assertions failed.

                    - #### getTypeAlternative

                          public org.apache.xerces.xs.XSTypeAlternative getTypeAlternative()

                      Description copied from interface: `org.apache.xerces.xs.ElementPSVI`
                      [type alternative]: type alternative.
                      Specified by:
                        `getTypeAlternative` in interface `org.apache.xerces.xs.ElementPSVI`

                    - #### reset

                          public void reset()

                      Reset() should be called in validator startElement(..) method.

                    - #### copySchemaInformationTo

                          public void copySchemaInformationTo(ElementPSVImpl target)

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