|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Object
|
+--net.sf.saxon.event.ProxyReceiver
|
+--net.sf.saxon.event.NamespaceReducer
|
+--com.saxonica.validate.XSIAttributeHandler
This class acts as the first stage in a a validation pipeline. It processes attributes such as xsi:schemaLocation and xsi:type. To achieve this, it buffers all attributes and namespaces, because the xsi:type and schemaLocation need to be processed before the start element event. The class extends NamespaceReducer because NamespaceReducer keeps track of in-scope namespaces, which is needed to resolve xsi:type attributes.
| Field Summary |
| Fields inherited from class net.sf.saxon.event.ProxyReceiver |
baseReceiver, config, systemId |
| Fields inherited from interface javax.xml.transform.Result |
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING |
| Constructor Summary | |
XSIAttributeHandler(Configuration config,
ValidationStack out)
|
|
| Method Summary | |
void |
attribute(int nameCode,
int typeCode,
java.lang.CharSequence value,
int properties)
Notify an attribute. |
void |
characters(java.lang.CharSequence chars,
int properties)
Character data |
void |
comment(java.lang.CharSequence chars,
int properties)
Output a comment |
void |
endElement()
End of element |
int |
getFingerprint(java.lang.String qname,
boolean useDefault,
NamePool pool)
Use this NamespaceContext to resolve a lexical QName |
java.lang.String |
getURIForPrefix(java.lang.String prefix,
boolean useDefault)
Get the namespace URI corresponding to a given prefix. |
void |
namespace(int namespaceCode,
int properties)
Notify a namespace. |
void |
processingInstruction(java.lang.String target,
java.lang.CharSequence data,
int properties)
Processing Instruction |
void |
startContent()
Notify the start of the content, that is, the completion of all attributes and namespaces. |
void |
startElement(int nameCode,
int typeCode,
int properties)
Notify the start of an element |
| Methods inherited from class net.sf.saxon.event.NamespaceReducer |
getURICode, setConfiguration |
| Methods inherited from class net.sf.saxon.event.ProxyReceiver |
endDocument, getConfiguration, getNamePool, getSystemId, getUnderlyingReceiver, setDocumentLocator, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startDocument |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface net.sf.saxon.event.Receiver |
endDocument, getConfiguration, setConfiguration, setDocumentLocator, setSystemId, setUnparsedEntity, startDocument |
| Methods inherited from interface javax.xml.transform.Result |
getSystemId |
| Constructor Detail |
public XSIAttributeHandler(Configuration config,
ValidationStack out)
| Method Detail |
public void startElement(int nameCode,
int typeCode,
int properties)
throws javax.xml.transform.TransformerException
startElement in interface ReceiverstartElement in class NamespaceReducernameCode - integer code identifying the name of the element within the name pool.typeCode - integer code identifying the element's type within the name pool.
javax.xml.transform.TransformerException
public void namespace(int namespaceCode,
int properties)
throws javax.xml.transform.TransformerException
namespace in interface Receivernamespace in class NamespaceReducernamespaceCode - an integer: the top half is a prefix code, the bottom half a URI code.
These may be translated into an actual prefix and URI using the name pool. A prefix code of
zero represents the empty prefix (that is, the default namespace). A URI code of zero represents
a URI of "", that is, a namespace undeclaration.
javax.xml.transform.TransformerException
public void attribute(int nameCode,
int typeCode,
java.lang.CharSequence value,
int properties)
throws javax.xml.transform.TransformerException
attribute in interface Receiverattribute in class NamespaceReducernameCode - The name of the attribute, as held in the name pooltypeCode - The type of the attribute, as held in the name poolproperties - Bit significant value. The following bits are defined:
java.lang.IllegalStateException: - attempt to output an attribute when there is no open element
start tag
javax.xml.transform.TransformerException
public void startContent()
throws javax.xml.transform.TransformerException
startContent in interface ReceiverstartContent in class NamespaceReducerjavax.xml.transform.TransformerException
public java.lang.String getURIForPrefix(java.lang.String prefix,
boolean useDefault)
getURIForPrefix in interface NamespaceResolverprefix - the namespace prefixuseDefault - true if the default namespace is to be used when the
prefix is ""
public int getFingerprint(java.lang.String qname,
boolean useDefault,
NamePool pool)
throws XPathException
NamespaceResolver
getFingerprint in interface NamespaceResolverqname - the lexical QName; this must have already been lexically validateduseDefault - true if the default namespace is to be used to resolve an unprefixed QNamepool - the NamePool to be used
XPathException
public void endElement()
throws javax.xml.transform.TransformerException
endElement in interface ReceiverendElement in class NamespaceReducerjavax.xml.transform.TransformerException
public void characters(java.lang.CharSequence chars,
int properties)
throws javax.xml.transform.TransformerException
characters in interface Receivercharacters in class ProxyReceiverchars - The charactersproperties - Bit significant value. The following bits are defined:
javax.xml.transform.TransformerException
public void processingInstruction(java.lang.String target,
java.lang.CharSequence data,
int properties)
throws javax.xml.transform.TransformerException
processingInstruction in interface ReceiverprocessingInstruction in class ProxyReceivertarget - The PI name. This must be a legal name (it will not be checked).data - The data portion of the processing instructionproperties - Additional information about the PI. The following bits are
defined:
javax.xml.transform.TransformerException
public void comment(java.lang.CharSequence chars,
int properties)
throws javax.xml.transform.TransformerException
comment in interface Receivercomment in class ProxyReceiverchars - The content of the commentproperties - Additional information about the comment. The following bits are
defined:
javax.xml.transform.TransformerException
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||