P6R::p6IXpathExpression Interface Reference

This component is used to parse a complex XPath 2.0 expression or pattern into an expression tree for easy evaluation. More...

#include <p6xpathexpression.h>

Inherits P6R::p6ICom.

List of all members.

Public Member Functions

virtual P6R::P6INT32 addref ()=0
 This method increases the reference count of the component instance by one.
virtual P6R::P6ERR compileExpression (const P6WCHAR *pExpression, P6UINT32 length, p6IXMLCompile *pContext)=0
 Compile a general XPath expression that would normally be used in XSLT into an XPath expression tree.
virtual P6R::P6ERR compileTemplateMatch (P6WCHAR *pPattern, P6UINT32 length, p6IXMLCompile *pContext)=0
 Compile match attributes of XSLT templates which are patterns of the form: chapter/section//footnote into an XPath expression tree.
virtual P6R::P6ERR eval (p6IDOMXML *pXMLTree, p6IXMLNode *pXMLNode, p6IDOMNodeset *pNodeSet, P6XPATH_RESULT *pResult)=0
 Evaluate the compiled pattern or expression against the context defined by the following objects: (a) an XML tree (required), (b) an XSLT context node(optional), and (c) an XML node set (optional) One of the compile calls must be made before this method can be called.
virtual P6R::P6ERR evalBoolean (p6IDOMXML *pXMLTree, p6IXMLNode *pXMLNode, p6IDOMNodeset *pNodeSet, P6BOOL *pbResult)=0
 Evaluate the compiled pattern or expression against the context defined by the following objects: (a) an XML tree (required), (b) an XSLT context node(optional), and (c) an XML node set (optional) One of the compile calls must be made before this method can be called.
virtual P6R::P6ERR initialize (P6XPATHFLAGS flags, p6IDataStream *pTraceResult)=0
 Sets up the component to run properly.
virtual P6R::P6ERR queryInterface (const P6R::IID &iid, P6R::P6VOID **ppIface)=0
 This method queries the component for a specific interface.
virtual P6R::P6INT32 release ()=0
 This method decrements a components reference count.
virtual P6R::P6ERR setDefaultCollation (const P6CHAR *pCollate)=0
 The XPath processor uses the default collation from the runtime enviroment.
virtual P6R::P6ERR setRegexLimits (P6UINT32 maxBackStack, P6UINT32 maxBackTracks)=0
 As default there are NO limits on the execution of regular expression in an XPath expression.
virtual P6R::P6ERR setVariableHandler (p6IXpathVariables *pObject)=0
 The calling application uses this method to register a handler to look up external variable values.

Detailed Description

This component is used to parse a complex XPath 2.0 expression or pattern into an expression tree for easy evaluation.

An expression can be compiled once and evaluated many times against the same or different DOM trees (from XML or JSON). An expression supports XSLT evaluation via the use of the XSLT context node and access to active variable values (see P6R::p6IXpathVariables).

Definition at line 47 of file p6xpathexpression.h.


The documentation for this interface was generated from the following file:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines
Copyright © 2004 - 2010 P6R Inc. - All Rights Reserved.