Hi, Please help me regarding a query on streaming XPath. The version of libxml2 and the OS on which it is deployed is displayed below. ----------------------------------------------------------------------- shell$ xml2-config --version 2.6.13 shell$ cat /proc/version Linux version 2.6.9-1.667smp (bhcompile tweety build redhat com) (gcc version 3.4.2 20041017 (Red Hat 3.4.2-6.fc3)) #1 SMP Tue Nov 2 14:59:52 EST 2004 ----------------------------------------------------------------------- I have attached a code sample, which uses streaming XPath using xmlReader and xmlPattern. The inputs to this program are: 1). A XML message, which is well-formed, would be passed to this code fragment for XPath matching. 2). A XPath expression. Could you please review the code and let me know your feedback? There are two issues. Please clarify. 1). The webpage shows an enum for the XML pattern flags. Enum xmlPatternFlags { XML_PATTERN_DEFAULT = 0 : simple pattern match XML_PATTERN_XPATH = 1 : standard XPath pattern XML_PATTERN_XSSEL = 2 : XPath subset for schema selector XML_PATTERN_XSFIELD = 4 : XPath subset for schema field } Using 'XML_PATTERN_XPATH' results in compilation error. Search for this string in the code base failed, which implies that it is not supported. So currently I am passing a value of '1'. 2). The function "xmlPatternCompile" seems to compile valid and invalid XPaths. ----------------------------------------------------------------------------- patternc = xmlPatterncompile( (const xmlChar *) pattern, NULL, 1, NULL ); ----------------------------------------------------------------------------- Could you please provide me a few invalid XPaths to test my code? I assume that invalid XPath would result in a NULL return. Thanks a lot for your help. Regards, Ravi.
Attachment:
streamXPath.c
Description: Text Data