* Summary: API to handle XML Pointers * Description: API to handle XML Pointers * Base implementation was made accordingly to * W3C Candidate Recommendation 7 June 2000 * http://www.w3.org/TR/2000/CR-xptr-20000607 * * Added support for the element() scheme described in: * W3C Proposed Recommendation 13 November 2002 * http://www.w3.org/TR/2002/PR-xptr-element-20021113/ * * Copy: See Copyright for the status of this software. * * Author: Patrick Monnerat , DATASPHERE S.A. /if not defined(XML_XPTR_H__) /define XML_XPTR_H__ /include "libxmlrpg/xmlversion" /if defined(LIBXML_XPTR_ENABLED) /include "libxmlrpg/xmlTypesC" /include "libxmlrpg/tree" /include "libxmlrpg/xpath" * A Location Set d xmlLocationSetPtr... d s * based(######typedef######) d xmlLocationSet ds based(xmlLocationSetPtr) d align qualified d locNr like(xmlCint) # locations in set d locMax like(xmlCint) Max locations in set d locTab * xmlXPathObjectPtr * * Handling of location sets. d xmlXPtrLocationSetCreate... d pr extproc('xmlXPtrLocationSetCreate') d like(xmlLocationSetPtr) d val value like(xmlXPathObjectPtr) d xmlXPtrFreeLocationSet... d pr extproc('xmlXPtrFreeLocationSet') d obj value like(xmlLocationSetPtr) d xmlXPtrLocationSetMerge... d pr extproc('xmlXPtrLocationSetMerge') d like(xmlLocationSetPtr) d val1 value like(xmlLocationSetPtr) d val2 value like(xmlLocationSetPtr) d xmlXPtrNewRange... d pr extproc('xmlXPtrNewRange') d like(xmlXPathObjectPtr) d start value like(xmlNodePtr) d startindex value like(xmlCint) d end value like(xmlNodePtr) d endindex value like(xmlCint) d xmlXPtrNewRangePoints... d pr extproc('xmlXPtrNewRangePoints') d like(xmlXPathObjectPtr) d start value like(xmlXPathObjectPtr) d end value like(xmlXPathObjectPtr) d xmlXPtrNewRangeNodePoint... d pr extproc('xmlXPtrNewRangeNodePoint') d like(xmlXPathObjectPtr) d start value like(xmlNodePtr) d end value like(xmlXPathObjectPtr) d xmlXPtrNewRangePointNode... d pr extproc('xmlXPtrNewRangePointNode') d like(xmlXPathObjectPtr) d start value like(xmlXPathObjectPtr) d end value like(xmlNodePtr) d xmlXPtrNewRangeNodes... d pr extproc('xmlXPtrNewRangeNodes') d like(xmlXPathObjectPtr) d start value like(xmlNodePtr) d end value like(xmlNodePtr) d xmlXPtrNewLocationSetNodes... d pr extproc('xmlXPtrNewLocationSetNodes') d like(xmlXPathObjectPtr) d start value like(xmlNodePtr) d end value like(xmlNodePtr) d xmlXPtrNewLocationSetNodeSet... d pr extproc( d 'xmlXPtrNewLocationSetNodeSet') d like(xmlXPathObjectPtr) d set value like(xmlNodeSetPtr) d xmlXPtrNewRangeNodeObject... d pr extproc('xmlXPtrNewRangeNodeObject') d like(xmlXPathObjectPtr) d start value like(xmlNodePtr) d end value like(xmlXPathObjectPtr) d xmlXPtrNewCollapsedRange... d pr extproc('xmlXPtrNewCollapsedRange') d like(xmlXPathObjectPtr) d start value like(xmlNodePtr) d xmlXPtrLocationSetAdd... d pr extproc('xmlXPtrLocationSetAdd') d cur value like(xmlLocationSetPtr) d val value like(xmlXPathObjectPtr) d xmlXPtrWrapLocationSet... d pr extproc('xmlXPtrWrapLocationSet') d like(xmlXPathObjectPtr) d val value like(xmlLocationSetPtr) d xmlXPtrLocationSetDel... d pr extproc('xmlXPtrLocationSetDel') d cur value like(xmlLocationSetPtr) d val value like(xmlXPathObjectPtr) d xmlXPtrLocationSetRemove... d pr extproc('xmlXPtrLocationSetRemove') d cur value like(xmlLocationSetPtr) d val value like(xmlCint) * Functions. d xmlXPtrNewContext... d pr extproc('xmlXPtrNewContext') d like(xmlXPathContextPtr) d doc value like(xmlDocPtr) d here value like(xmlNodePtr) d origin value like(xmlNodePtr) d xmlXPtrEval pr extproc('xmlXPtrEval') d like(xmlXPathObjectPtr) d str * value options(*string) const xmlChar * d ctx value like(xmlXPathContextPtr) d xmlXPtrRangeToFunction... d pr extproc('xmlXPtrRangeToFunction') d ctxt value like(xmlXPathParserContextPtr) d nargs value like(xmlCint) d xmlXPtrBuildNodeList... d pr extproc('xmlXPtrBuildNodeList') d like(xmlNodePtr) d obj value like(xmlXPathObjectPtr) d xmlXPtrEvalRangePredicate... d pr extproc('xmlXPtrEvalRangePredicate') d ctxt value like(xmlXPathParserContextPtr) /endif LIBXML_XPTR_ENABLED /endif XML_XPTR_H__