org.apache.xalan.processor
Class ProcessorExsltFunction
java.lang.Object
org.apache.xml.utils.UnImplNode
org.apache.xalan.templates.ElemTemplateElement
org.apache.xalan.processor.XSLTElementProcessor
org.apache.xalan.processor.ProcessorTemplateElem
org.apache.xalan.processor.ProcessorExsltFunction
- All Implemented Interfaces:
- java.io.Serializable, javax.xml.transform.SourceLocator, XSLTVisitable, PrefixResolver, ExpressionNode, WhitespaceStrippingElementMatcher, org.w3c.dom.Document, org.w3c.dom.Element, org.w3c.dom.Node, org.w3c.dom.NodeList
public class ProcessorExsltFunction
- extends ProcessorTemplateElem
This class processes parse events for an exslt func:function element.
- See Also:
- Serialized Form
Fields inherited from interface org.w3c.dom.Node |
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE |
Fields inherited from interface org.w3c.dom.Node |
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE |
Fields inherited from interface org.w3c.dom.Node |
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE |
Method Summary |
(package private) boolean |
ancestorIsOk(ElemTemplateElement child)
Verify that a literal result belongs to a result element, a variable,
or a parameter. |
protected void |
appendAndPush(StylesheetHandler handler,
ElemTemplateElement elem)
Must include; super doesn't suffice! |
void |
endElement(StylesheetHandler handler,
java.lang.String uri,
java.lang.String localName,
java.lang.String rawName)
End an ElemExsltFunction, and verify its validity. |
void |
startElement(StylesheetHandler handler,
java.lang.String uri,
java.lang.String localName,
java.lang.String rawName,
org.xml.sax.Attributes attributes)
Start an ElemExsltFunction. |
void |
validate(ElemTemplateElement elem,
StylesheetHandler handler)
Non-recursive traversal of FunctionElement tree based on TreeWalker to verify that
there are no literal result elements except within a func:result element and that
the func:result element does not contain any following siblings except xsl:fallback. |
Methods inherited from class org.apache.xalan.processor.XSLTElementProcessor |
characters, getElemDef, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setElemDef, setPropertiesFromAttributes, setPropertiesFromAttributes, skippedEntity, startNonText, unparsedEntityDecl |
Methods inherited from class org.apache.xalan.templates.ElemTemplateElement |
accept, appendChild, appendChild, callChildVisitors, callChildVisitors, callVisitors, canAcceptVariables, canStripWhiteSpace, compareTo, compose, containsExcludeResultPrefix, endCompose, error, error, execute, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getBaseIdentifier, getChildNodes, getColumnNumber, getDeclaredPrefixes, getDOMBackPointer, getEndColumnNumber, getEndLineNumber, getFirstChild, getFirstChildElem, getLastChild, getLastChildElem, getLength, getLineNumber, getLocalName, getNamespaceForPrefix, getNamespaceForPrefix, getNextSibling, getNextSiblingElem, getNodeName, getNodeType, getOwnerDocument, getOwnerXSLTemplate, getParentElem, getParentNode, getParentNodeElem, getPreviousSibling, getPreviousSiblingElem, getPublicId, getStylesheet, getStylesheetComposed, getStylesheetRoot, getSystemId, getTagName, getUid, getXmlSpace, getXSLToken, handlesNullPrefixes, hasChildNodes, hasTextLitOnly, hasVariableDecl, insertBefore, isCompiledTemplate, item, recompose, removeChild, replaceChild, replaceChild, resolvePrefixTables, runtimeInit, setDOMBackPointer, setEndLocaterInfo, setLocaterInfo, setParentElem, setPrefixes, setPrefixes, setUid, setXmlSpace, shouldStripWhiteSpace |
Methods inherited from class org.apache.xml.utils.UnImplNode |
adoptNode, appendData, cloneNode, compareDocumentPosition, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, deleteData, getActualEncoding, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getBaseURI, getDoctype, getDocumentElement, getDocumentURI, getDomConfig, getElementById, getElementsByTagName, getElementsByTagNameNS, getFeature, getImplementation, getInputEncoding, getNamespaceURI, getNodeValue, getOwnerElement, getPrefix, getSchemaTypeInfo, getSpecified, getStrictErrorChecking, getTextContent, getUserData, getWholeText, getXmlEncoding, getXmlStandalone, getXmlVersion, hasAttribute, hasAttributeNS, hasAttributes, importNode, insertData, isDefaultNamespace, isEqualNode, isId, isSameNode, isSupported, isWhitespaceInElementContent, lookupNamespaceURI, lookupPrefix, normalize, normalizeDocument, removeAttribute, removeAttributeNode, removeAttributeNS, removeChild, renameNode, replaceData, replaceWholeText, setActualEncoding, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setData, setDocumentURI, setIdAttribute, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setInputEncoding, setNodeValue, setPrefix, setStrictErrorChecking, setTextContent, setUserData, setValue, setXmlEncoding, setXmlStandalone, setXmlVersion, splitText, substringData |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
serialVersionUID
static final long serialVersionUID
- See Also:
- Constant Field Values
ProcessorExsltFunction
public ProcessorExsltFunction()
startElement
public void startElement(StylesheetHandler handler,
java.lang.String uri,
java.lang.String localName,
java.lang.String rawName,
org.xml.sax.Attributes attributes)
throws org.xml.sax.SAXException
- Start an ElemExsltFunction. Verify that it is top level and that it has a name attribute with a
namespace.
- Overrides:
startElement
in class ProcessorTemplateElem
- Parameters:
handler
- non-null reference to current StylesheetHandler that is constructing the Templates.uri
- The Namespace URI, or an empty string.localName
- The local name (without prefix), or empty string if not namespace processing.rawName
- The qualified name (with prefix).attributes
- The specified or defaulted attributes.
- Throws:
org.xml.sax.SAXException
appendAndPush
protected void appendAndPush(StylesheetHandler handler,
ElemTemplateElement elem)
throws org.xml.sax.SAXException
- Must include; super doesn't suffice!
- Overrides:
appendAndPush
in class ProcessorTemplateElem
- Parameters:
handler
- non-null reference to current StylesheetHandler that is constructing the Templates.elem
- non-null reference to a the current template element.
- Throws:
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.
endElement
public void endElement(StylesheetHandler handler,
java.lang.String uri,
java.lang.String localName,
java.lang.String rawName)
throws org.xml.sax.SAXException
- End an ElemExsltFunction, and verify its validity.
- Overrides:
endElement
in class ProcessorTemplateElem
- Parameters:
handler
- non-null reference to current StylesheetHandler that is constructing the Templates.uri
- The Namespace URI, or an empty string.localName
- The local name (without prefix), or empty string if not namespace processing.rawName
- The qualified name (with prefix).
- Throws:
org.xml.sax.SAXException
validate
public void validate(ElemTemplateElement elem,
StylesheetHandler handler)
throws org.xml.sax.SAXException
- Non-recursive traversal of FunctionElement tree based on TreeWalker to verify that
there are no literal result elements except within a func:result element and that
the func:result element does not contain any following siblings except xsl:fallback.
- Throws:
org.xml.sax.SAXException
ancestorIsOk
boolean ancestorIsOk(ElemTemplateElement child)
- Verify that a literal result belongs to a result element, a variable,
or a parameter.