org.apache.xerces.impl.xs
Class ElementPSVImpl

java.lang.Object
  extended by org.apache.xerces.impl.xs.ElementPSVImpl
All Implemented Interfaces:
ElementPSVI, ItemPSVI

public class ElementPSVImpl
extends java.lang.Object
implements 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 446734 2006-09-15 20:51:23Z mrglavas $
Author:
Elena Litani IBM

Field Summary
 
Fields inherited from interface org.apache.xerces.xs.ItemPSVI
VALIDATION_FULL, VALIDATION_NONE, VALIDATION_PARTIAL, VALIDITY_INVALID, VALIDITY_NOTKNOWN, VALIDITY_VALID
 
Constructor Summary
ElementPSVImpl()
           
 
Method Summary
 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.
 XSElementDeclaration getElementDeclaration()
          An item isomorphic to the element declaration used to validate this element.
 StringList getErrorCodes()
          A list of error codes generated from validation attempts.
 boolean getIsSchemaSpecified()
          [schema specified]
 ShortList getItemValueTypes()
          In the case the actual value represents a list, i.e.
 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]
 XSNotationDeclaration getNotation()
          [notation]
 java.lang.String getSchemaDefault()
          [schema default]
 XSModel getSchemaInformation()
          [schema information]
 java.lang.String getSchemaNormalizedValue()
          [schema normalized value]
 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
 void reset()
          Reset() should be called in validator startElement(..) method.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ElementPSVImpl

public ElementPSVImpl()
Method Detail

getSchemaDefault

public java.lang.String getSchemaDefault()
[schema default]

Specified by:
getSchemaDefault in interface 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 ItemPSVI
Returns:
the normalized value of this item after validation
See Also:

getIsSchemaSpecified

public boolean getIsSchemaSpecified()
[schema specified]

Specified by:
getIsSchemaSpecified in interface 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 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 ItemPSVI
Returns:
return the [validity] property. Possible values are: UNKNOWN_VALIDITY, INVALID_VALIDITY, VALID_VALIDITY

getErrorCodes

public 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 ItemPSVI
Returns:
Array of error codes

getValidationContext

public java.lang.String getValidationContext()
Description copied from interface: 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 ItemPSVI

getNil

public boolean getNil()
[nil]

Specified by:
getNil in interface ElementPSVI
Returns:
true if clause 3.2 of Element Locally Valid (Element) (3.3.4) above is satisfied, otherwise false
See Also:

getNotation

public XSNotationDeclaration getNotation()
[notation]

Specified by:
getNotation in interface ElementPSVI
Returns:
The notation declaration.
See Also:

getTypeDefinition

public XSTypeDefinition getTypeDefinition()
An item isomorphic to the type definition used to validate this element.

Specified by:
getTypeDefinition in interface ItemPSVI
Returns:
a type declaration

getMemberTypeDefinition

public 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 ItemPSVI
Returns:
a simple type declaration

getElementDeclaration

public XSElementDeclaration getElementDeclaration()
An item isomorphic to the element declaration used to validate this element.

Specified by:
getElementDeclaration in interface ElementPSVI
Returns:
an element declaration

getSchemaInformation

public XSModel getSchemaInformation()
[schema information]

Specified by:
getSchemaInformation in interface 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: ItemPSVI
[schema normalized value]: Binding specific actual value or null if the value is in error.

Specified by:
getActualNormalizedValue in interface ItemPSVI

getActualNormalizedValueType

public short getActualNormalizedValueType()
Description copied from interface: 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 ItemPSVI

getItemValueTypes

public ShortList getItemValueTypes()
Description copied from interface: 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 ItemPSVI

reset

public void reset()
Reset() should be called in validator startElement(..) method.