Class ValidatingXMLStreamReader
- java.lang.Object
-
- javax.xml.stream.util.StreamReaderDelegate
-
- org.apache.xmlbeans.impl.validator.ValidatingXMLStreamReader
-
- All Implemented Interfaces:
javax.xml.stream.XMLStreamConstants
,javax.xml.stream.XMLStreamReader
- Direct Known Subclasses:
ValidatingInfoXMLStreamReader
public class ValidatingXMLStreamReader extends javax.xml.stream.util.StreamReaderDelegate implements javax.xml.stream.XMLStreamReader
This class is a wrapper over a generic XMLStreamReader that provides validation. There are 3 cases:
1) the XMLStreamReader represents a document, it contains only one element document - in this case the user schema type should be null or it should be a document SchemaType
2) the XMLStreamReader represents an xml-fragment (content only) - must have at least one user type or xsi:type
a) it has an xsi:type - if user schema type is available it has to be a base type of xsi:type
b) it doesn't have xsi:type - user must provide a schema type otherwise will error and will not do validation
3) the XMLStreamReader represents a global attribute - i.e. user schema type is null and only one attribute
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
OPTION_ATTTRIBUTE_VALIDATION_COMPAT_MODE
-
Constructor Summary
Constructors Constructor Description ValidatingXMLStreamReader()
Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
getProperty(java.lang.String s)
void
init(javax.xml.stream.XMLStreamReader xsr, boolean startWithCurrentEvent, SchemaType contentType, SchemaTypeLoader stl, XmlOptions options, java.util.Collection errorListener)
Used in case of reusing the same ValidatinXMLStreamReader objectboolean
isValid()
int
next()
-
Methods inherited from class javax.xml.stream.util.StreamReaderDelegate
close, getAttributeCount, getAttributeLocalName, getAttributeName, getAttributeNamespace, getAttributePrefix, getAttributeType, getAttributeValue, getAttributeValue, getCharacterEncodingScheme, getElementText, getEncoding, getEventType, getLocalName, getLocation, getName, getNamespaceContext, getNamespaceCount, getNamespacePrefix, getNamespaceURI, getNamespaceURI, getNamespaceURI, getParent, getPIData, getPITarget, getPrefix, getText, getTextCharacters, getTextCharacters, getTextLength, getTextStart, getVersion, hasName, hasNext, hasText, isAttributeSpecified, isCharacters, isEndElement, isStandalone, isStartElement, isWhiteSpace, nextTag, require, setParent, standaloneSet
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface javax.xml.stream.XMLStreamReader
close, getAttributeCount, getAttributeLocalName, getAttributeName, getAttributeNamespace, getAttributePrefix, getAttributeType, getAttributeValue, getAttributeValue, getCharacterEncodingScheme, getElementText, getEncoding, getEventType, getLocalName, getLocation, getName, getNamespaceContext, getNamespaceCount, getNamespacePrefix, getNamespaceURI, getNamespaceURI, getNamespaceURI, getPIData, getPITarget, getPrefix, getText, getTextCharacters, getTextCharacters, getTextLength, getTextStart, getVersion, hasName, hasNext, hasText, isAttributeSpecified, isCharacters, isEndElement, isStandalone, isStartElement, isWhiteSpace, nextTag, require, standaloneSet
-
-
-
-
Field Detail
-
OPTION_ATTTRIBUTE_VALIDATION_COMPAT_MODE
public static final java.lang.String OPTION_ATTTRIBUTE_VALIDATION_COMPAT_MODE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ValidatingXMLStreamReader
public ValidatingXMLStreamReader()
Default constructor. Use init(...) to set the params. Seeinit(javax.xml.stream.XMLStreamReader, boolean, org.apache.xmlbeans.SchemaType, org.apache.xmlbeans.SchemaTypeLoader, org.apache.xmlbeans.XmlOptions, java.util.Collection)
-
-
Method Detail
-
init
public void init(javax.xml.stream.XMLStreamReader xsr, boolean startWithCurrentEvent, SchemaType contentType, SchemaTypeLoader stl, XmlOptions options, java.util.Collection errorListener)
Used in case of reusing the same ValidatinXMLStreamReader object- Parameters:
xsr
- The stream to be validatedstartWithCurrentEvent
- Validation will start if true with the current event or if false with the next event in the streamcontentType
- The schemaType of the content. This can be null for document and global Att validationstl
- SchemaTypeLoader context of validationoptions
- Validator optionserrorListener
- Errors and warnings listener
-
getProperty
public java.lang.Object getProperty(java.lang.String s) throws java.lang.IllegalArgumentException
- Specified by:
getProperty
in interfacejavax.xml.stream.XMLStreamReader
- Overrides:
getProperty
in classjavax.xml.stream.util.StreamReaderDelegate
- Throws:
java.lang.IllegalArgumentException
-
next
public int next() throws javax.xml.stream.XMLStreamException
- Specified by:
next
in interfacejavax.xml.stream.XMLStreamReader
- Overrides:
next
in classjavax.xml.stream.util.StreamReaderDelegate
- Throws:
javax.xml.stream.XMLStreamException
-
isValid
public boolean isValid()
- Returns:
- Returns the validation state up to this point. NOTE: At least one START ELEMENT should have been consumed for a valid value to be returned.
-
-