org.apache.xalan.templates
Class FuncDocument

java.lang.Object
  extended by org.apache.xpath.Expression
      extended by org.apache.xpath.functions.Function
          extended by org.apache.xpath.functions.FunctionOneArg
              extended by org.apache.xpath.functions.Function2Args
                  extended by org.apache.xalan.templates.FuncDocument
All Implemented Interfaces:
java.io.Serializable, javax.xml.transform.SourceLocator, ExpressionNode, ExpressionOwner, XPathVisitable

public class FuncDocument
extends Function2Args

Execute the Doc() function. When the document function has exactly one argument and the argument is a node-set, then the result is the union, for each node in the argument node-set, of the result of calling the document function with the first argument being the string-value of the node, and the second argument being a node-set with the node as its only member. When the document function has two arguments and the first argument is a node-set, then the result is the union, for each node in the argument node-set, of the result of calling the document function with the first argument being the string-value of the node, and with the second argument being the second argument passed to the document function.

See Also:
Serialized Form
Usage:
**For advanced use only**

Constructor Summary
FuncDocument()
           
 
Method Summary
 void checkNumberArgs(int argNum)
          Overide the superclass method to allow one or two arguments.
 void error(XPathContext xctxt, java.lang.String msg, java.lang.Object[] args)
          Tell the user of an error, and probably throw an exception.
 XObject execute(XPathContext xctxt)
          Execute the function.
 boolean isNodesetExpr()
          Tell if the expression is a nodeset expression.
 void warn(XPathContext xctxt, java.lang.String msg, java.lang.Object[] args)
          Warn the user of a problem.
 
Methods inherited from class org.apache.xpath.functions.Function2Args
callArgVisitors, canTraverseOutsideSubtree, deepEquals, fixupVariables, getArg1, setArg
 
Methods inherited from class org.apache.xpath.functions.FunctionOneArg
getArg0, getExpression, setExpression
 
Methods inherited from class org.apache.xpath.functions.Function
callVisitors, postCompileStep
 
Methods inherited from class org.apache.xpath.Expression
asIterator, asIteratorRaw, asNode, assertion, bool, execute, execute, execute, executeCharsToContentHandler, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getColumnNumber, getExpressionOwner, getLineNumber, getPublicId, getSystemId, isStableNumber, num, xstr
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FuncDocument

public FuncDocument()
Method Detail

execute

public XObject execute(XPathContext xctxt)
                throws javax.xml.transform.TransformerException
Execute the function. The function must return a valid object.

Overrides:
execute in class Function
Parameters:
xctxt - The current execution context.
Returns:
A valid XObject.
Throws:
javax.xml.transform.TransformerException

error

public void error(XPathContext xctxt,
                  java.lang.String msg,
                  java.lang.Object[] args)
           throws javax.xml.transform.TransformerException
Tell the user of an error, and probably throw an exception.

Overrides:
error in class Expression
Parameters:
xctxt - The XPath runtime state.
msg - The error message key
args - Arguments to be used in the error message
Throws:
XSLProcessorException - thrown if the active ProblemListener and XPathContext decide the error condition is severe enough to halt processing.
javax.xml.transform.TransformerException

warn

public void warn(XPathContext xctxt,
                 java.lang.String msg,
                 java.lang.Object[] args)
          throws javax.xml.transform.TransformerException
Warn the user of a problem.

Overrides:
warn in class Expression
Parameters:
xctxt - The XPath runtime state.
msg - Warning message key
args - Arguments to be used in the warning message
Throws:
XSLProcessorException - thrown if the active ProblemListener and XPathContext decide the error condition is severe enough to halt processing.
javax.xml.transform.TransformerException

checkNumberArgs

public void checkNumberArgs(int argNum)
                     throws WrongNumberArgsException
Overide the superclass method to allow one or two arguments.

Overrides:
checkNumberArgs in class Function2Args
Parameters:
argNum - Number of arguments passed in to this function
Throws:
WrongNumberArgsException

isNodesetExpr

public boolean isNodesetExpr()
Tell if the expression is a nodeset expression.

Overrides:
isNodesetExpr in class Expression
Returns:
true if the expression can be represented as a nodeset.


Copyright © 2005 Apache XML Project. All Rights Reserved.