Class Parse

All Implemented Interfaces:
Serializable, SourceLocator, LocationProvider, SaxonLocator, EvaluableItem, SequenceIterable, InstructionInfo, Locator

public class Parse extends SystemFunction
This class implements the saxon:parse() extension function, which is specially-recognized by the system because it needs access to parts of the static context
See Also:
  • Constructor Details

    • Parse

      public Parse()
  • Method Details

    • checkArguments

      public void checkArguments(ExpressionVisitor visitor) throws XPathException
      Method supplied by each class of function to check arguments during parsing, when all the argument expressions have been read
      Overrides:
      checkArguments in class SystemFunction
      Parameters:
      visitor - the expression visitor
      Throws:
      XPathException
    • preEvaluate

      public Expression preEvaluate(ExpressionVisitor visitor) throws XPathException
      Pre-evaluate a function at compile time. Static evaluation is suppressed for saxon:parse because no controller is available.
      Overrides:
      preEvaluate in class FunctionCall
      Parameters:
      visitor - an expression visitor
      Returns:
      the result of the early evaluation, or the original expression, or potentially a simplified expression
      Throws:
      XPathException
    • evaluateItem

      public Item evaluateItem(XPathContext c) throws XPathException
      Evaluate in a general context
      Specified by:
      evaluateItem in interface EvaluableItem
      Overrides:
      evaluateItem in class Expression
      Parameters:
      c - The context in which the expression is to be evaluated
      Returns:
      the node or atomic value that results from evaluating the expression; or null to indicate that the result is an empty sequence
      Throws:
      XPathException - if any dynamic error occurs evaluating the expression