1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-10-26 00:37:43 +03:00

OS400: ILE RPG language header files.

This commit is contained in:
Patrick Monnerat
2014-03-04 17:18:26 +01:00
committed by Daniel Veillard
parent 7d888f07d8
commit e083c30e12
49 changed files with 17561 additions and 0 deletions

View File

@@ -0,0 +1,116 @@
* Summary: old DocBook SGML parser
* Description: interface for a DocBook SGML non-verifying parser
* This code is DEPRECATED, and should not be used anymore.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(DOCB_PARSER_H__)
/define DOCB_PARSER_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_DOCB_ENABLED)
/include "libxmlrpg/parser"
/include "libxmlrpg/parserInternals"
* Most of the back-end structures from XML and SGML are shared.
d docbParserCtxtPtr...
d s based(######typedef######)
d like(xmlParserCtxtPtr)
d docbParserCtxt ds based(docbParserCtxtPtr)
d likeds(xmlParserCtxt)
d docbSAXHandlerPtr...
d s based(######typedef######)
d like(xmlSAXHandlerPtr)
d docbSAXHandler ds based(docbSAXHandlerPtr)
d likeds(xmlSAXHandler)
d docbParserInputPtr...
d s based(######typedef######)
d like(xmlParserInputPtr)
d docbParserInput...
d ds based(docbParserInputPtr)
d likeds(xmlParserInput)
d docbDocPtr s based(######typedef######)
d like(xmlDocPtr)
* There is only few public functions.
d docbEncodeEntities...
d pr 10i 0 extproc('docbEncodeEntities')
d out * value options(*string) unsigned char *
d outlen * value int *
d in * value options(*string) const unsigned char
d *
d inlen * value int *
d quoteChar 10i 0 value
d docbSAXParseDoc...
d pr extproc('docbSAXParseDoc')
d like(docbDocPtr)
d cur * value options(*string) xmlChar *
d encoding * value options(*string) const char *
d sax value like(docbSAXHandlerPtr)
d userData * value void *
d docbParseDoc pr extproc('docbParseDoc')
d like(docbDocPtr)
d cur * value options(*string) xmlChar *
d encoding * value options(*string) const char *
d docbSAXParseFile...
d pr extproc('docbSAXParseFile')
d like(docbDocPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
d sax value like(docbSAXHandlerPtr)
d userData * value void *
d docbParseFile pr extproc('docbParseFile')
d like(docbDocPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
* Interfaces for the Push mode.
d docbFreeParserCtxt...
d pr extproc('docbFreeParserCtxt')
d ctxt value like(docbParserCtxtPtr)
d docbCreatePushParserCtxt...
d pr extproc('docbCreatePushParserCtxt')
d like(docbParserCtxtPtr)
d sax value like(docbSAXHandlerPtr)
d user_data * value void *
d chunk * value options(*string) const char *
d size 10i 0 value
d filename * value options(*string) const char *
d enc value like(xmlCharEncoding)
d docbParseChunk pr 10i 0 extproc('docbParseChunk')
d ctxt value like(docbParserCtxtPtr)
d chunk * value options(*string) const char *
d size 10i 0 value
d terminate 10i 0 value
d docbCreateFileParserCtxt...
d pr extproc('docbCreateFileParserCtxt')
d like(docbParserCtxtPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
d docbParseDocument...
d pr 10i 0 extproc('docbParseDocument')
d ctxt value like(docbParserCtxtPtr)
/endif LIBXML_DOCB_ENABLED
/endif DOCB_PARSER_H__

View File

@@ -0,0 +1,387 @@
* Summary: interface for an HTML 4.0 non-verifying parser
* Description: this module implements an HTML 4.0 non-verifying parser
* with API compatible with the XML parser ones. It should
* be able to parse "real world" HTML, even if severely
* broken from a specification point of view.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(HTML_PARSER_H__)
/define HTML_PARSER_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/parser"
/if defined(LIBXML_HTML_ENABLED)
* Most of the back-end structures from XML and HTML are shared.
d htmlParserCtxtPtr...
d s based(######typedef######)
d like(xmlParserCtxtPtr)
d htmlParserCtxt ds based(htmlParserCtxtPtr)
d likeds(xmlParserCtxt)
d htmlParserNodeInfoPtr...
d s based(######typedef######)
d like(xmlParserNodeInfoPtr)
d htmlParserNodeInfo...
d ds based(htmlParserNodeInfoPtr)
d likeds(xmlParserNodeInfo)
d htmlSAXHandlerPtr...
d s based(######typedef######)
d like(xmlSAXHandlerPtr)
d htmlSAXHandler ds based(htmlSAXHandlerPtr)
d likeds(xmlSAXHandler)
d htmlParserInputPtr...
d s based(######typedef######)
d like(xmlParserInputPtr)
d htmlParserInput...
d ds based(htmlParserInputPtr)
d likeds(xmlParserInput)
d htmlDocPtr s based(######typedef######)
d like(xmlDocPtr)
d htmlNodePtr s based(######typedef######)
d like(xmlNodePtr)
* Internal description of an HTML element, representing HTML 4.01
* and XHTML 1.0 (which share the same structure).
d htmlElemDescPtr...
d s * based(######typedef######)
d htmlElemDesc ds based(htmlElemDescPtr)
d align qualified
d name * const char *
d startTag 3u 0 Start tag implied ?
d endTag 3u 0 End tag implied ?
d saveEndTag 3u 0 Save end tag ?
d empty 3u 0 Empty element ?
d depr 3u 0 Deprecated element ?
d dtd 3u 0 Loose DTD/Frameset
d isinline 3u 0 Block 0/inline elem?
d desc * const char *
*
* New fields encapsulating HTML structure
*
* Bugs:
* This is a very limited representation. It fails to tell us when
* an element *requires* subelements (we only have whether they're
* allowed or not), and it doesn't tell us where CDATA and PCDATA
* are allowed. Some element relationships are not fully represented:
* these are flagged with the word MODIFIER
*
d subelts * const char * *
d defaultsubelt * const char *
d attrs_opt * const char * *
d attrs_depr * const char * *
d attrs_req * const char * *
* Internal description of an HTML entity.
d htmlEntityDescPtr...
d s * based(######typedef######)
d htmlEntityDesc...
d ds based(htmlEntityDescPtr)
d align qualified
d value 10u 0 Unicode char value
d name * const char *
d desc * const char *
* There is only few public functions.
d htmlTagLookup pr extproc('htmlTagLookup')
d like(htmlElemDescPtr) const
d tag * value options(*string) const xmlChar *
d htmlEntityLookup...
d pr extproc('htmlEntityLookup')
d like(htmlEntityDescPtr) const
d name * value options(*string) const xmlChar *
d htmlEntityValueLookup...
d pr extproc('htmlEntityValueLookup')
d like(htmlEntityDescPtr) const
d value 10u 0 value
d htmlIsAutoClosed...
d pr 10i 0 extproc('htmlIsAutoClosed')
d doc value like(htmlDocPtr)
d elem value like(htmlNodePtr)
d htmlAutoCloseTag...
d pr 10i 0 extproc('htmlAutoCloseTag')
d doc value like(htmlDocPtr)
d name * value options(*string) const xmlChar *
d elem value like(htmlNodePtr)
d htmlParseEntityRef...
d pr extproc('htmlParseEntityRef')
d like(htmlEntityDescPtr) const
d ctxt value like(htmlParserCtxtPtr)
d str * const xmlChar *(*)
d htmlParseCharRef...
d pr 10i 0 extproc('htmlParseCharRef')
d ctxt value like(htmlParserCtxtPtr)
d htmlParseElement...
d pr extproc('htmlParseElement')
d ctxt value like(htmlParserCtxtPtr)
d htmlNewParserCtxt...
d pr extproc('htmlNewParserCtxt')
d like(htmlParserCtxtPtr)
d htmlCreateMemoryParserCtxt...
d pr extproc('htmlCreateMemoryParserCtxt')
d like(htmlParserCtxtPtr)
d buffer * value options(*string) const char *
d size 10i 0 value
d htmlParseDocument...
d pr 10i 0 extproc('htmlParseDocument')
d ctxt value like(htmlParserCtxtPtr)
d htmlSAXParseDoc...
d pr extproc('htmlSAXParseDoc')
d like(htmlDocPtr)
d cur * value options(*string) xmlChar *
d encoding * value options(*string) const char *
d sax value like(htmlSAXHandlerPtr)
d userData * value void *
d htmlParseDoc pr extproc('htmlParseDoc')
d like(htmlDocPtr)
d cur * value options(*string) xmlChar *
d encoding * value options(*string) const char *
d htmlSAXParseFile...
d pr extproc('htmlSAXParseFile')
d like(htmlDocPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
d sax value like(htmlSAXHandlerPtr)
d userData * value void *
d htmlParseFile pr extproc('htmlParseFile')
d like(htmlDocPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
d UTF8ToHtml pr 10i 0 extproc('UTF8ToHtml')
d out 65535 options(*varsize) unsigned char []
d outlen 10i 0
d in * value options(*string) const unsigned char*
d inlen 10i 0
d htmlEncodeEntities...
d pr 10i 0 extproc('htmlEncodeEntities')
d out 65535 options(*varsize) unsigned char []
d outlen 10i 0
d in * value options(*string) const unsigned char*
d inlen 10i 0
d quoteChar 10i 0 value
d htmlIsScriptAttribute...
d pr 10i 0 extproc('htmlIsScriptAttribute')
d name * value options(*string) const xmlChar *
d htmlHandleOmittedElem...
d pr 10i 0 extproc('htmlHandleOmittedElem')
d val 10i 0 value
/if defined(LIBXML_PUSH_ENABLED)
* Interfaces for the Push mode.
d htmlCreatePushParserCtxt...
d pr extproc('htmlCreatePushParserCtxt')
d like(htmlParserCtxtPtr)
d sax value like(htmlSAXHandlerPtr)
d user_data * value void *
d chunk * value options(*string) const char *
d size 10i 0 value
d filename * value options(*string) const char *
d enc value like(xmlCharEncoding)
d htmlParseChunk pr 10i 0 extproc('htmlParseChunk')
d ctxt value like(htmlParserCtxtPtr)
d chunk * value options(*string) const char *
d size 10i 0 value
d terminate 10i 0 value
/endif LIBXML_PUSH_ENABLED
d htmlFreeParserCtxt...
d pr extproc('htmlFreeParserCtxt')
d ctxt value like(htmlParserCtxtPtr)
* New set of simpler/more flexible APIs
* xmlParserOption:
*
* This is the set of XML parser options that can be passed down
* to the xmlReadDoc() and similar calls.
d htmlParserOption...
d s 10i 0 based(######typedef######) enum
d HTML_PARSE_RECOVER... Relaxed parsing
d c X'00000001'
d HTML_PARSE_NODEFDTD... No default doctype
d c X'00000004'
d HTML_PARSE_NOERROR... No error reports
d c X'00000020'
d HTML_PARSE_NOWARNING... No warning reports
d c X'00000040'
d HTML_PARSE_PEDANTIC... Pedantic err reports
d c X'00000080'
d HTML_PARSE_NOBLANKS... Remove blank nodes
d c X'00000100'
d HTML_PARSE_NONET... Forbid net access
d c X'00000800'
d HTML_PARSE_NOIMPLIED... No implied html/body
d c X'00002000'
d HTML_PARSE_COMPACT... compact small txtnod
d c X'00010000'
d HTML_PARSE_IGNORE_ENC... Ignore encoding hint
d c X'00200000'
d htmlCtxtReset pr extproc('htmlCtxtReset')
d ctxt value like(htmlParserCtxtPtr)
d htmlCtxtUseOptions...
d pr 10i 0 extproc('htmlCtxtUseOptions')
d ctxt value like(htmlParserCtxtPtr)
d options 10i 0 value
d htmlReadDoc pr extproc('htmlReadDoc')
d like(htmlDocPtr)
d cur * value options(*string) const xmlChar *
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d htmlReadFile pr extproc('htmlReadFile')
d like(htmlDocPtr)
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d htmlReadMemory pr extproc('htmlReadMemory')
d like(htmlDocPtr)
d buffer * value options(*string) const char *
d size 10i 0 value
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d htmlReadFd pr extproc('htmlReadFd')
d like(htmlDocPtr)
d fd 10i 0 value
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d htmlReadIO pr extproc('htmlReadIO')
d like(htmlDocPtr)
d ioread value like(xmlInputReadCallback)
d ioclose value like(xmlInputCloseCallback)
d ioctx * value void *
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d htmlCtxtReadDoc...
d pr extproc('htmlCtxtReadDoc')
d like(htmlDocPtr)
d ctxt value like(xmlParserCtxtPtr)
d cur * value options(*string) const xmlChar *
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d htmlCtxtReadFile...
d pr extproc('htmlCtxtReadFile')
d like(htmlDocPtr)
d ctxt value like(xmlParserCtxtPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d htmlCtxtReadMemory...
d pr extproc('htmlCtxtReadMemory')
d like(htmlDocPtr)
d ctxt value like(xmlParserCtxtPtr)
d buffer * value options(*string) const char *
d size 10i 0 value
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d htmlCtxtReadFd pr extproc('htmlCtxtReadFd')
d like(htmlDocPtr)
d ctxt value like(xmlParserCtxtPtr)
d fd 10i 0 value
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d htmlCtxtReadIO pr extproc('htmlCtxtReadIO')
d like(htmlDocPtr)
d ctxt value like(xmlParserCtxtPtr)
d ioread value like(xmlInputReadCallback)
d ioclose value like(xmlInputCloseCallback)
d ioctx * value void *
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
* Further knowledge of HTML structure
d htmlStatus s 10i 0 based(######typedef######) enum
d HTML_NA c X'0000' No check at all
d HTML_INVALID c X'0001'
d HTML_DEPRECATED...
d c X'0002'
d HTML_VALID c X'0004'
d HTML_REQUIRED c X'000C' HTML_VALID ored-in
* Using htmlElemDesc rather than name here, to emphasise the fact
* that otherwise there's a lookup overhead
d htmlAttrAllowed...
d pr extproc('htmlAttrAllowed')
d like(htmlStatus)
d #param1 value like(htmlElemDescPtr) const
d #param2 * value options(*string) const xmlChar *
d #param3 10i 0 value
d htmlElementAllowedHere...
d pr 10i 0 extproc('htmlElementAllowedHere')
d #param1 value like(htmlElemDescPtr) const
d #param2 * value options(*string) const xmlChar *
d htmlElementStatusHere...
d pr extproc('htmlElementStatusHere')
d like(htmlStatus)
d #param1 value like(htmlElemDescPtr) const
d #param2 value like(htmlElemDescPtr) const
d htmlNodeStatus pr extproc('htmlNodeStatus')
d like(htmlStatus)
d #param1 value like(htmlNodePtr)
d #param2 10i 0 value
/endif LIBXML_HTML_ENABLED
/endif HTML_PARSER_H__

View File

@@ -0,0 +1,166 @@
* Summary: specific APIs to process HTML tree, especially serialization
* Description: this module implements a few function needed to process
* tree in an HTML specific way.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(HTML_TREE_H__)
/define HTML_TREE_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
/include "libxmlrpg/HTMLparser"
/if defined(LIBXML_HTML_ENABLED)
* HTML_TEXT_NODE:
*
* Macro. A text node in a HTML document is really implemented
* the same way as a text node in an XML document.
d HTML_TEXT_NODE c 3
* HTML_ENTITY_REF_NODE:
*
* Macro. An entity reference in a HTML document is really implemented
* the same way as an entity reference in an XML document.
d HTML_ENTITY_REF_NODE...
d c 5
* HTML_COMMENT_NODE:
*
* Macro. A comment in a HTML document is really implemented
* the same way as a comment in an XML document.
d HTML_COMMENT_NODE...
d c 8
* HTML_PRESERVE_NODE:
*
* Macro. A preserved node in a HTML document is really implemented
* the same way as a CDATA section in an XML document.
d HTML_PRESERVE_NODE...
d c 4
* HTML_PI_NODE:
*
* Macro. A processing instruction in a HTML document is really implemented
* the same way as a processing instruction in an XML document.
d HTML_PI_NODE c 7
d htmlNewDoc pr extproc('htmlNewDoc')
d like(htmlDocPtr)
d URI * value options(*string) const xmlChar *
d ExternalID * value options(*string) const xmlChar *
d htmlNewDocNoDtD...
d pr extproc('htmlNewDocNoDtD')
d like(htmlDocPtr)
d URI * value options(*string) const xmlChar *
d ExternalID * value options(*string) const xmlChar *
d htmlGetMetaEncoding...
d pr * extproc('htmlGetMetaEncoding') const xmlChar *
d doc value like(htmlDocPtr)
d htmlSetMetaEncoding...
d pr 10i 0 extproc('htmlSetMetaEncoding')
d doc value like(htmlDocPtr)
d encoding * value options(*string) const xmlChar *
/if defined(LIBXML_OUTPUT_ENABLED)
d htmlDocDumpMemory...
d pr extproc('htmlDocDumpMemory')
d cur value like(xmlDocPtr)
d mem * value xmlChar * *
d size 10i 0
d htmlDocDumpMemoryFormat...
d pr extproc('htmlDocDumpMemoryFormat')
d cur value like(xmlDocPtr)
d mem * value xmlChar * *
d size 10i 0
d format 10i 0 value
d htmlDocDump pr 10i 0 extproc('htmlDocDump')
d f * value FILE *
d cur value like(xmlDocPtr)
d htmlSaveFile pr 10i 0 extproc('htmlSaveFile')
d filename * value options(*string) const char *
d cur value like(xmlDocPtr)
d htmlNodeDump pr 10i 0 extproc('htmlNodeDump')
d buf value like(xmlBufferPtr)
d doc value like(xmlDocPtr)
d cur value like(xmlNodePtr)
d htmlNodeDumpFile...
d pr extproc('htmlNodeDumpFile')
d out * value FILE *
d doc value like(xmlDocPtr)
d cur value like(xmlNodePtr)
d htmlNodeDumpFileFormat...
d pr 10i 0 extproc('htmlNodeDumpFileFormat')
d out * value FILE *
d doc value like(xmlDocPtr)
d cur value like(xmlNodePtr)
d encoding * value options(*string) const char *
d format 10i 0 value
d htmlSaveFileEnc...
d pr 10i 0 extproc('htmlSaveFileEnc')
d filename * value options(*string) const char *
d cur value like(xmlDocPtr)
d encoding * value options(*string) const char *
d htmlSaveFileFormat...
d pr 10i 0 extproc('htmlSaveFileFormat')
d filename * value options(*string) const char *
d cur value like(xmlDocPtr)
d encoding * value options(*string) const char *
d format 10i 0 value
d htmlNodeDumpFormatOutput...
d pr extproc('htmlNodeDumpFormatOutput')
d buf value like(xmlOutputBufferPtr)
d doc value like(xmlDocPtr)
d cur value like(xmlNodePtr)
d encoding * value options(*string) const char *
d format 10i 0 value
d htmlDocContentDumpOutput...
d pr extproc('htmlDocContentDumpOutput')
d buf value like(xmlOutputBufferPtr)
d cur value like(xmlDocPtr)
d encoding * value options(*string) const char *
d htmlDocContentDumpFormatOutput...
d pr extproc(
d 'htmlDocContentDumpFormatOutput')
d buf value like(xmlOutputBufferPtr)
d cur value like(xmlDocPtr)
d encoding * value options(*string) const char *
d format 10i 0 value
d htmlNodeDumpOutput...
d pr extproc('htmlNodeDumpOutput')
d buf value like(xmlOutputBufferPtr)
d doc value like(xmlDocPtr)
d cur value like(xmlNodePtr)
d encoding * value options(*string) const char *
/endif LIBXML_OUTPUT_ENABLD
d htmlIsBooleanAttr...
d pr 10i 0 extproc('htmlIsBooleanAttr')
d name * value options(*string) const xmlChar *
/endif LIBXML_HTML_ENABLED
/endif HTML_TREE_H__

207
os400/libxmlrpg/SAX.rpgle Normal file
View File

@@ -0,0 +1,207 @@
* Summary: Old SAX version 1 handler, deprecated
* Description: DEPRECATED set of SAX version 1 interfaces used to
* build the DOM tree.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_SAX_H__)
/define XML_SAX_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/parser"
/include "libxmlrpg/xlink"
/if defined(LIBXML_LEGACY_ENABLED)
d getPublicId pr * extproc('getPublicId') const xmlChar *
d ctx * value void *
d getSystemId pr * extproc('getSystemId') const xmlChar *
d ctx * value void *
d setDocumentLocator...
d pr extproc('setDocumentLocator')
d ctx * value void *
d loc value like(xmlSAXLocatorPtr)
d getLineNumber pr 10i 0 extproc('getLineNumber')
d ctx * value void *
d getColumnNumber...
d pr 10i 0 extproc('getColumnNumber')
d ctx * value void *
d isStandalone pr 10i 0 extproc('isStandalone')
d ctx * value void *
d hasInternalSubset...
d pr 10i 0 extproc('hasInternalSubset')
d ctx * value void *
d hasExternalSubset...
d pr 10i 0 extproc('hasExternalSubset')
d ctx * value void *
d internalSubset pr extproc('internalSubset')
d ctx * value void *
d name * value options(*string) const xmlChar *
d ExternalID * value options(*string) const xmlChar *
d SystemID * value options(*string) const xmlChar *
d externalSubset pr extproc('externalSubset')
d ctx * value void *
d name * value options(*string) const xmlChar *
d ExternalID * value options(*string) const xmlChar *
d SystemID * value options(*string) const xmlChar *
d getEntity pr extproc('getEntity')
d like(xmlEntityPtr)
d ctx * value void *
d name * value options(*string) const xmlChar *
d getParameterEntity...
d pr extproc('getParameterEntity')
d like(xmlEntityPtr)
d ctx * value void *
d name * value options(*string) const xmlChar *
d resolveEntity pr extproc('resolveEntity')
d like(xmlParserInputPtr)
d ctx * value void *
d publicId * value options(*string) const xmlChar *
d systemId * value options(*string) const xmlChar *
d entityDecl pr extproc('entityDecl')
d ctx * value void *
d name * value options(*string) const xmlChar *
d type 10i 0 value
d publicId * value options(*string) const xmlChar *
d systemId * value options(*string) const xmlChar *
d content * value options(*string) xmlChar *
d attributeDecl pr extproc('attributeDecl')
d ctx * value void *
d elem * value options(*string) const xmlChar *
d fullname * value options(*string) const xmlChar *
d type 10i 0 value
d def 10i 0 value
d defaultValue * value options(*string) const xmlChar *
d tree value like(xmlEnumerationPtr)
d elementDecl pr extproc('elementDecl')
d ctx * value void *
d name * value options(*string) const xmlChar *
d type 10i 0 value
d content value like(xmlElementContentPtr)
d notationDecl pr extproc('notationDecl')
d ctx * value void *
d name * value options(*string) const xmlChar *
d publicId * value options(*string) const xmlChar *
d systemId * value options(*string) const xmlChar *
d unparsedEntityDecl...
d pr extproc('unparsedEntityDecl')
d ctx * value void *
d name * value options(*string) const xmlChar *
d publicId * value options(*string) const xmlChar *
d systemId * value options(*string) const xmlChar *
d notationName * value options(*string) const xmlChar *
d startDocument pr extproc('startDocument')
d ctx * value void *
d endDocument pr extproc('endDocument')
d ctx * value void *
d attribute pr extproc('attribute')
d ctx * value void *
d fullname * value options(*string) const xmlChar *
d value * value options(*string) const xmlChar *
d startElement pr extproc('startElement')
d ctx * value void *
d fullname * value options(*string) const xmlChar *
d atts * const xmlChar *(*)
d endElement pr extproc('endElement')
d ctx * value void *
d name * value options(*string) const xmlChar *
d reference pr extproc('reference')
d ctx * value void *
d name * value options(*string) const xmlChar *
d characters pr extproc('characters')
d ctx * value void *
d ch * value options(*string) const xmlChar *
d len 10i 0 value
d ignorableWhitespace...
d pr extproc('ignorableWhitespace')
d ctx * value void *
d ch * value options(*string) const xmlChar *
d len 10i 0 value
d processingInstruction...
d pr extproc('processingInstruction')
d ctx * value void *
d target * value options(*string) const xmlChar *
d data * value options(*string) const xmlChar *
d globalNamespace...
d pr extproc('globalNamespace')
d ctx * value void *
d href * value options(*string) const xmlChar *
d prefix * value options(*string) const xmlChar *
d setNamespace pr extproc('setNamespace')
d ctx * value void *
d name * value options(*string) const xmlChar *
d getNamespace pr extproc('getNamespace')
d like(xmlNsPtr)
d ctx * value void *
d checkNamespace pr 10i 0 extproc('checkNamespace')
d ctx * value void *
d nameSpace * value options(*string) xmlChar *
d namespaceDecl pr extproc('namespaceDecl')
d ctx * value void *
d href * value options(*string) const xmlChar *
d prefix * value options(*string) const xmlChar *
d comment pr extproc('comment')
d ctx * value void *
d value * value options(*string) const xmlChar *
d cdataBlock pr extproc('cdataBlock')
d ctx * value void *
d value * value options(*string) const xmlChar *
d len 10i 0 value
/if defined(LIBXML_SAX1_ENABLED)
d initxmlDefaultSAXHandler...
d pr extproc('initxmlDefaultSAXHandler')
d hdlr like(xmlSAXHandlerV1)
d warning 10i 0 value
/if defined(LIBXML_HTML_ENABLED)
d inithtmlDefaultSAXHandler...
d pr extproc('inithtmlDefaultSAXHandler')
d hdlr like(xmlSAXHandlerV1)
/endif
/if defined(LIBXML_DOCB_ENABLED)
d initdocbDefaultSAXHandler...
d pr extproc('initdocbDefaultSAXHandler')
d hdlr like(xmlSAXHandlerV1)
/endif
/endif LIBXML_SAX1_ENABLED
/endif LIBXML_LEGACY_ENABLD
/endif XML_SAX_H__

248
os400/libxmlrpg/SAX2.rpgle Normal file
View File

@@ -0,0 +1,248 @@
* Summary: SAX2 parser interface used to build the DOM tree
* Description: those are the default SAX2 interfaces used by
* the library when building DOM tree.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_SAX2_H__)
/define XML_SAX2_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/parser"
/include "libxmlrpg/xlink"
d xmlSAX2GetPublicId...
d pr * extproc('xmlSAX2getPublicId') const xmlChar *
d ctx * value void *
d xmlSAX2GetSystemId...
d pr * extproc('xmlSAX2getSystemId') const xmlChar *
d ctx * value void *
d xmlSAX2SetDocumentLocator...
d pr extproc('xmlSAX2SetDocumentLocator')
d ctx * value void *
d loc value like(xmlSAXLocatorPtr)
d xmlSAX2GetLineNumber...
d pr 10i 0 extproc('xmlSAX2GetLineNumber')
d ctx * value void *
d xmlSAX2GetColumnNumber...
d pr 10i 0 extproc('xmlSAX2GetColumnNumber')
d ctx * value void *
d xmlSAX2IsStandalone...
d pr 10i 0 extproc('xmlSAX2IsStandalone')
d ctx * value void *
d xmlSAX2HasInternalSubset...
d pr 10i 0 extproc('xmlSAX2HasInternalSubset')
d ctx * value void *
d xmlSAX2HasExternalSubset...
d pr 10i 0 extproc('xmlSAX2HasExternalSubset')
d ctx * value void *
d xmlSAX2InternalSubset...
d pr extproc('xmlSAX2InternalSubset')
d ctx * value void *
d name * value options(*string) const xmlChar *
d ExternalID * value options(*string) const xmlChar *
d SystemID * value options(*string) const xmlChar *
d xmlSAX2ExternalSubset...
d pr extproc('xmlSAX2ExternalSubset')
d ctx * value void *
d name * value options(*string) const xmlChar *
d ExternalID * value options(*string) const xmlChar *
d SystemID * value options(*string) const xmlChar *
d xmlSAX2GetEntity...
d pr extproc('xmlSAX2GetEntity')
d like(xmlEntityPtr)
d ctx * value void *
d name * value options(*string) const xmlChar *
d xmlSAX2GetParameterEntity...
d pr extproc('xmlSAX2GetParameterEntity')
d like(xmlEntityPtr)
d ctx * value void *
d name * value options(*string) const xmlChar *
d xmlSAX2ResolveEntity...
d pr extproc('xmlSAX2ResolveEntity')
d like(xmlParserInputPtr)
d ctx * value void *
d publicId * value options(*string) const xmlChar *
d systemId * value options(*string) const xmlChar *
d xmlSAX2EntityDecl...
d pr extproc('xmlSAX2EntityDecl')
d ctx * value void *
d name * value options(*string) const xmlChar *
d type 10i 0 value
d publicId * value options(*string) const xmlChar *
d systemId * value options(*string) const xmlChar *
d content * value options(*string) xmlChar *
d xmlSAX2AttributeDecl...
d pr extproc('xmlSAX2AttributeDecl')
d ctx * value void *
d elem * value options(*string) const xmlChar *
d fullname * value options(*string) const xmlChar *
d type 10i 0 value
d def 10i 0 value
d defaultValue * value options(*string) const xmlChar *
d tree value like(xmlEnumerationPtr)
d xmlSAX2ElementDecl...
d pr extproc('xmlSAX2ElementDecl')
d ctx * value void *
d name * value options(*string) const xmlChar *
d type 10i 0 value
d content value like(xmlElementContentPtr)
d xmlSAX2NotationDecl...
d pr extproc('xmlSAX2NotationDecl')
d ctx * value void *
d name * value options(*string) const xmlChar *
d publicId * value options(*string) const xmlChar *
d systemId * value options(*string) const xmlChar *
d xmlSAX2UnparsedEntityDecl...
d pr extproc('xmlSAX2UnparsedEntityDecl')
d ctx * value void *
d name * value options(*string) const xmlChar *
d publicId * value options(*string) const xmlChar *
d systemId * value options(*string) const xmlChar *
d notationName * value options(*string) xmlChar *
d xmlSAX2StartDocument...
d pr extproc('xmlSAX2StartDocument')
d ctx * value void *
d xmlSAX2EndDocument...
d pr extproc('xmlSAX2EndDocument')
d ctx * value void *
/undefine XML_TESTVAL
/if defined(LIBXML_SAX1_ENABLED)
/define XML_TESTVAL
/elseif defined(LIBXML_HTML_ENABLED)
/define XML_TESTVAL
/elseif defined(LIBXML_WRITER_ENABLED)
/define XML_TESTVAL
/elseif defined(LIBXML_DOCB_ENABLED)
/endif
/if defined(XML_TESTVAL)
d xmlSAX2StartElement...
d pr extproc('xmlSAX2StartElement')
d ctx * value void *
d fullname * value options(*string) const xmlChar *
d atts * const xmlChar *(*)
d xmlSAX2EndElement...
d pr extproc('xmlSAX2EndElement')
d ctx * value void *
d name * value options(*string) const xmlChar *
/undefine XML_TESTVAL
/endif
d xmlSAX2StartElementNs...
d pr extproc('xmlSAX2StartElementNs')
d ctx * value void *
d localname * value options(*string) const xmlChar *
d prefix * value options(*string) const xmlChar *
d URI * value options(*string) const xmlChar *
d nb_namespaces 10i 0 value
d namespaces * value const xmlChar *(*)
d nb_attributes 10i 0 value
d nb_defaulted 10i 0 value
d attributes * const xmlChar *(*)
d xmlSAX2EndElementNs...
d pr extproc('xmlSAX2EndElementNs')
d ctx * value void *
d localname * value options(*string) const xmlChar *
d prefix * value options(*string) const xmlChar *
d URI * value options(*string) const xmlChar *
d xmlSAX2Reference...
d pr extproc('xmlSAX2Reference')
d ctx * value void *
d name * value options(*string) const xmlChar *
d xmlSAX2Characters...
d pr extproc('xmlSAX2Characters')
d ctx * value void *
d ch * value options(*string) const xmlChar *
d len 10i 0 value
d xmlSAX2IgnorableWhitespace...
d pr extproc('xmlSAX2IgnorableWhitespace')
d ctx * value void *
d ch * value options(*string) const xmlChar *
d len 10i 0 value
d xmlSAX2ProcessingInstruction...
d pr extproc(
d 'xmlSAX2ProcessingInstruction')
d ctx * value void *
d target * value options(*string) const xmlChar *
d data * value options(*string) const xmlChar *
d xmlSAX2Comment...
d pr extproc('xmlSAX2Comment')
d ctx * value void *
d value * value options(*string) const xmlChar *
d xmlSAX2CDataBlock...
d pr extproc('xmlSAX2CDataBlock')
d ctx * value void *
d value * value options(*string) const xmlChar *
d len 10i 0 value
/if defined(LIBXML_SAX1_ENABLED)
d xmlSAXDefaultVersion...
d pr 10i 0 extproc('xmlSAXDefaultVersion')
d version 10i 0 value
/endif LIBXML_SAX1_ENABLED
d xmlSAXVersion pr 10i 0 extproc('xmlSAXVersion')
d hdlr like(xmlSAXHandler)
d version 10i 0 value
d xmlSAX2InitDefaultSAXHandler...
d pr extproc(
d 'xmlSAX2InitDefaultSAXHandler')
d hdlr like(xmlSAXHandler)
d warning 10i 0 value
/if defined(LIBXML_HTML_ENABLED)
d xmlSAX2InitHtmlDefaultSAXHandler...
d pr extproc(
d 'xmlSAX2InitHtmlDefaultSAXHandler')
d hdlr like(xmlSAXHandler)
d htmlDefaultSAXHandlerInit...
d pr extproc('htmlDefaultSAXHandlerInit')
/endif
/if defined(LIBXML_DOCB_ENABLED)
d xmlSAX2InitDocbDefaultSAXHandler...
d pr extproc(
d 'xmlSAX2InitDocbDefaultSAXHandler')
d hdlr like(xmlSAXHandler)
d docbDefaultSAXHandlerInit...
d pr extproc('docbDefaultSAXHandlerInit')
/endif
d xmlDefaultSAXHandlerInit...
d pr extproc('xmlDefaultSAXHandlerInit')
/endif XML_SAX2_H__

119
os400/libxmlrpg/c14n.rpgle Normal file
View File

@@ -0,0 +1,119 @@
* Summary: Provide Canonical XML and Exclusive XML Canonicalization
* Description: the c14n modules provides a
*
* "Canonical XML" implementation
* http://www.w3.org/TR/xml-c14n
*
* and an
*
* "Exclusive XML Canonicalization" implementation
* http://www.w3.org/TR/xml-exc-c14n
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_C14N_H__)
/define XML_C14N_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_C14N_ENABLED)
/if defined(LIBXML_OUTPUT_ENABLED)
/include "libxmlrpg/tree"
/include "libxmlrpg/xpath"
* XML Canonicazation
* http://www.w3.org/TR/xml-c14n
*
* Exclusive XML Canonicazation
* http://www.w3.org/TR/xml-exc-c14n
*
* Canonical form of an XML document could be created if and only if
* a) default attributes (if any) are added to all nodes
* b) all character and parsed entity references are resolved
* In order to achive this in libxml2 the document MUST be loaded with
* following global setings:
*
* xmlLoadExtDtdDefaultValue = XML_DETECT_IDS <20> XML_COMPLETE_ATTRS;
* xmlSubstituteEntitiesDefault(1);
*
* or corresponding parser context setting:
* xmlParserCtxtPtr ctxt;
*
* ...
* ctxt->loadsubset = XML_DETECT_IDS <20> XML_COMPLETE_ATTRS;
* ctxt->replaceEntities = 1;
* ...
* xmlC14NMode:
*
* Predefined values for C14N modes
d xmlBufferAllocationScheme...
d xmlC14NMode s 10i 0 based(######typedef######) enum
d XML_C14N_1_0 c 0 Original C14N 1.0
d XML_C14N_EXCLUSIVE_1_0... Exclusive C14N 1.0
d c 1
d XML_C14N_1_1 c 2 C14N 1.1 spec
d xmlC14NDocSaveTo...
d pr 10i 0 extproc('xmlC14NDocSaveTo')
d doc value like(xmlDocPtr)
d nodes value like(xmlNodeSetPtr)
d mode 10i 0 value
d inclusive_ns_prefixes...
d * xmlChar *(*)
d with_comments 10i 0 value
d buf value like(xmlOutputBufferPtr)
d xmlC14NDocDumpMemory...
d pr 10i 0 extproc('xmlC14NDocDumpMemory')
d doc value like(xmlDocPtr)
d nodes value like(xmlNodeSetPtr)
d mode 10i 0 value
d inclusive_ns_prefixes...
d * xmlChar *(*)
d with_comments 10i 0 value
d doc_txt_ptr * xmlChar *(*)
d xmlC14NDocSave pr 10i 0 extproc('xmlC14NDocSave')
d doc value like(xmlDocPtr)
d nodes value like(xmlNodeSetPtr)
d mode 10i 0 value
d inclusive_ns_prefixes...
d * xmlChar *(*)
d with_comments 10i 0 value
d filename * value options(*string) const char *
d compression 10i 0 value
* This is the core C14N function
* xmlC14NIsVisibleCallback:
* @user_data: user data
* @node: the curent node
* @parent: the parent node
*
* Signature for a C14N callback on visible nodes
*
* Returns 1 if the node should be included
d xmlC14NIsVisibleCallback...
d s * based(######typedef######)
d procptr
d xmlC14NExecute pr 10i 0 extproc('xmlC14NExecute')
d doc value like(xmlDocPtr)
d is_visible_callback...
d value like(xmlC14NIsVisibleCallback)
d user_data * value void *
d mode 10i 0 value
d inclusive_ns_prefixes...
d * xmlChar *(*)
d with_comments 10i 0 value
d buf value like(xmlOutputBufferPtr)
/endif LIBXML_OUTPUT_ENABLD
/endif LIBXML_C14N_ENABLED
/endif XML_C14N_H__

View File

@@ -0,0 +1,235 @@
* Summary: interfaces to the Catalog handling system
* Description: the catalog module implements the support for
* XML Catalogs and SGML catalogs
*
* SGML Open Technical Resolution TR9401:1997.
* http://www.jclark.com/sp/catalog.htm
*
* XML Catalogs Working Draft 06 August 2001
* http://www.oasis-open.org/committees/entity/spec-2001-08-06.html
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_CATALOG_H__)
/define XML_CATALOG_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/xmlstring"
/include "libxmlrpg/tree"
/if defined(LIBXML_CATALOG_ENABLED)
* XML_CATALOGS_NAMESPACE:
*
* The namespace for the XML Catalogs elements.
d XML_CATALOGS_NAMESPACE...
d c 'urn:oasis:names:+
d tc:entity:xmlns:xml:catalog'
* XML_CATALOG_PI:
*
* The specific XML Catalog Processing Instuction name.
d XML_CATALOG_PI c 'oasis-xml-catalog'
* The API is voluntarily limited to general cataloging.
d xmlCatalogPrefer...
d s 10u 0 based(######typedef######) enum type
d XML_CATA_PREFER_NONE...
d c 0
d XML_CATA_PREFER_PUBLIC...
d c 1
d XML_CATA_PREFER_SYSTEM...
d c 2
d xmlCatalogAllow...
d s 10u 0 based(######typedef######) enum type
d XML_CATA_ALLOW_NONE...
d c 0
d XML_CATA_ALLOW_GLOBAL...
d c 1
d XML_CATA_ALLOW_DOCUMENT...
d c 2
d XML_CATA_ALLOW_ALL...
d c 3
d xmlCatalogPtr s * based(######typedef######)
* Operations on a given catalog.
d xmlNewCatalog pr extproc('xmlNewCatalog')
d like(xmlCatalogPtr)
d sgml 10i 0 value
d xmlLoadACatalog...
d pr extproc('xmlLoadACatalog')
d like(xmlCatalogPtr)
d filename * value options(*string) const char *
d xmlLoadSGMLSuperCatalog...
d pr extproc('xmlLoadSGMLSuperCatalog')
d like(xmlCatalogPtr)
d filename * value options(*string) const char *
d xmlConvertSGMLCatalog...
d pr 10i 0 extproc('xmlConvertSGMLCatalog')
d catal value like(xmlCatalogPtr)
d xmlACatalogAdd pr 10i 0 extproc('xmlACatalogAdd')
d catal value like(xmlCatalogPtr)
d type * value options(*string) const xmlChar *
d orig * value options(*string) const xmlChar *
d replace * value options(*string) const xmlChar *
d xmlACatalogRemove...
d pr 10i 0 extproc('xmlACatalogRemove')
d catal value like(xmlCatalogPtr)
d value * value options(*string) const xmlChar *
d xmlACatalogResolve...
d pr * extproc('xmlACatalogResolve') xmlChar *
d catal value like(xmlCatalogPtr)
d pubID * value options(*string) const xmlChar *
d sysID * value options(*string) const xmlChar *
d xmlACatalogResolveSystem...
d pr * extproc('xmlACatalogResolveSystem') xmlChar *
d catal value like(xmlCatalogPtr)
d sysID * value options(*string) const xmlChar *
d xmlACatalogResolvePublic...
d pr * extproc('xmlACatalogResolvePublic') xmlChar *
d catal value like(xmlCatalogPtr)
d pubID * value options(*string) const xmlChar *
d xmlACatalogResolveURI...
d pr * extproc('xmlACatalogResolveURI') xmlChar *
d catal value like(xmlCatalogPtr)
d URI * value options(*string) const xmlChar *
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlACatalogDump...
d pr extproc('xmlACatalogDump')
d catal value like(xmlCatalogPtr)
d out * value FILE *
/endif LIBXML_OUTPUT_ENABLD
d xmlFreeCatalog pr extproc('xmlFreeCatalog')
d catal value like(xmlCatalogPtr)
d xmlCatalogIsEmpty...
d pr 10i 0 extproc('xmlCatalogIsEmpty')
d catal value like(xmlCatalogPtr)
* Global operations.
d xmlInitializeCatalog...
d pr extproc('xmlInitializeCatalog')
d xmlLoadCatalog pr 10i 0 extproc('xmlLoadCatalog')
d filename * value options(*string) const char *
d xmlLoadCatalogs...
d pr extproc('xmlLoadCatalogs')
d paths * value options(*string) const char *
d xmlCatalogCleanup...
d pr extproc('xmlCatalogCleanup')
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlCatalogDump pr extproc('xmlCatalogDump')
d out * value FILE *
/endif LIBXML_OUTPUT_ENABLD
d xmlCatalogResolve...
d pr * extproc('xmlCatalogResolve') xmlChar *
d pubID * value options(*string) const xmlChar *
d sysID * value options(*string) const xmlChar *
d xmlCatalogResolveSystem...
d pr * extproc('xmlCatalogResolveSystem') xmlChar *
d sysID * value options(*string) const xmlChar *
d xmlCatalogResolvePublic...
d pr * extproc('xmlCatalogResolvePublic') xmlChar *
d pubID * value options(*string) const xmlChar *
d xmlCatalogResolveURI...
d pr * extproc('xmlCatalogResolveURI') xmlChar *
d URI * value options(*string) const xmlChar *
d xmlCatalogAdd pr 10i 0 extproc('xmlCatalogAdd')
d type * value options(*string) const xmlChar *
d orig * value options(*string) const xmlChar *
d replace * value options(*string) const xmlChar *
d xmlCatalogRemove...
d pr 10i 0 extproc('xmlCatalogRemove')
d value * value options(*string) const xmlChar *
d xmlParseCatalogFile...
d pr extproc('xmlParseCatalogFile')
d like(xmlDocPtr)
d filename * value options(*string) const char *
d xmlCatalogConvert...
d pr 10i 0 extproc('xmlCatalogConvert')
* Strictly minimal interfaces for per-document catalogs used
* by the parser.
d xmlCatalogFreeLocal...
d pr extproc('xmlCatalogFreeLocal')
d catalogs * value void *
d xmlCatalogAddLocal...
d pr * extproc('xmlCatalogAddLocal') void *
d catalogs * value void *
d URL * value options(*string) const xmlChar *
d xmlCatalogLocalResolve...
d pr * extproc('xmlCatalogLocalResolve') xmlChar *
d catalogs * value void *
d pubID * value options(*string) const xmlChar *
d sysID * value options(*string) const xmlChar *
d xmlCatalogLocalResolveURI...
d pr * extproc('xmlCatalogLocalResolveURI') xmlChar *
d catalogs * value void *
d URI * value options(*string) const xmlChar *
* Preference settings.
d xmlCatalogSetDebug...
d pr 10i 0 extproc('xmlCatalogSetDebug')
d level 10i 0 value
d xmlCatalogSetDefaultPrefer...
d pr extproc('xmlCatalogSetDefaultPrefer')
d like(xmlCatalogPrefer)
d prefer value like(xmlCatalogPrefer)
d xmlCatalogSetDefaults...
d pr extproc('xmlCatalogSetDefaults')
d allow value like(xmlCatalogAllow)
d xmlCatalogGetDefaults...
d pr extproc('xmlCatalogGetDefaults')
d like(xmlCatalogAllow)
* DEPRECATED interfaces
d xmlCatalogGetSystem...
d pr * extproc('xmlCatalogGetSystem') const xmlChar *
d sysID * value options(*string) const xmlChar *
d xmlCatalogGetPublic...
d pr * extproc('xmlCatalogGetPublic') const xmlChar *
d pubID * value options(*string) const xmlChar *
/endif LIBXML_CATALOG_ENBLD
/endif XML_CATALOG_H__

View File

@@ -0,0 +1,97 @@
* Summary: Unicode character range checking
* Description: this module exports interfaces for the character
* range validation APIs
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_CHVALID_H__)
/define XML_CHVALID_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/xmlstring"
* Define our typedefs and structures
d xmlChSRangePtr s * based(######typedef######)
d xmlChSRange ds based(xmlChSRangePtr)
d align qualified
d low 5u 0
d high 5u 0
d xmlChLRangePtr s * based(######typedef######)
d xmlChLRange ds based(xmlChLRangePtr)
d align qualified
d low 10u 0
d high 10u 0
d xmlChRangeGroupPtr...
d s * based(######typedef######)
d xmlChRangeGroup...
d ds based(xmlChRangeGroupPtr)
d align qualified
d nbShortRange 10i 0
d nbLongRange 10i 0
d shortRange like(xmlChSRangePtr)
d longRange like(xmlChLRangePtr)
* Range checking routine
d xmlCharInRange pr 10i 0 extproc('xmlCharInRange')
d val 10u 0 value
d group like(xmlChRangeGroupPtr) const
d xmlIsBaseCharGroup...
d ds import('xmlIsBaseCharGroup')
d likeds(xmlChRangeGroup) const
d xmlIsCharGroup...
d ds import('xmlIsCharGroup')
d likeds(xmlChRangeGroup) const
d xmlIsCombiningGroup...
d ds import('xmlIsCombiningGroup')
d likeds(xmlChRangeGroup) const
d xmlIsDigitGroup...
d ds import('xmlIsDigitGroup')
d likeds(xmlChRangeGroup) const
d xmlIsExtenderGroup...
d ds import('xmlIsExtenderGroup')
d likeds(xmlChRangeGroup) const
d xmlIsIdeographicGroup...
d ds import('xmlIsIdeographicGroup')
d likeds(xmlChRangeGroup) const
d xmlIsBaseChar pr 10i 0 extproc('xmlIsBaseChar')
d ch 10u 0 value
d xmlIsBlank pr 10i 0 extproc('xmlIsBlank')
d ch 10u 0 value
d xmlIsChar pr 10i 0 extproc('xmlIsChar')
d ch 10u 0 value
d xmlIsCombining pr 10i 0 extproc('xmlIsCombining')
d ch 10u 0 value
d xmlIsDigit pr 10i 0 extproc('xmlIsDigit')
d ch 10u 0 value
d xmlIsExtender pr 10i 0 extproc('xmlIsExtender')
d ch 10u 0 value
d xmlIsIdeographic...
d pr 10i 0 extproc('xmlIsIdeographic')
d ch 10u 0 value
d xmlIsPubidChar pr 10i 0 extproc('xmlIsPubidChar')
d ch 10u 0 value
/endif XML_CHVALID_H__

View File

@@ -0,0 +1,241 @@
* Summary: Tree debugging APIs
* Description: Interfaces to a set of routines used for debugging the tree
* produced by the XML parser.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(DEBUG_XML__)
/define DEBUG_XML__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
/if defined(LIBXML_DEBUG_ENABLED)
/include "libxmlrpg/xpath"
* The standard Dump routines.
d xmlDebugDumpString...
d pr extproc('xmlDebugDumpString')
d output * value FILE *
d str * value options(*string) const xmlChar *
d xmlDebugDumpAttr...
d pr extproc('xmlDebugDumpAttr')
d output * value FILE *
d attr value like(xmlAttrPtr)
d depth 10i 0 value
d xmlDebugDumpAttrList...
d pr extproc('xmlDebugDumpAttrList')
d output * value FILE *
d attr value like(xmlAttrPtr)
d depth 10i 0 value
d xmlDebugDumpOneNode...
d pr extproc('xmlDebugDumpOneNode')
d output * value FILE *
d node value like(xmlNodePtr)
d depth 10i 0 value
d xmlDebugDumpNode...
d pr extproc('xmlDebugDumpNode')
d output * value FILE *
d node value like(xmlNodePtr)
d depth 10i 0 value
d xmlDebugDumpNodeList...
d pr extproc('xmlDebugDumpNodeList')
d output * value FILE *
d node value like(xmlNodePtr)
d depth 10i 0 value
d xmlDebugDumpDocumentHead...
d pr extproc('xmlDebugDumpDocumentHead')
d output * value FILE *
d doc value like(xmlDocPtr)
d xmlDebugDumpDocument...
d pr extproc('xmlDebugDumpDocument')
d output * value FILE *
d doc value like(xmlDocPtr)
d xmlDebugDumpDTD...
d pr extproc('xmlDebugDumpDTD')
d output * value FILE *
d dtd value like(xmlDtdPtr)
d xmlDebugDumpEntities...
d pr extproc('xmlDebugDumpEntities')
d output * value FILE *
d doc value like(xmlDocPtr)
****************************************************************
* *
* Checking routines *
* *
****************************************************************
d xmlDebugCheckDocument...
d pr 10i 0 extproc('xmlDebugCheckDocument')
d output * value FILE *
d doc value like(xmlDocPtr)
****************************************************************
* *
* XML shell helpers *
* *
****************************************************************
d xmlLsOneNode pr extproc('xmlLsOneNode')
d output * value FILE *
d node value like(xmlNodePtr)
d xmlLsCountNode pr 10i 0 extproc('xmlLsCountNode')
d node value like(xmlNodePtr)
d xmlBoolToText pr * extproc('xmlBoolToText') const char *
d boolval 10i 0 value
****************************************************************
* *
* The XML shell related structures and functions *
* *
****************************************************************
/if defined(LIBXML_XPATH_ENABLED)
* xmlShellReadlineFunc:
* @prompt: a string prompt
*
* This is a generic signature for the XML shell input function.
*
* Returns a string which will be freed by the Shell.
d xmlShellReadlineFunc...
d s * based(######typedef######)
d procptr
* xmlShellCtxt:
*
* A debugging shell context.
* TODO: add the defined function tables.
d xmlShellCtxtPtr...
d s * based(######typedef######)
d xmlSchellCtxt ds based(xmlShellCtxtPtr)
d align qualified
d filename * char *
d doc like(xmlDocPtr)
d node like(xmlNodePtr)
d pctxt like(xmlXPathContextPtr)
d loaded 10i 0
d output * FILE *
d input like(xmlShellReadlineFunc)
* xmlShellCmd:
* @ctxt: a shell context
* @arg: a string argument
* @node: a first node
* @node2: a second node
*
* This is a generic signature for the XML shell functions.
*
* Returns an int, negative returns indicating errors.
d xmlShellCmd s * based(######typedef######)
d procptr
d xmlShellPrintXPathError...
d pr extproc('xmlShellPrintXPathError')
d errorType 10i 0 value
d arg * value options(*string) const char *
d xmlShellPrintXPathResult...
d pr extproc('xmlShellPrintXPathResult')
d list value like(xmlXPathObjectPtr)
d xmlShellList pr 10i 0 extproc('xmlShellList')
d ctxt value like(xmlShellCtxtPtr)
d arg * value options(*string) char *
d node value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
d xmlShellBase pr 10i 0 extproc('xmlShellBase')
d ctxt value like(xmlShellCtxtPtr)
d arg * value options(*string) char *
d node value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
d xmlShellDir pr 10i 0 extproc('xmlShellDir')
d ctxt value like(xmlShellCtxtPtr)
d arg * value options(*string) char *
d node value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
d xmlShellLoad pr 10i 0 extproc('xmlShellLoad')
d ctxt value like(xmlShellCtxtPtr)
d filename * value options(*string) char *
d node value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlShellPrintNode...
d pr extproc('xmlShellPrintNode')
d node value like(xmlNodePtr)
d xmlShellCat pr 10i 0 extproc('xmlShellCat')
d ctxt value like(xmlShellCtxtPtr)
d arg * value options(*string) char *
d node value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
d xmlShellWrite pr 10i 0 extproc('xmlShellWrite')
d ctxt value like(xmlShellCtxtPtr)
d filename * value options(*string) char *
d node value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
d xmlShellSave pr 10i 0 extproc('xmlShellSave')
d ctxt value like(xmlShellCtxtPtr)
d filename * value options(*string) char *
d node value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
/endif LIBXML_OUTPUT_ENABLD
/if defined(LIBXML_VALID_ENABLED)
d xmlShellValidate...
d pr 10i 0 extproc('xmlShellValidate')
d ctxt value like(xmlShellCtxtPtr)
d dtd * value options(*string) char *
d node value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
/endif LIBXML_VALID_ENABLED
d xmlShellDu pr 10i 0 extproc('xmlShellDu')
d ctxt value like(xmlShellCtxtPtr)
d arg * value options(*string) char *
d tree value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
d xmlShellPwd pr 10i 0 extproc('xmlShellPwd')
d ctxt value like(xmlShellCtxtPtr)
d buffer * value options(*string) char *
d node value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
* The Shell interface.
d xmlShell pr extproc('xmlShell')
d doc value like(xmlDocPtr)
d filename * value options(*string) char *
d input value like(xmlShellReadlineFunc)
d output * value FILE *
/endif LIBXML_XPATH_ENABLED
/endif LIBXML_DEBUG_ENABLED
/endif DEBUG_XML__

View File

@@ -0,0 +1,78 @@
* Summary: string dictionary
* Description: dictionary of reusable strings, just used to avoid
* allocation and freeing operations.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_DICT_H__)
/define XML_DICT_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
* The dictionary.
d xmlDictPtr s * based(######typedef######)
* Initializer
d xmlInitializeDict...
d pr 10i 0 extproc('xmlInitializeDict')
* Constructor and destructor.
d xmlDictCreate pr extproc('xmlDictCreate')
d like(xmlDictPtr)
d xmlDictSetLimit...
d pr 10u 0 extproc('xmlDictSetLimit') size_t
d dict value like(xmlDictPtr)
d limit 10u 0 value size_t
d xmlDictGetUsage...
d pr 10u 0 extproc('xmlDictGetUsage') size_t
d dict value like(xmlDictPtr)
d xmlDictCreateSub...
d pr extproc('xmlDictCreateSub')
d like(xmlDictPtr)
d sub value like(xmlDictPtr)
d xmlDictReference...
d pr 10i 0 extproc('xmlDictGetReference')
d dict value like(xmlDictPtr)
d xmlDictFree pr extproc('xmlDictFree')
d dict value like(xmlDictPtr)
* Lookup of entry in the dictionary.
d xmlDictLookup pr * extproc('xmlDictLookup') const xmlChar *
d dict value like(xmlDictPtr)
d name * value options(*string) const xmlChar *
d len 10i 0 value
d xmlDictExists pr * extproc('xmlDictExists') const xmlChar *
d dict value like(xmlDictPtr)
d name * value options(*string) const xmlChar *
d len 10i 0 value
d xmlDictQLookup pr * extproc('xmlDictQLookup') const xmlChar *
d dict value like(xmlDictPtr)
d name * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d xmlDictOwns pr 10i 0 extproc('xmlDictOwns')
d dict value like(xmlDictPtr)
d str * value options(*string) const xmlChar *
d xmlDictSize pr 10i 0 extproc('xmlDictSize')
d dict value like(xmlDictPtr)
* Cleanup function
d xmlDictCleanup pr extproc('xmlDictCleanup')
/endif ! XML_DICT_H__

View File

@@ -0,0 +1,274 @@
* Summary: interface for the encoding conversion functions
* Description: interface for the encoding conversion functions needed for
* XML basic encoding and iconv() support.
*
* Related specs are
* rfc2044 (UTF-8 and UTF-16) F. Yergeau Alis Technologies
* [ISO-10646] UTF-8 and UTF-16 in Annexes
* [ISO-8859-1] ISO Latin-1 characters codes.
* [UNICODE] The Unicode Consortium, "The Unicode Standard --
* Worldwide Character Encoding -- Version 1.0", Addison-
* Wesley, Volume 1, 1991, Volume 2, 1992. UTF-8 is
* described in Unicode Technical Report #4.
* [US-ASCII] Coded Character Set--7-bit American Standard Code for
* Information Interchange, ANSI X3.4-1986.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_CHAR_ENCODING_H__)
/define XML_CHAR_ENCODING_H__
/include "libxmlrpg/xmlversion"
* xmlCharEncoding:
*
* Predefined values for some standard encodings.
* Libxml does not do beforehand translation on UTF8 and ISOLatinX.
* It also supports ASCII, ISO-8859-1, and UTF16 (LE and BE) by default.
*
* Anything else would have to be translated to UTF8 before being
* given to the parser itself. The BOM for UTF16 and the encoding
* declaration are looked at and a converter is looked for at that
* point. If not found the parser stops here as asked by the XML REC. A
* converter can be registered by the user
* xmlRegisterCharEncodingHandler but the current form doesn't allow
* stateful transcoding (a serious problem agreed !). If iconv has been
* found it will be used automatically and allow stateful transcoding,
* the simplest is then to be sure to enable iconv and to provide iconv
* libs for the encoding support needed.
*
* Note that the generic "UTF-16" is not a predefined value. Instead, only
* the specific UTF-16LE and UTF-16BE are present.
d xmlCharEncoding...
d s 10i 0 based(######typedef######) enum
d XML_CHAR_ENCODING_ERROR... No encoding detected
d c -1
d XML_CHAR_ENCODING_NONE... No encoding detected
d c 0
d XML_CHAR_ENCODING_UTF8... UTF-8
d c 1
d XML_CHAR_ENCODING_UTF16LE... UTF-16 little endian
d c 2
d XML_CHAR_ENCODING_UTF16BE... UTF-16 big endian
d c 3
d XML_CHAR_ENCODING_UCS4LE... UCS-4 little endian
d c 4
d XML_CHAR_ENCODING_UCS4BE... UCS-4 big endian
d c 5
d XML_CHAR_ENCODING_EBCDIC... EBCDIC uh!
d c 6
d XML_CHAR_ENCODING_UCS4_2143... UCS-4 unusual order
d c 7
d XML_CHAR_ENCODING_UCS4_3412... UCS-4 unusual order
d c 8
d XML_CHAR_ENCODING_UCS2... UCS-2
d c 9
d XML_CHAR_ENCODING_8859_1... ISO-8859-1 ISOLatin1
d c 10
d XML_CHAR_ENCODING_8859_2... ISO-8859-2 ISOLatin2
d c 11
d XML_CHAR_ENCODING_8859_3... ISO-8859-3
d c 12
d XML_CHAR_ENCODING_8859_4... ISO-8859-4
d c 13
d XML_CHAR_ENCODING_8859_5... ISO-8859-5
d c 14
d XML_CHAR_ENCODING_8859_6... ISO-8859-6
d c 15
d XML_CHAR_ENCODING_8859_7... ISO-8859-7
d c 16
d XML_CHAR_ENCODING_8859_8... ISO-8859-8
d c 17
d XML_CHAR_ENCODING_8859_9... ISO-8859-9
d c 18
d XML_CHAR_ENCODING_2022_JP... ISO-2022-JP
d c 19
d XML_CHAR_ENCODING_SHIFT_JIS... Shift_JIS
d c 20
d XML_CHAR_ENCODING_EUC_JP... EUC-JP
d c 21
d XML_CHAR_ENCODING_ASCII... Pure ASCII
d c 22
* xmlCharEncodingInputFunc:
* @out: a pointer to an array of bytes to store the UTF-8 result
* @outlen: the length of @out
* @in: a pointer to an array of chars in the original encoding
* @inlen: the length of @in
*
* Take a block of chars in the original encoding and try to convert
* it to an UTF-8 block of chars out.
*
* Returns the number of bytes written, -1 if lack of space, or -2
* if the transcoding failed.
* The value of @inlen after return is the number of octets consumed
* if the return value is positive, else unpredictiable.
* The value of @outlen after return is the number of octets consumed.
d xmlCharEncodingInputFunc...
d s * based(######typedef######)
d procptr
* xmlCharEncodingOutputFunc:
* @out: a pointer to an array of bytes to store the result
* @outlen: the length of @out
* @in: a pointer to an array of UTF-8 chars
* @inlen: the length of @in
*
* Take a block of UTF-8 chars in and try to convert it to another
* encoding.
* Note: a first call designed to produce heading info is called with
* in = NULL. If stateful this should also initialize the encoder state.
*
* Returns the number of bytes written, -1 if lack of space, or -2
* if the transcoding failed.
* The value of @inlen after return is the number of octets consumed
* if the return value is positive, else unpredictiable.
* The value of @outlen after return is the number of octets produced.
d xmlCharEncodingOutputFunc...
d s * based(######typedef######)
d procptr
* Block defining the handlers for non UTF-8 encodings.
* If iconv is supported, there are two extra fields.
/if defined(LIBXML_ICU_ENABLED)
d uconv_t ds based(######typedef######)
d align qualified
d uconv * UConverter *
d utf8 * UConverter *
/endif
d xmlCharEncodingHandlerPtr...
d s * based(######typedef######)
d xmlCharEncodingHandler...
d ds based(xmlCharEncodingHandlerPtr)
d align qualified
d name * char *
d input like(xmlCharEncodingInputFunc)
d output like(xmlCharEncodingOutputFunc)
*
/if defined(LIBXML_ICONV_ENABLED)
d iconv_in * iconv_t
d iconv_out * iconv_t
/endif LIBXML_ICONV_ENABLED
*
/if defined(LIBXML_ICU_ENABLED)
d uconv_in * uconv_t *
d uconv_out * uconv_t *
/endif LIBXML_ICU_ENABLED
/include "libxmlrpg/tree"
* Interfaces for encoding handlers.
d xmlInitCharEncodingHandlers...
d pr extproc(
d 'xmlInitCharEncodingHandlers')
d xmlCleanupCharEncodingHandlers...
d pr extproc(
d 'xmlCleanupCharEncodingHandlers')
d xmlRegisterCharEncodingHandler...
d pr extproc(
d 'xmlRegisterCharEncodingHandler')
d handler value like(xmlCharEncodingHandlerPtr)
d xmlGetCharEncodingHandler...
d pr extproc('xmlGetCharEncodingHandler')
d like(xmlCharEncodingHandlerPtr)
d enc value like(xmlCharEncoding)
d xmlFindCharEncodingHandler...
d pr extproc('xmlFindCharEncodingHandler')
d like(xmlCharEncodingHandlerPtr)
d name * value options(*string) const char *
d xmlNewCharEncodingHandler...
d pr extproc('xmlNewCharEncodingHandler')
d like(xmlCharEncodingHandlerPtr)
d name * value options(*string) const char *
d input value like(xmlCharEncodingInputFunc)
d output value like(xmlCharEncodingOutputFunc)
* Interfaces for encoding names and aliases.
d xmlAddEncodingAlias...
d pr 10i 0 extproc('xmlAddEncodingAlias')
d name * value options(*string) const char *
d alias * value options(*string) const char *
d xmlDelEncodingAlias...
d pr 10i 0 extproc('xmlDelEncodingAlias')
d alias * value options(*string) const char *
d xmlGetEncodingAlias...
d pr * extproc('xmlGetEncodingAlias') const char *
d alias * value options(*string) const char *
d xmlCleanupEncodingAliases...
d pr extproc('xmlCleanupEncodingAliases')
d xmlParseCharEncoding...
d pr extproc('xmlParseCharEncoding')
d like(xmlCharEncoding)
d name * value options(*string) const char *
d xmlGetCharEncodingName...
d pr * extproc('xmlGetCharEncodingName') const char *
d enc value like(xmlCharEncoding)
* Interfaces directly used by the parsers.
d xmlDetectCharEncoding...
d pr extproc('xmlDetectCharEncoding')
d like(xmlCharEncoding)
d in * value options(*string) const unsigned char*
d len 10i 0 value
d xmlCharEncOutFunc...
d pr 10i 0 extproc('xmlCharEncOutFunc')
d handler like(xmlCharEncodingHandler)
d out value like(xmlBufferPtr)
d in value like(xmlBufferPtr)
d xmlCharEncInFunc...
d pr 10i 0 extproc('xmlCharEncInFunc')
d handler like(xmlCharEncodingHandler)
d out value like(xmlBufferPtr)
d in value like(xmlBufferPtr)
d xmlCharEncFirstLine...
d pr 10i 0 extproc('xmlCharEncFirstLine')
d handler like(xmlCharEncodingHandler)
d out value like(xmlBufferPtr)
d in value like(xmlBufferPtr)
d xmlCharEncCloseFunc...
d pr 10i 0 extproc('xmlCharEncCloseFunc')
d handler like(xmlCharEncodingHandler)
* Export a few useful functions
/if defined(LIBXML_OUTPUT_ENABLED)
d UTF8Toisolat1 pr 10i 0 extproc('UTF8Toisolat1')
d out 65535 options(*varsize) unsigned char (*)
d outlen 10i 0
d in * value options(*string) const unsigned char*
d inlen 10i 0
/endif LIBXML_OUTPUT_ENABLD
d isolat1ToUTF8 pr 10i 0 extproc('isolat1ToUTF8')
d out 65535 options(*varsize) unsigned char (*)
d outlen 10i 0
d in * value options(*string) const unsigned char*
d inlen 10i 0
/endif XML_CHAR_ENCODING_H

View File

@@ -0,0 +1,174 @@
* Summary: interface for the XML entities handling
* Description: this module provides some of the entity API needed
* for the parser and applications.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_ENTITIES_H__)
/define XML_ENTITIES_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
* The different valid entity types.
d xmlEntityType s 10i 0 based(######typedef######) enum
d XML_INTERNAL_GENERAL_ENTITY...
d c 1
d XML_EXTERNAL_GENERAL_PARSED_ENTITY...
d c 2
d XML_EXTERNAL_GENERAL_UNPARSED_ENTITY...
d c 3
d XML_INTERNAL_PARAMETER_ENTITY...
d c 4
d XML_EXTERNAL_PARAMETER_ENTITY...
d c 5
d XML_INTERNAL_PREDEFINED_ENTITY...
d c 6
* An unit of storage for an entity, contains the string, the value
* and the linkind data needed for the linking in the hash table.
d xmlEntity ds based(xmlEntityPtr)
d align qualified
d #private * void *
d type like(xmlElementType) XML_ENTITY_DECL
d name * const xmlChar *
d children like(xmlNodePtr) First child link
d last like(xmlNodePtr) Last child link
d parent like(xmlDtdPtr) -> DTD
d next like(xmlNodePtr) next sibling link
d prev like(xmlNodePtr) prev sibling link
d doc like(xmlDocPtr) containing document
d orig * xmlChar *
d content * xmlChar *
d length 10i 0 content length
d etype like(xmlEntityType) The entity type
d ExternalID * const xmlChar *
d SystemlID * const xmlChar *
d nexte like(xmlEntityPtr) unused
d URI * const xmlChar *
d owner 10i 0 Owns children ?
d checked 10i 0 Content checked ?
* All entities are stored in an hash table.
* There is 2 separate hash tables for global and parameter entities.
d xmlEntitiesTablePtr...
d s * based(######typedef######)
* External functions:
/if defined(LIBXML_LEGACY_ENABLED)
d xmlInitializePredefinedEntities...
d pr extproc(
d 'xmlInitializePredefinedEntities')
/endif LIBXML_LEGACY_ENABLD
d xmlNewEntity pr extproc('xmlNewEntity')
d like(xmlEntityPtr)
d doc value like(xmlDocPtr)
d name * value options(*string) const xmlChar *
d type 10i 0 value
d ExternalID * value options(*string) const xmlChar *
d SystemID * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
d xmlAddDocEntity...
d pr extproc('xmlAddDocEntity')
d like(xmlEntityPtr)
d doc value like(xmlDocPtr)
d name * value options(*string) const xmlChar *
d type 10i 0 value
d ExternalID * value options(*string) const xmlChar *
d SystemID * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
d xmlAddDtdEntity...
d pr extproc('xmlAddDtdEntity')
d like(xmlEntityPtr)
d doc value like(xmlDocPtr)
d name * value options(*string) const xmlChar *
d type 10i 0 value
d ExternalID * value options(*string) const xmlChar *
d SystemID * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
d xmlGetPredefinedEntity...
d pr extproc('xmlGetPredefinedEntity')
d like(xmlEntityPtr)
d name * value options(*string) const xmlChar *
d xmlGetDocEntity...
d pr extproc('xmlGetDocEntity')
d like(xmlEntityPtr)
d doc value like(xmlDocPtr)
d name * value options(*string) const xmlChar *
d xmlGetDtdEntity...
d pr extproc('xmlGetDtdEntity')
d like(xmlEntityPtr)
d doc value like(xmlDocPtr)
d name * value options(*string) const xmlChar *
d xmlGetParameterEntity...
d pr extproc('xmlGetParameterEntity')
d like(xmlEntityPtr)
d doc value like(xmlDocPtr)
d name * value options(*string) const xmlChar *
/if defined(LIBXML_LEGACY_ENABLED)
d xmlEncodeEntities...
d pr * extproc('xmlEncodeEntities') xmlChar *
d doc value like(xmlDocPtr)
d input * value options(*string) const xmlChar *
/endif LIBXML_LEGACY_ENABLD
d xmlEncodeEntitiesReentrant...
d pr * extproc( xmlChar *
d 'xmlEncodeEntitiesReentrant')
d doc value like(xmlDocPtr)
d input * value options(*string) const xmlChar *
XMLPU
d xmlEncodeSpecialChars...
d pr * extproc('xmlSpecialChars') xmlChar *
d doc value like(xmlDocPtr)
d input * value options(*string) const xmlChar *
XMLPU
d xmlCreateEntitiesTable...
d pr extproc('xmlCreateEntitiesTable')
d like(xmlEntitiesTablePtr)
/if defined(LIBXML_TREE_ENABLED)
d xmlCopyEntitiesTable...
d pr extproc('xmlCopyEntitiesTable')
d like(xmlEntitiesTablePtr)
d table value like(xmlEntitiesTablePtr)
/endif LIBXML_TREE_ENABLED
d xmlFreeEntitiesTable...
d pr extproc('xmlFreeEntitiesTable')
d table value like(xmlEntitiesTablePtr)
XMLPU
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlDumpEntitiesTable...
d pr extproc('xmlDumpEntitiesTable')
d buf value like(xmlBufferPtr)
d table value like(xmlEntitiesTablePtr)
XMLPU
d xmlDumpEntityDecl...
d pr extproc('xmlDumpEntityDecl')
d buf value like(xmlBufferPtr)
d ent value like(xmlEntityPtr)
/endif LIBXML_OUTPUT_ENABLD
/if defined(LIBXML_LEGACY_ENABLED)
d xmlCleanupPredefinedEntities...
d pr extproc(
XMLPUd 'xmlCleanupPredefinedEntities')
/endif LIBXML_LEGACY_ENABLD
/endif XML_ENTITIES_H__

View File

@@ -0,0 +1,557 @@
* Summary: interface for all global variables of the library
* Description: all the global variables and thread handling for
* those variables is handled by this module.
*
* The bottom of this file is automatically generated by build_glob.py
* based on the description file global.data
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_GLOBALS_H)
/define XML_GLOBALS_H
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/parser"
/include "libxmlrpg/xmlerror"
/include "libxmlrpg/SAX"
/include "libxmlrpg/SAX2"
/include "libxmlrpg/xmlmemory"
d xmlInitGlobals pr extproc('xmlInitGlobals')
d xmlCleanupGlobals...
d pr extproc('xmlCleanupGlobals')
* xmlParserInputBufferCreateFilenameFunc:
* @URI: the URI to read from
* @enc: the requested source encoding
*
* Signature for the function doing the lookup for a suitable input method
* corresponding to an URI.
*
* Returns the new xmlParserInputBufferPtr in case of success or NULL if no
* method was found.
d xmlParserInputBufferCreateFilenameFunc...
d s * based(######typedef######)
d procptr
* xmlOutputBufferCreateFilenameFunc:
* @URI: the URI to write to
* @enc: the requested target encoding
*
* Signature for the function doing the lookup for a suitable output method
* corresponding to an URI.
*
* Returns the new xmlOutputBufferPtr in case of success or NULL if no
* method was found.
d xmlOutputBufferCreateFilenameFunc...
d s * based(######typedef######)
d procptr
d xmlParserInputBufferCreateFilenameDefault...
d pr extproc('xmlParserInputBufferCreate+
d FilenameDefault')
d like(xmlParserInputBuffer...
d CreateFilenameFunc)
d func value like(xmlParserInputBuffer...
d CreateFilenameFunc)
d xmlOutputBufferCreateFilenameDefault...
d pr extproc('xmlOutputBufferCreate+
d FilenameDefault')
d like(xmlOutputBuffer...
d CreateFilenameFunc)
d func value like(xmlOutputBuffer...
d CreateFilenameFunc)
* xmlRegisterNodeFunc:
* @node: the current node
*
* Signature for the registration callback of a created node
d xmlRegisterNodeFunc...
d s * based(######typedef######)
d procptr
* xmlDeregisterNodeFunc:
* @node: the current node
*
* Signature for the deregistration callback of a discarded node
d xmlDeregisterNodeFunc...
d s * based(######typedef######)
d procptr
d xmlGlobalStatePtr...
d s * based(######typedef######)
d xmlGlobalState ds based(xmlGlobalStatePtr)
d align qualified
d xmlParserVersion...
d * const char *
d xmlDefaultSAXLocator...
d like(xmlSAXLocator)
d xmlDefaultSAXHandler...
d like(xmlSAXHandlerV1)
d docbDefaultSAXHandler...
d like(xmlSAXHandlerV1)
d htmlDefaultSAXHandler...
d like(xmlSAXHandlerV1)
d xmlFree like(xmlFreeFunc)
d xmlMalloc like(xmlMallocFunc)
d xmlMemStrdup like(xmlStrdupFunc)
d xmlRealloc like(xmlReallocFunc)
d xmlGenericError...
d like(xmlGenericErrorFunc)
d xmlStructuredError...
d like(xmlStructuredErrorFunc)
d xmlGenericErrorContext...
d * void *
d oldXMLWDcompatibility...
d 10i 0
d xmlBufferAllocScheme...
d like(xmlBufferAllocationScheme)
d xmlDefaultBufferSize...
d 10i 0
d xmlSubstituteEntitiesDefaultValue...
d 10i 0
d xmlDoValidityCheckingDefaultValue...
d 10i 0
d xmlGetWarningsDefaultValue...
d 10i 0
d xmlKeepBlanksDefaultValue...
d 10i 0
d xmlLineNumbersDefaultValue...
d 10i 0
d xmlLoadExtDtdDefaultValue...
d 10i 0
d xmlParserDebugEntities...
d 10i 0
d xmlPedanticParserDefaultValue...
d 10i 0
d xmlSaveNoEmptyTags...
d 10i 0
d xmlIndentTreeOutput...
d 10i 0
d xmlTreeIndentString...
d * const char *
d xmlRegisterNodeDefaultValue...
d like(xmlRegisterNodeFunc)
d xmlDeregisterNodeDefaultValue...
d like(xmlDeregisterNodeFunc)
d xmlMallocAtomic...
d like(xmlMallocFunc)
d xmlLastError like(xmlError)
d xmlParserInputBufferCreateFilenameValue...
d like(xmlParserInputBuffer...
d CreateFilenameFunc)
d xmlOutputBufferCreateFilenameValue...
d like(xmlOutputBuffer...
d CreateFilenameFunc)
d xmlStructuredErrorContext...
d * void *
/include "libxmlrpg/threads"
d xmlInitializeGlobalState...
d pr extproc('xmlInitializeGlobalState')
d qs value like(xmlGlobalStatePtr)
d xmlThrDefSetGenericErrorFunc...
d pr extproc(
d 'xmlThrDefSetGenericErrorFunc')
d ctx * value void *
d handler value like(xmlGenericErrorFunc)
d xmlThrDefSetStructuredErrorFunc...
d pr extproc(
d 'xmlThrDefSetStructuredErrorFunc')
d ctx * value void *
d handler value like(xmlStructuredErrorFunc)
d xmlRegisterNodeDefault...
d pr extproc('xmlRegisterNodeDefault')
d like(xmlRegisterNodeFunc)
d func value like(xmlRegisterNodeFunc)
d xmlThrDefRegisterNodeDefault...
d pr extproc(
d 'xmlThrDefRegisterNodeDefault')
d like(xmlRegisterNodeFunc)
d func value like(xmlRegisterNodeFunc)
d xmlDeregisterNodeDefault...
d pr extproc('xmlDeregisterNodeDefault')
d like(xmlDeregisterNodeFunc)
d func value like(xmlDeregisterNodeFunc)
d xmlThrDefDeregisterNodeDefault...
d pr extproc(
d 'xmlThrDefDeregisterNodeDefault')
d like(xmlDeregisterNodeFunc)
d func value like(xmlDeregisterNodeFunc)
d xmlThrDefOutputBufferCreateFilenameDefault...
d pr extproc('xmlThrDefOutputBuffer+
d CreateFilenameDefault')
d like(xmlOutputBuffer...
d CreateFilenameFunc)
d func value like(xmlOutputBuffer...
d CreateFilenameFunc)
d xmlThrDefParserInputBufferCreateFilenameDefault...
d pr extproc('xmlThrDefParserInputBuffer+
d CreateFilenameDefault')
d like(xmlParserInputBuffer...
d CreateFilenameFunc)
d func value like(xmlParserInputBuffer...
d CreateFilenameFunc)
/if defined(LIBXML_DOCB_ENABLED)
d get_docbDefaultSAXHandler...
d pr extproc(
d '__get_docbDefaultSAXHandler')
d like(xmlSAXHandlerV1)
d set_docbDefaultSAXHandler...
d pr extproc(
d '__set_docbDefaultSAXHandler')
d value value like(xmlSAXHandlerV1)
/endif
/if defined(LIBXML_HTML_ENABLED)
d get_htmlDefaultSAXHandler...
d pr extproc(
d '__get_htmlDefaultSAXHandler')
d like(xmlSAXHandlerV1)
d set_htmlDefaultSAXHandler...
d pr extproc(
d '__set_htmlDefaultSAXHandler')
d value value like(xmlSAXHandlerV1)
/endif
d get_xmlLastError...
d pr extproc('__get_xmlLastError')
d like(xmlError)
d set_xmlLastError...
d pr extproc('__set_xmlLastError')
d value value like(xmlError)
d get_oldXMLWDcompatibility...
d pr 10i 0 extproc(
d '__get_oldXMLWDcompatibility')
d set_oldXMLWDcompatibility...
d pr extproc(
d '__set_oldXMLWDcompatibility')
d value 10i 0 value
d get_xmlBufferAllocScheme...
d pr extproc('__get_xmlBufferAllocScheme')
d like(xmlBufferAllocationScheme)
d set_xmlBufferAllocScheme...
d pr extproc('__set_xmlBufferAllocScheme')
d value value like(xmlBufferAllocationScheme)
d xmlThrDefBufferAllocScheme...
d pr extproc('xmlThrDefBufferAllocScheme')
d like(xmlBufferAllocationScheme)
d v value like(xmlBufferAllocationScheme)
d get_xmlDefaultBufferSize...
d pr 10i 0 extproc('__get_xmlDefaultBufferSize')
d set_xmlDefaultBufferSize...
d pr extproc('__set_xmlDefaultBufferSize')
d value 10i 0 value
d xmlThrDefDefaultBufferSize...
d pr 10i 0 extproc('xmlThrDefDefaultBufferSize')
d v 10i 0 value
d get_xmlDefaultSAXHandler...
d pr extproc('__get_xmlDefaultSAXHandler')
d like(xmlSAXHandlerV1)
d set_xmlDefaultSAXHandler...
d pr extproc('__set_xmlDefaultSAXHandler')
d value value like(xmlSAXHandlerV1)
d get_xmlDefaultSAXLocator...
d pr extproc('__get_xmlDefaultSAXLocator')
d like(xmlSAXLocator)
d set_xmlDefaultSAXLocator...
d pr extproc('__set_xmlDefaultSAXLocator')
d value value like(xmlSAXLocator)
d get_xmlDoValidityCheckingDefaultValue...
d pr 10i 0 extproc('__get_xmlDoValidity+
d CheckingDefaultValue')
d set_xmlDoValidityCheckingDefaultValue...
d pr extproc('__set_xmlDoValidity+
d CheckingDefaultValue')
d value 10i 0 value
d xmlThrDefDoValidityCheckingDefaultValue...
d pr 10i 0 extproc('xmlThrDefDoValidity+
d CheckingDefaultValue')
d v 10i 0 value
d get_xmlGenericError...
d pr extproc('__get_xmlGenericError')
d like(xmlGenericErrorFunc)
d set_xmlGenericError...
d pr extproc('__set_xmlGenericError')
d func value like(xmlGenericErrorFunc)
d get_xmlStructuredError...
d pr extproc('__get_xmlStructuredError')
d like(xmlStructuredErrorFunc)
d set_xmlStructuredError...
d pr extproc('__set_xmlStructuredError')
d func value like(xmlStructuredErrorFunc)
d xmlStructuredError...
d pr extproc('__call_xmlStructuredError')
d userData * value options(*string) void *
d error value like(xmlErrorPtr)
d get_xmlGenericErrorContext...
d pr extproc(
d '__get_xmlGenericErrorContext')
d * void *
d set_xmlGenericErrorContext...
d pr extproc(
d '__set_xmlGenericErrorContext')
d value * value options(*string) void *
d get_xmlStructuredErrorContext...
d pr extproc(
d '__get_xmlStructuredErrorContext')
d * void *
d set_xmlStructuredErrorContext...
d pr extproc(
d '__set_xmlStructuredErrorContext')
d value * value options(*string) void *
d get_xmlGetWarningsDefaultValue...
d pr 10i 0 extproc(
d '__get_xmlGetWarningsDefaultValue')
d set_xmlGetWarningsDefaultValue...
d pr extproc(
d '__set_xmlGetWarningsDefaultValue')
d value 10i 0 value
d xmlThrDefGetWarningsDefaultValue...
d pr 10i 0 extproc(
d 'xmlThrDefGetWarningsDefaultValue')
d v 10i 0 value
d get_xmlIndentTreeOutput...
d pr 10i 0 extproc('__get_xmlIndentTreeOutput')
d set_xmlIndentTreeOutput...
d pr extproc('__set_xmlIndentTreeOutput')
d value 10i 0 value
d xmlThrDefIndentTreeOutput...
d pr 10i 0 extproc('xmlThrDefIndentTreeOutput')
d v 10i 0 value
d get_xmlTreeIndentString...
d pr * extproc('__get_xmlTreeIndentString') const char *
d set_xmlTreeIndentString...
d pr extproc('__set_xmlTreeIndentString')
d value * value options(*string) const char *
d xmlThrDefTreeIndentString...
d pr * extproc('xmlThrDefTreeIndentString') const char *
d v * value options(*string) const char *
d get_xmlKeepBlanksDefaultValue...
d pr 10i 0 extproc(
d '__get_xmlKeepBlanksDefaultValue')
d set_xmlKeepBlanksDefaultValue...
d pr extproc(
d '__set_xmlKeepBlanksDefaultValue')
d value 10i 0 value
d xmlThrDefKeepBlanksDefaultValue...
d pr 10i 0 extproc(
d 'xmlThrDefKeepBlanksDefaultValue')
d v 10i 0 value
d get_xmlLineNumbersDefaultValue...
d pr 10i 0 extproc(
d '__get_xmlLineNumbersDefaultValue')
d set_xmlLineNumbersDefaultValue...
d pr extproc(
d '__set_xmlLineNumbersDefaultValue')
d value 10i 0 value
d xmlThrDefLineNumbersDefaultValue...
d pr 10i 0 extproc(
d 'xmlThrDefLineNumbersDefaultValue')
d v 10i 0 value
d get_xmlLoadExtDtdDefaultValue...
d pr 10i 0 extproc(
d '__get_xmlLoadExtDtdDefaultValue')
d set_xmlLoadExtDtdDefaultValue...
d pr extproc(
d '__set_xmlLoadExtDtdDefaultValue')
d value 10i 0 value
d xmlThrDefLoadExtDtdDefaultValue...
d pr 10i 0 extproc(
d 'xmlThrDefLoadExtDtdDefaultValue')
d v 10i 0 value
d get_xmlParserDebugEntities...
d pr 10i 0 extproc(
d '__get_xmlParserDebugEntities')
d set_xmlParserDebugEntities...
d pr extproc(
d '__set_xmlParserDebugEntities')
d value 10i 0 value
d xmlThrDefParserDebugEntities...
d pr 10i 0 extproc(
d 'xmlThrDefParserDebugEntities')
d v 10i 0 value
d get_xmlParserVersion...
d pr * extproc('__get_xmlParserVersion') const char *
d set_xmlParserVersion...
d pr extproc('__set_xmlParserVersion')
d value * value options(*string) const char *
d get_xmlPedanticParserDefaultValue...
d pr 10i 0 extproc('__get_xmlPedantic+
d ParserDefaultValue')
d set_xmlPedanticParserDefaultValue...
d pr extproc('__set_xmlPedantic+
d ParserDefaultValue')
d value 10i 0 value
d xmlThrDefPedanticParserDefaultValue...
d pr 10i 0 extproc('xmlThrDefPedantic+
d ParserDefaultValue')
d v 10i 0 value
d get_xmlSaveNoEmptyTags...
d pr 10i 0 extproc('__get_xmlSaveNoEmptyTags')
d set_xmlSaveNoEmptyTags...
d pr extproc('__set_xmlSaveNoEmptyTags')
d value 10i 0 value
d xmlThrDefSaveNoEmptyTags...
d pr 10i 0 extproc('xmlThrDefSaveNoEmptyTags')
d v 10i 0 value
d get_xmlSubstituteEntitiesDefaultValue...
d pr 10i 0 extproc('__get_xmlSubstitute+
d EntitiesDefaultValue')
d set_xmlSubstituteEntitiesDefaultValue...
d pr extproc('__set_xmlSubstitute+
d EntitiesDefaultValue')
d value 10i 0 value
d xmlThrDefSubstituteEntitiesDefaultValue...
d pr 10i 0 extproc('xmlThrDefSubstitute+
d EntitiesDefaultValue')
d v 10i 0 value
d get_xmlRegisterNodeDefaultValue...
d pr extproc('__get_xmlRegisterNode+
d DefaultValue')
d like(xmlRegisterNodeFunc)
d set_xmlRegisterNodeDefaultValue...
d pr extproc('__set_xmlRegisterNode+
d DefaultValue')
d value value like(xmlRegisterNodeFunc)
d xmlRegisterNodeDefaultValue...
d pr extproc('__call_xmlRegisterNode+
d DefaultValue')
d node value like(xmlNodePtr)
d get_xmlDeregisterNodeDefaultValue...
d pr extproc('__get_xmlDeregisterNode+
d DefaultValue')
d like(xmlDeregisterNodeFunc)
d set_xmlDeregisterNodeDefaultValue...
d pr extproc('__set_xmlDeregisterNode+
d DefaultValue')
d value value like(xmlDeregisterNodeFunc)
d xmlDeregisterNodeDefaultValue...
d pr extproc('__call_xmlDeregisterNode+
d DefaultValue')
d node value like(xmlNodePtr)
d get_xmlParserInputBufferCreateFilenameValue...
d pr extproc('__get_xmlParserInputBuffer+
d CreateFilenameValue')
d like(xmlParserInputBuffer...
d CreateFilenameFunc)
d set_xmlParserInputBufferCreateFilenameValue...
d pr extproc('__set_xmlParserInputBuffer+
d CreateFilenameValue')
d value value like(xmlParserInputBuffer...
d CreateFilenameFunc)
d xmlParserInputBufferCreateFilenameValue...
d pr extproc('__call_xmlParserInputBuffer+
d CreateFilenameValue')
d like(xmlParserInputBufferPtr)
d URI * value options(*string) const char *
d enc value like(xmlCharEncoding)
d get_xmlOutputBufferCreateFilenameValue...
d pr extproc('__get_xmlOutputBuffer+
d CreateFilenameValue')
d like(
d xmlOutputBufferCreateFilenameFunc)
d set_xmlOutputBufferCreateFilenameValue...
d pr extproc('__set_xmlOutputBuffer+
d CreateFilenameValue')
d value value like(
d xmlOutputBufferCreateFilenameFunc)
d xmlOutputBufferCreateFilenameValue...
d pr extproc('__call_xmlOutputBuffer+
d CreateFilenameValue')
d like(xmlOutputBufferPtr)
d URI * value options(*string) const char *
d encoder value like(xmlCharEncodingHandlerPtr)
d compression 10i 0 value
/endif XML_GLOBALS_H

231
os400/libxmlrpg/hash.rpgle Normal file
View File

@@ -0,0 +1,231 @@
* Summary: Chained hash tables
* Description: This module implements the hash table support used in
* various places in the library.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_HASH_H__)
/define XML_HASH_H__
* The hash table.
d xmlHashTablePtr...
d s * based(######typedef######)
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/parser"
/include "libxmlrpg/dict"
* function types:
* xmlHashDeallocator:
* @payload: the data in the hash
* @name: the name associated
*
* Callback to free data from a hash.
d xmlHashDeallocator...
d s * based(######typedef######)
d procptr
* xmlHashCopier:
* @payload: the data in the hash
* @name: the name associated
*
* Callback to copy data from a hash.
*
* Returns a copy of the data or NULL in case of error.
d xmlHashCopier s * based(######typedef######)
d procptr
* xmlHashScanner:
* @payload: the data in the hash
* @data: extra scannner data
* @name: the name associated
*
* Callback when scanning data in a hash with the simple scanner.
d xmlHashScanner s * based(######typedef######)
d procptr
* xmlHashScannerFull:
* @payload: the data in the hash
* @data: extra scannner data
* @name: the name associated
* @name2: the second name associated
* @name3: the third name associated
*
* Callback when scanning data in a hash with the full scanner.
d xmlHashScannerFull...
d s * based(######typedef######)
d procptr
* Constructor and destructor.
d xmlHashCreate pr extproc('xmlHashCreate')
d like(xmlHashTablePtr)
d size 10i 0 value
d xmlHashCreateDict...
d pr extproc('xmlHashCreateDict')
d like(xmlHashTablePtr)
d size 10i 0 value
d dict value like(xmlDictPtr)
d xmlHashFree pr extproc('xmlHashFree')
d table value like(xmlHashTablePtr)
d f value like(xmlHashDeallocator)
* Add a new entry to the hash table.
d xmlHashAddEntry...
d pr 10i 0 extproc('xmlHashAddEntry')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d userdata * value options(*string) void *
d xmlHashUpdateEntry...
d pr 10i 0 extproc('xmlHashUpdateEntry')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d userdata * value options(*string) void *
d f value like(xmlHashDeallocator)
d xmlHashAddEntry2...
d pr 10i 0 extproc('xmlHashAddEntry2')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d userdata * value options(*string) void *
d xmlHashUpdateEntry2...
d pr 10i 0 extproc('xmlHashUpdateEntry2')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d userdata * value options(*string) void *
d f value like(xmlHashDeallocator)
d xmlHashAddEntry3...
d pr 10i 0 extproc('xmlHashAddEntry3')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d name3 * value options(*string) const xmlChar *
d userdata * value options(*string) void *
d xmlHashUpdateEntry3...
d pr 10i 0 extproc('xmlHashUpdateEntry3')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d name3 * value options(*string) const xmlChar *
d userdata * value options(*string) void *
d f value like(xmlHashDeallocator)
* Remove an entry from the hash table.
d xmlHashRemoveEntry...
d pr 10i 0 extproc('xmlHashRemoveEntry')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d f value like(xmlHashDeallocator)
d xmlHashRemoveEntry2...
d pr 10i 0 extproc('xmlHashRemoveEntry2')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d f value like(xmlHashDeallocator)
d xmlHashRemoveEntry3...
d pr 10i 0 extproc('xmlHashRemoveEntry3')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d name3 * value options(*string) const xmlChar *
d f value like(xmlHashDeallocator)
* Retrieve the userdata.
d xmlHashLookup pr * extproc('xmlHashLookup') void *
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d xmlHashLookup2 pr * extproc('xmlHashLookup2') void *
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d xmlHashLookup3 pr * extproc('xmlHashLookup3') void *
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d name3 * value options(*string) const xmlChar *
d xmlHashQLookup pr * extproc('xmlHashQLookup') void *
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d prefix * value options(*string) const xmlChar *
d xmlHashQLookup2...
d pr * extproc('xmlHashQLookup2') void *
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d prefix * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d prefix2 * value options(*string) const xmlChar *
d xmlHashQLookup3...
d pr * extproc('xmlHashQLookup3') void *
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d prefix * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d prefix2 * value options(*string) const xmlChar *
d name3 * value options(*string) const xmlChar *
d prefix3 * value options(*string) const xmlChar *
* Helpers.
d xmlHashCopy pr extproc('xmlHashCopy')
d like(xmlHashTablePtr)
d table value like(xmlHashTablePtr)
d f value like(xmlHashCopier)
d xmlHashSize pr 10i 0 extproc('xmlHashSize')
d table value like(xmlHashTablePtr)
d xmlHashScan pr extproc('xmlHashScan')
d table value like(xmlHashTablePtr)
d f value like(xmlHashScanner)
d data * value options(*string) void *
d xmlHashScan3 pr extproc('xmlHashScan3')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d name3 * value options(*string) const xmlChar *
d f value like(xmlHashScanner)
d data * value options(*string) void *
d xmlHashScanFull...
d pr extproc('xmlHashScanFull')
d table value like(xmlHashTablePtr)
d f value like(xmlHashScannerFull)
d data * value options(*string) void *
d xmlHashScanFull3...
d pr extproc('xmlHashScanFull3')
d table value like(xmlHashTablePtr)
d name * value options(*string) const xmlChar *
d name2 * value options(*string) const xmlChar *
d name3 * value options(*string) const xmlChar *
d f value like(xmlHashScannerFull)
d data * value options(*string) void *
/endif XML_HASH_H__

168
os400/libxmlrpg/list.rpgle Normal file
View File

@@ -0,0 +1,168 @@
* Summary: lists interfaces
* Description: this module implement the list support used in
* various place in the library.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_LINK_INCLUDE__)
/define XML_LINK_INCLUDE__
/include "libxmlrpg/xmlversion"
d xmlLinkPtr s * based(######typedef######)
d xmlListPtr s * based(######typedef######)
* xmlListDeallocator:
* @lk: the data to deallocate
*
* Callback function used to free data from a list.
d xmlListDeallocator...
d s * based(######typedef######)
d procptr
* xmlListDataCompare:
* @data0: the first data
* @data1: the second data
*
* Callback function used to compare 2 data.
*
* Returns 0 is equality, -1 or 1 otherwise depending on the ordering.
d xmlListDataCompare...
d s * based(######typedef######)
d procptr
* xmlListWalker:
* @data: the data found in the list
* @user: extra user provided data to the walker
*
* Callback function used when walking a list with xmlListWalk().
*
* Returns 0 to stop walking the list, 1 otherwise.
d xmlListWalker s * based(######typedef######)
d procptr
* Creation/Deletion
d xmlListCreate pr extproc('xmlListCreate')
d like(xmlListPtr)
d deallocator value like(xmlListDeallocator)
d compare value like(xmlListDataCompare)
d xmlListDelete pr extproc('xmlListDelete')
d l value like(xmlListPtr)
* Basic Operators
d xmlListSearch pr * extproc('xmlListSearch') void *
d l value like(xmlListPtr)
d data * value void *
d xmlListReverseSearch...
d pr * extproc('xmlListReverseSearch') void *
d l value like(xmlListPtr)
d data * value void *
d xmlListInsert pr 10i 0 extproc('xmlListInsert')
d l value like(xmlListPtr)
d data * value void *
d xmlListAppend pr 10i 0 extproc('xmlListAppend')
d l value like(xmlListPtr)
d data * value void *
d xmlListRemoveFirst...
d pr 10i 0 extproc('xmlListRemoveFirst')
d l value like(xmlListPtr)
d data * value void *
d xmlListRemoveLast...
d pr 10i 0 extproc('xmlListRemoveLast')
d l value like(xmlListPtr)
d data * value void *
d xmlListRemoveAll...
d pr 10i 0 extproc('xmlListRemoveAll')
d l value like(xmlListPtr)
d data * value void *
d xmlListClear pr extproc('xmlListClear')
d l value like(xmlListPtr)
d xmlListEmpty pr 10i 0 extproc('xmlListEmpty')
d l value like(xmlListPtr)
d xmlListFront pr extproc('xmlListFront')
d like(xmlLinkPtr)
d l value like(xmlListPtr)
d xmlListEnd pr extproc('xmlListEnd')
d like(xmlLinkPtr)
d l value like(xmlListPtr)
d xmlListSize pr 10i 0 extproc('xmlListSize')
d l value like(xmlListPtr)
d xmlListPopFront...
d pr extproc('xmlListPopFront')
d l value like(xmlListPtr)
d xmlListPopBack...
d pr extproc('xmlListPopBack')
d l value like(xmlListPtr)
d xmlListPushFront...
d pr 10i 0 extproc('xmlListPushFront')
d l value like(xmlListPtr)
d data * value void *
d xmlListPushBack...
d pr 10i 0 extproc('xmlListPushBack')
d l value like(xmlListPtr)
d data * value void *
* Advanced Operators
d xmlListReverse pr extproc('xmlListReverse')
d l value like(xmlListPtr)
d xmlListSort pr extproc('xmlListSort')
d l value like(xmlListPtr)
d xmlListWalk pr extproc('xmlListWalk')
d l value like(xmlListPtr)
d walker value like(xmlListWalker)
d user * value const void *
d xmlListReverseWalk...
d pr extproc('xmlListReverseWalk')
d l value like(xmlListPtr)
d walker value like(xmlListWalker)
d user * value const void *
d xmlListMerge pr extproc('xmlListMerge')
d l1 value like(xmlListPtr)
d l2 value like(xmlListPtr)
d xmlListDup pr extproc('xmlListDup')
d like(xmlListPtr)
d old value like(xmlListPtr)
d xmlListCopy pr 10i 0 extproc('xmlListCopy')
d cur value like(xmlListPtr)
d old value like(xmlListPtr) const
* Link operators
d xmlListGetData pr * extproc('xmlListGetData') void *
d lk value like(xmlLinkPtr)
* xmlListUnique()
* xmlListSwap
/endif XML_LINK_INCLUDE__

View File

@@ -0,0 +1,156 @@
* Summary: minimal FTP implementation
* Description: minimal FTP implementation allowing to fetch resources
* like external subset.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(NANO_FTP_H__)
/define NANO_FTP_H__
/include /libxmlrpg/xmlversion"
/if defined(LIBXML_FTP_ENABLED)
d INVALID_SOCKET c -1
* ftpListCallback:
* @userData: user provided data for the callback
* @filename: the file name (including "->" when links are shown)
* @attrib: the attribute string
* @owner: the owner string
* @group: the group string
* @size: the file size
* @links: the link count
* @year: the year
* @month: the month
* @day: the day
* @hour: the hour
* @minute: the minute
*
* A callback for the xmlNanoFTPList command.
* Note that only one of year and day:minute are specified.
d ftpListCallback...
d s * based(######typedef######)
d procptr
* ftpDataCallback:
* @userData: the user provided context
* @data: the data received
* @len: its size in bytes
*
* A callback for the xmlNanoFTPGet command.
d ftpDataCallback...
d s * based(######typedef######)
d procptr
* Init
d xmlNanoFTPInit pr extproc('xmlNanoFTPInit')
d xmlNanoFTPCleanup...
d pr extproc('xmlNanoFTPCleanup')
* Creating/freeing contexts.
d xmlNanoFTPNewCtxt...
d pr * extproc('xmlNanoFTPNewCtxt') void *
d URL * value options(*string) const char *
d xmlNanoFTPFreeCtxt...
d pr extproc('xmlNanoFTPFreeCtxt')
d ctx * value void *
d xmlNanoFTPConnectTo...
d pr * extproc('xmlNanoFTPConnectTo') void *
d server * value options(*string) const char *
d port 10i 0 value
* Opening/closing session connections.
d xmlNanoFTPOpen pr * extproc('xmlNanoFTPOpen') void *
d URL * value options(*string) const char *
d xmlNanoFTPConnect...
d pr 10i 0 extproc('xmlNanoFTPConnect')
d ctx * value void *
d xmlNanoFTPClose...
d pr 10i 0 extproc('xmlNanoFTPClose')
d ctx * value void *
d xmlNanoFTPQuit pr 10i 0 extproc('xmlNanoFTPQuit')
d ctx * value void *
d xmlNanoFTPScanProxy...
d pr extproc('xmlNanoFTPScanProxy')
d URL * value options(*string) const char *
d xmlNanoFTPProxy...
d pr extproc('xmlNanoFTPProxy')
d host * value options(*string) const char *
d port 10i 0 value
d user * value options(*string) const char *
d passwd * value options(*string) const char *
d type 10i 0 value
d xmlNanoFTPUpdateURL...
d pr 10i 0 extproc('xmlNanoFTPUpdateURL')
d ctx * value void *
d URL * value options(*string) const char *
* Rather internal commands.
d xmlNanoFTPGetResponse...
d pr 10i 0 extproc('xmlNanoFTPGetResponse')
d ctx * value void *
d xmlNanoFTPCheckResponse...
d pr 10i 0 extproc('xmlNanoFTPCheckResponse')
d ctx * value void *
* CD/DIR/GET handlers.
d xmlNanoFTPCwd pr 10i 0 extproc('xmlNanoFTPCwd')
d ctx * value void *
d directory * value options(*string) const char *
d xmlNanoFTPDele pr 10i 0 extproc('xmlNanoFTPDele')
d ctx * value void *
d file * value options(*string) const char *
d xmlNanoFTPGetConnection...
d pr 10i 0 extproc('xmlNanoFTPGetConnection') Socket descriptor
d ctx * value void *
d xmlNanoFTPCloseConnection...
d pr 10i 0 extproc('xmlNanoFTPCloseConnection')
d ctx * value void *
d xmlNanoFTPList pr 10i 0 extproc('xmlNanoFTPList')
d ctx * value void *
d callback value like(ftpListCallback)
d userData * value void *
d filename * value options(*string) const char *
d xmlNanoFTPGetSocket...
d pr 10i 0 extproc('xmlNanoFTPGetSocket') Socket descriptor
d ctx * value void *
d filename * value options(*string) const char *
d xmlNanoFTPGet pr 10i 0 extproc('xmlNanoFTPGet')
d ctx * value void *
d callback value like(ftpDataCallback)
d userData * value void *
d filename * value options(*string) const char *
d xmlNanoFTPRead pr 10i 0 extproc('xmlNanoFTPRead')
d ctx * value void *
d dest * value void *
d len 10i 0 value
/endif LIBXML_FTP_ENABLED
/endif NANO_FTP_H__

View File

@@ -0,0 +1,103 @@
* Summary: minimal HTTP implementation
* Description: minimal HTTP implementation allowing to fetch resources
* like external subset.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(NANO_HTTP_H__)
/define NANO_HTTP_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_HTTP_ENABLED)
d xmlNanoHTTPInit...
d pr extproc('xmlNanoHTTPInit')
d xmlNanoHTTPCleanup...
d pr extproc('xmlNanoHTTPCleanup')
d xmlNanoHTTPScanProxy...
d pr extproc('xmlNanoHTTPScanProxy')
d URL * value options(*string) const char *
d xmlNanoHTTPFetch...
d pr 10i 0 extproc('xmlNanoHTTPFetch')
d URL * value options(*string) const char *
d filename * value options(*string) const char *
d xmlNanoHTTPMethod...
d pr * extproc('xmlNanoHTTPMethod') void *
d URL * value options(*string) const char *
d method * value options(*string) const char *
d input * value options(*string) const char *
d contentType * value char * *
d headers * value options(*string) const char *
d ilen 10i 0 value
d xmlNanoHTTPMethodRedir...
d pr * extproc('xmlNanoHTTPMethodRedir') void *
d URL * value options(*string) const char *
d method * value options(*string) const char *
d input * value options(*string) const char *
d contentType * value char * *
d redir * value char * *
d headers * value options(*string) const char *
d ilen 10i 0 value
d xmlNanoHTTPOpen...
d pr * extproc('xmlNanoHTTPOpen') void *
d URL * value options(*string) const char *
d contentType * char *(*)
d xmlNanoHTTPOpenRedir...
d pr * extproc('xmlNanoHTTPOpenRedir') void *
d URL * value options(*string) const char *
d contentType * value char * *
d redir * value char * *
d xmlNanoHTTPReturnCode...
d pr 10i 0 extproc('xmlNanoHTTPReturnCode')
d ctx * value void *
d xmlNanoHTTPAuthHeader...
d pr * extproc('xmlNanoHTTPAuthHeader') const char *
d ctx * value void *
d xmlNanoHTTPRedir...
d pr * extproc('xmlNanoHTTPRedir') const char *
d ctx * value void *
d xmlNanoHTTPContentLength...
d pr 10i 0 extproc('xmlNanoHTTPContentLength')
d ctx * value void *
d xmlNanoHTTPEncoding...
d pr * extproc('xmlNanoHTTPEncoding') const char *
d ctx * value void *
d xmlNanoHTTPMimeType...
d pr * extproc('xmlNanoHTTPMimeType') const char *
d ctx * value void *
d xmlNanoHTTPRead...
d pr 10i 0 extproc('xmlNanoHTTPRead')
d ctx * value void *
d dest * value void *
d len 10i 0 value
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlNanoHTTPSave...
d pr 10i 0 extproc('xmlNanoHTTPSave')
d ctxt * value void *
d filename * value options(*string) const char *
/endif LIBXML_OUTPUT_ENABLD
d xmlNanoHTTPClose...
d pr extproc('xmlNanoHTTPClose')
d ctx * value void *
/endif LIBXML_HTTP_ENABLED
/endif NANO_HTTP_H__

1407
os400/libxmlrpg/parser.rpgle Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,575 @@
* Summary: internals routines and limits exported by the parser.
* Description: this module exports a number of internal parsing routines
* they are not really all intended for applications but
* can prove useful doing low level processing.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_PARSER_INTERNALS_H__)
/define XML_PARSER_INTERNALS_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/parser"
/include "libxmlrpg/HTMLparser"
/include "libxmlrpg/chvalid"
* xmlParserMaxDepth:
*
* arbitrary depth limit for the XML documents that we allow to
* process. This is not a limitation of the parser but a safety
* boundary feature, use XML_PARSE_HUGE option to override it.
d xmlParserMaxDepth...
d s 10u 0 import('xmlParserMaxDepth')
* XML_MAX_TEXT_LENGTH:
*
* Maximum size allowed for a single text node when building a tree.
* This is not a limitation of the parser but a safety boundary feature,
* use XML_PARSE_HUGE option to override it.
* Introduced in 2.9.0
d XML_MAX_TEXT_LENGTH...
d c 10000000
* XML_MAX_NAME_LENGTH:
*
* Maximum size allowed for a markup identitier
* This is not a limitation of the parser but a safety boundary feature,
* use XML_PARSE_HUGE option to override it.
* Note that with the use of parsing dictionaries overriding the limit
* may result in more runtime memory usage in face of "unfriendly' content
* Introduced in 2.9.0
d XML_MAX_NAME_LENGTH...
d c 50000
* XML_MAX_DICTIONARY_LIMIT:
*
* Maximum size allowed by the parser for a dictionary by default
* This is not a limitation of the parser but a safety boundary feature,
* use XML_PARSE_HUGE option to override it.
* Introduced in 2.9.0
d XML_MAX_DICTIONARY_LIMIT...
d c 10000000
* XML_MAX_LOOKUP_LIMIT:
*
* Maximum size allowed by the parser for ahead lookup
* This is an upper boundary enforced by the parser to avoid bad
* behaviour on "unfriendly' content
* Introduced in 2.9.0
d XML_MAX_LOOKUP_LIMIT...
d c 10000000
* XML_MAX_NAMELEN:
*
* Identifiers can be longer, but this will be more costly
* at runtime.
d XML_MAX_NAMELEN...
d c 100
* INPUT_CHUNK:
*
* The parser tries to always have that amount of input ready.
* One of the point is providing context when reporting errors.
d INPUT_CHUNK c 250
* Global variables used for predefined strings.
d xmlStringText s 4 import('xmlStringText') \0 in 5th byte
d xmlStringTextNoenc...
d s 9 import('xmlStringTextNoenc') \0 in 10th byte
d xmlStringComment...
d s 7 import('xmlStringTextComment') \0 in 8th byte
* Function to finish the work of the macros where needed.
d xmlIsLetter pr 10i 0 extproc('xmlIsLetter')
d c 10i 0 value
* Parser context.
d xmlCreateFileParserCtxt...
d pr extproc('xmlCreateFileParserCtxt')
d like(xmlParserCtxtPtr)
d filename * value options(*string) const char *
d xmlCreateURLParserCtxt...
d pr extproc('xmlCreateURLParserCtxt')
d like(xmlParserCtxtPtr)
d filename * value options(*string) const char *
d options 10i 0 value
d xmlCreateMemoryParserCtxt...
d pr extproc('xmlCreateMemoryParserCtxt')
d like(xmlParserCtxtPtr)
d buffer * value options(*string) const char *
d size 10i 0 value
d xmlCreateEntityParserCtxt...
d pr extproc('xmlCreateEntityParserCtxt')
d like(xmlParserCtxtPtr)
d URL * value options(*string) const xmlChar *
d ID * value options(*string) const xmlChar *
d base * value options(*string) const xmlChar *
d xmlSwitchEncoding...
d pr 10i 0 extproc('xmlSwitchEncoding')
d ctxt value like(xmlParserCtxtPtr)
d enc value like(xmlCharEncoding)
d xmlSwitchToEncoding...
d pr 10i 0 extproc('xmlSwitchToEncoding')
d ctxt value like(xmlParserCtxtPtr)
d handler value like(xmlCharEncodingHandlerPtr)
d xmlSwitchInputEncoding...
d pr 10i 0 extproc('xmlSwitchInputEncoding')
d ctxt value like(xmlParserCtxtPtr)
d input value like(xmlParserInputPtr)
d handler value like(xmlCharEncodingHandlerPtr)
* Input Streams.
d xmlNewStringInputStream...
d pr extproc('xmlNewStringInputStream')
d like(xmlParserInputPtr)
d ctxt value like(xmlParserCtxtPtr)
d buffer * value options(*string) const xmlChar *
d xmlNewEntityInputStream...
d pr extproc('xmlNewEntityInputStream')
d like(xmlParserInputPtr)
d ctxt value like(xmlParserCtxtPtr)
d entity value like(xmlEntityPtr)
d xmlPushInput pr 10i 0 extproc('xmlPushInput')
d ctxt value like(xmlParserCtxtPtr)
d input value like(xmlParserInputPtr)
d xmlPopInput pr extproc('xmlPopInput')
d like(xmlChar)
d ctxt value like(xmlParserCtxtPtr)
d xmlFreeInputStream...
d pr extproc('xmlFreeInputStream')
d input value like(xmlParserInputPtr)
d xmlNewInputFromFile...
d pr extproc('xmlNewInputFromFile')
d like(xmlParserInputPtr)
d ctxt value like(xmlParserCtxtPtr)
d filename * value options(*string) const char *
d xmlNewInputStream...
d pr extproc('xmlNewInputStream')
d like(xmlParserInputPtr)
d ctxt value like(xmlParserCtxtPtr)
* Namespaces.
d xmlSplitQName pr * extproc('xmlSplitQName') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d name * value options(*string) const xmlChar *
d prefix * xmlChar *(*)
* Generic production rules.
d xmlParseName pr * extproc('xmlParseName') const xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseNmtoken...
d pr * extproc('xmlParseNmtoken') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseEntityValue...
d pr * extproc('xmlParseEntityValue') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d orig * xmlChar *(*)
d xmlParseAttValue...
d pr * extproc('xmlParseAttValue') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseSystemLiteral...
d pr * extproc('xmlParseSystemLiteral') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParsePubidLiteral...
d pr * extproc('xmlParsePubidLiteral') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseCharData...
d pr extproc('xmlParseCharData')
d ctxt value like(xmlParserCtxtPtr)
d cdata 10i 0 value
d xmlParseExternalID...
d pr * extproc('xmlParseExternalID') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d publicID * xmlChar *(*)
d strict 10i 0 value
d xmlParseComment...
d pr extproc('xmlParseComment')
d ctxt value like(xmlParserCtxtPtr)
d xmlParsePITarget...
d pr * extproc('xmlParsePITarget') const xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParsePI pr extproc('xmlParsePI')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseNotationDecl...
d pr extproc('xmlParseNotationDecl')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseEntityDecl...
d pr extproc('xmlParseEntityDecl')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseDefaultDecl...
d pr 10i 0 extproc('xmlParseDefaultDecl')
d ctxt value like(xmlParserCtxtPtr)
d value * xmlChar *(*)
d xmlParseNotationType...
d pr extproc('xmlParseNotationType')
d like(xmlEnumerationPtr)
d ctxt value like(xmlParserCtxtPtr)
d xmlParseEnumerationType...
d pr extproc('xmlParseEnumerationType')
d like(xmlEnumerationPtr)
d ctxt value like(xmlParserCtxtPtr)
d xmlParseEnumeratedType...
d pr 10i 0 extproc('xmlParseEnumeratedType')
d ctxt value like(xmlParserCtxtPtr)
d tree * value xmlEnumerationPtr *
d xmlParseAttributeType...
d pr 10i 0 extproc('xmlParseAttributeType')
d ctxt value like(xmlParserCtxtPtr)
d tree * value xmlEnumerationPtr *
d xmlParseAttributeListDecl...
d pr extproc('xmlParseAttributeListDecl')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseElementMixedContentDecl...
d pr extproc(
d 'xmlParseElementMixedContentDecl')
d like(xmlElementContentPtr)
d ctxt value like(xmlParserCtxtPtr)
d inputchk 10i 0 value
d xmlParseElementChildrenContentDecl...
d pr extproc(
d 'xmlParseElementChildrenContentDecl')
d like(xmlElementContentPtr)
d ctxt value like(xmlParserCtxtPtr)
d inputchk 10i 0 value
d xmlParseElementContentDecl...
d pr 10i 0 extproc('xmlParseElementContentDecl')
d ctxt value like(xmlParserCtxtPtr)
d name * value options(*string) const xmlChar *
d result * value xmlElementContentPtr
d *
d xmlParseElementDecl...
d pr 10i 0 extproc('xmlParseElementDecl')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseMarkupDecl...
d pr extproc('xmlParseMarkupDecl')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseCharRef...
d pr 10i 0 extproc('xmlParseCharRef')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseEntityRef...
d pr extproc('xmlParseEntityRef')
d like(xmlEntityPtr)
d ctxt value like(xmlParserCtxtPtr)
d xmlParseReference...
d pr extproc('xmlParseReference')
d ctxt value like(xmlParserCtxtPtr)
d xmlParsePEReference...
d pr extproc('xmlParsePEReference')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseDocTypeDecl...
d pr extproc('xmlParseDocTypeDecl')
d ctxt value like(xmlParserCtxtPtr)
/if defined(LIBXML_SAX1_ENABLED)
d xmlParseAttribute...
d pr * extproc('xmlParseAttribute') const xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d value * xmlChar *(*)
d xmlParseStartTag...
d pr * extproc('xmlParseStartTag') const xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseEndTag pr extproc('xmlParseEndTag')
d ctxt value like(xmlParserCtxtPtr)
/endif LIBXML_SAX1_ENABLED
d xmlParseCDSect pr extproc('xmlParseCDSect')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseContent...
d pr extproc('xmlParseContent')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseElement...
d pr extproc('xmlParseElement')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseVersionNum...
d pr * extproc('xmlParseVersionNum') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseVersionInfo...
d pr * extproc('xmlParseVersionInfo') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseEncName...
d pr * extproc('xmlParseEncName') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseEncodingDecl...
d pr * extproc('xmlParseEncodingDecl') const xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseSDDecl pr 10i 0 extproc('xmlParseSDDecl')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseXMLDecl...
d pr extproc('xmlParseXMLDecl')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseTextDecl...
d pr extproc('xmlParseTextDecl')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseMisc pr extproc('xmlParseMisc')
d ctxt value like(xmlParserCtxtPtr)
d xmlParseExternalSubset...
d pr extproc('xmlParseExternalSubset')
d ctxt value like(xmlParserCtxtPtr)
d ExternalID * value options(*string) const xmlChar *
d SystemID * value options(*string) const xmlChar *
* XML_SUBSTITUTE_NONE:
*
* If no entities need to be substituted.
d XML_SUBSTITUTE_NONE...
d c 0
* XML_SUBSTITUTE_REF:
*
* Whether general entities need to be substituted.
d XML_SUBSTITUTE_REF...
d c 1
* XML_SUBSTITUTE_PEREF:
*
* Whether parameter entities need to be substituted.
d XML_SUBSTITUTE_PEREF...
d c 2
* XML_SUBSTITUTE_BOTH:
*
* Both general and parameter entities need to be substituted.
d XML_SUBSTITUTE_BOTH...
d c 3
d xmlStringDecodeEntities...
d pr * extproc('xmlStringDecodeEntities') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d str * value options(*string) const xmlChar *
d what 10i 0 value
d end value like(xmlChar)
d end2 value like(xmlChar)
d end3 value like(xmlChar)
d xmlStringLenDecodeEntities...
d pr * extproc('xmlStringLenDecodeEntities')xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d str * value options(*string) const xmlChar *
d len 10i 0 value
d what 10i 0 value
d end value like(xmlChar)
d end2 value like(xmlChar)
d end3 value like(xmlChar)
* Generated by MACROS on top of parser.c c.f. PUSH_AND_POP.
d nodePush pr 10i 0 extproc('nodePush')
d ctxt value like(xmlParserCtxtPtr)
d value value like(xmlNodePtr)
d nodePop pr extproc('nodePop')
d like(xmlNodePtr)
d ctxt value like(xmlParserCtxtPtr)
d inputPush pr 10i 0 extproc('inputPush')
d ctxt value like(xmlParserCtxtPtr)
d value value like(xmlParserInputPtr)
d inputPop pr extproc('inputPop')
d like(xmlParserInputPtr)
d ctxt value like(xmlParserCtxtPtr)
d namePop pr * extproc('namePop') const xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d namePush pr 10i 0 extproc('namePush')
d ctxt value like(xmlParserCtxtPtr)
d value * value options(*string) const xmlChar *
* other commodities shared between parser.c and parserInternals.
d xmlSkipBlankChars...
d pr 10i 0 extproc('xmlSkipBlankChars')
d ctxt value like(xmlParserCtxtPtr)
d xmlStringCurrentChar...
d pr 10i 0 extproc('xmlStringCurrentChar')
d ctxt value like(xmlParserCtxtPtr)
d cur * value options(*string) const xmlChar *
d len * value int *
d xmlParserHandlePEReference...
d pr extproc('xmlParserHandlePEReference')
d ctxt value like(xmlParserCtxtPtr)
d xmlCheckLanguageID...
d pr 10i 0 extproc('xmlCheckLanguageID')
d lang * value options(*string) const xmlChar *
* Really core function shared with HTML parser.
d xmlCurrentChar pr 10i 0 extproc('xmlCurrentChar')
d ctxt value like(xmlParserCtxtPtr)
d len * value int *
d xmlCopyCharMultiByte...
d pr 10i 0 extproc('xmlCopyCharMultiByte')
d out * value options(*string) xmlChar *
d val 10i 0 value
d xmlCopyChar pr 10i 0 extproc('xmlCopyChar')
d len 10i 0 value
d out * value options(*string) xmlChar *
d val 10i 0 value
d xmlNextChar pr extproc('xmlNextChar')
d ctxt value like(xmlParserCtxtPtr)
d xmlParserInputShrink...
d pr extproc('xmlParserInputShrink')
d in value like(xmlParserInputPtr)
/if defined(LIBXML_HTML_ENABLED)
* Actually comes from the HTML parser but launched from the init stuff.
d htmlInitAutoClose...
d pr extproc('htmlInitAutoClose')
d htmlCreateFileParserCtxt...
d pr extproc('htmlCreateFileParserCtxt')
d like(htmlParserCtxtPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
/endif
* Specific function to keep track of entities references
* and used by the XSLT debugger.
/if defined(LIBXML_LEGACY_ENABLED)
* xmlEntityReferenceFunc:
* @ent: the entity
* @firstNode: the fist node in the chunk
* @lastNode: the last nod in the chunk
*
* Callback function used when one needs to be able to track back the
* provenance of a chunk of nodes inherited from an entity replacement.
d xmlEntityReferenceFunc...
d s * based(######typedef######)
d procptr
d xmlSetEntityReferenceFunc...
d pr extproc('xmlSetEntityReferenceFunc')
d func value like(xmlEntityReferenceFunc)
d xmlParseQuotedString...
d pr * extproc('xmlParseQuotedString') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParseNamespace...
d pr extproc('xmlParseNamespace')
d ctxt value like(xmlParserCtxtPtr)
d xmlNamespaceParseNSDef...
d pr * extproc('xmlNamespaceParseNSDef') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlScanName pr * extproc('xmlScanName') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlNamespaceParseNCName...
d pr * extproc('xmlNamespaceParseNCName') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d xmlParserHandleReference...
d pr extproc('xmlParserHandleReference')
d ctxt value like(xmlParserCtxtPtr)
d xmlNamespaceParseQName...
d pr * extproc('xmlNamespaceParseQName') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d prefix * xmlChar *(*)
* Entities
d xmlDecodeEntities...
d pr * extproc('xmlDecodeEntities') xmlChar *
d ctxt value like(xmlParserCtxtPtr)
d len 10i 0 value
d what 10i 0 value
d end value like(xmlChar)
d end2 value like(xmlChar)
d end3 value like(xmlChar)
d xmlHandleEntity...
d pr extproc('xmlHandleEntity')
d ctxt value like(xmlParserCtxtPtr)
d entity value like(xmlEntityPtr)
/endif LIBXML_LEGACY_ENABLD
/endif

View File

@@ -0,0 +1,117 @@
* Summary: pattern expression handling
* Description: allows to compile and test pattern expressions for nodes
* either in a tree or based on a parser state.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_PATTERN_H__)
/define XML_PATTERN_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
/include "libxmlrpg/dict"
/if defined(LIBXML_PATTERN_ENABLED)
* xmlPattern:
*
* A compiled (XPath based) pattern to select nodes
d xmlPatternPtr...
d s * based(######typedef######)
* xmlPatternFlags:
*
* This is the set of options affecting the behaviour of pattern
* matching with this module
d xmlPatternFlags...
d s 10i 0 based(######typedef######) enum
d XML_PATTERN_DEFAULT... Simple pattern match
d c X'0000'
d XML_PATTERN_XPATH... Std XPath pattern
d c X'0001'
d XML_PATTERN_XSSEL... Schm sel XPth subset
d c X'0002'
d XML_PATTERN_XSFIELD... Schm fld XPth subset
d c X'0004'
d xmlFreePattern pr extproc('xmlFreePattern')
d comp value like(xmlPatternPtr)
d xmlFreePatternList...
d pr extproc('xmlFreePatternList')
d comp value like(xmlPatternPtr)
d xmlPatterncompile...
d pr extproc('xmlPatterncompile')
d like(xmlPatternPtr)
d pattern * value options(*string) const xmlChar *
d dict * value xmlDict *
d flags 10i 0 value
d namespaces * const xmlChar *(*)
d xmlPatternMatch...
d pr 10i 0 extproc('xmlPatternMatch')
d comp value like(xmlPatternPtr)
d node value like(xmlNodePtr)
* streaming interfaces
d xmlStreamCtxtPtr...
d s * based(######typedef######)
d xmlPatternStreamable...
d pr 10i 0 extproc('xmlPatternStreamable')
d comp value like(xmlPatternPtr)
d xmlPatternMaxDepth...
d pr 10i 0 extproc('xmlPatternMaxDepth')
d comp value like(xmlPatternPtr)
d xmlPatternMinDepth...
d pr 10i 0 extproc('xmlPatternMinDepth')
d comp value like(xmlPatternPtr)
d xmlPatternFromRoot...
d pr 10i 0 extproc('xmlPatternFromRoot')
d comp value like(xmlPatternPtr)
d xmlPatternGetStreamCtxt...
d pr extproc('xmlPatternGetStreamCtxt')
d like(xmlStreamCtxtPtr)
d comp value like(xmlPatternPtr)
d xmlFreeStreamCtxt...
d pr extproc('xmlFreeStreamCtxt')
d stream value like(xmlStreamCtxtPtr)
d xmlStreamPushNode...
d pr 10i 0 extproc('xmlStreamPushNode')
d stream value like(xmlStreamCtxtPtr)
d name * value options(*string) const xmlChar *
d ns * value options(*string) const xmlChar *
d nodeType 10i 0 value
d xmlStreamPush pr 10i 0 extproc('xmlStreamPush')
d stream value like(xmlStreamCtxtPtr)
d name * value options(*string) const xmlChar *
d ns * value options(*string) const xmlChar *
d xmlStreamPushAttr...
d pr 10i 0 extproc('xmlStreamPushAttr')
d stream value like(xmlStreamCtxtPtr)
d name * value options(*string) const xmlChar *
d ns * value options(*string) const xmlChar *
d xmlStreamPop pr 10i 0 extproc('xmlStreamPop')
d stream value like(xmlStreamCtxtPtr)
d xmlStreamWantsAnyNode...
d pr 10i 0 extproc('xmlStreamWantsAnyNode')
d stream value like(xmlStreamCtxtPtr)
/endif LIBXML_PATTERN_ENBLD
/endif XML_PATTERN_H__

View File

@@ -0,0 +1,297 @@
* Summary: implementation of the Relax-NG validation
* Description: implementation of the Relax-NG validation
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_RELAX_NG__)
/define XML_RELAX_NG__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/hash"
/include "libxmlrpg/xmlstring"
/if defined(LIBXML_SCHEMAS_ENABLED)
d xmlRelaxNGPtr s * based(######typedef######)
* xmlRelaxNGValidityErrorFunc:
* @ctx: the validation context
* @msg: the message
* @...: extra arguments
*
* Signature of an error callback from a Relax-NG validation
d xmlRelaxNGValidityErrorFunc...
d s * based(######typedef######)
d procptr
* xmlRelaxNGValidityWarningFunc:
* @ctx: the validation context
* @msg: the message
* @...: extra arguments
*
* Signature of a warning callback from a Relax-NG validation
d xmlRelaxNGValidityWarningFunc...
d s * based(######typedef######)
d procptr
* A schemas validation context
d xmlRelaxNGParserCtxtPtr...
d s * based(######typedef######)
d xmlRelaxNGValidCtxtPtr...
d s * based(######typedef######)
* xmlRelaxNGValidErr:
*
* List of possible Relax NG validation errors
d xmlRelaxNGValidErr...
d s 10i 0 based(######typedef######) enum
d XML_RELAXNG_OK...
d c 0
d XML_RELAXNG_ERR_MEMORY...
d c 1
d XML_RELAXNG_ERR_TYPE...
d c 2
d XML_RELAXNG_ERR_TYPEVAL...
d c 3
d XML_RELAXNG_ERR_DUPID...
d c 4
d XML_RELAXNG_ERR_TYPECMP...
d c 5
d XML_RELAXNG_ERR_NOSTATE...
d c 6
d XML_RELAXNG_ERR_NODEFINE...
d c 7
d XML_RELAXNG_ERR_LISTEXTRA...
d c 8
d XML_RELAXNG_ERR_LISTEMPTY...
d c 9
d XML_RELAXNG_ERR_INTERNODATA...
d c 10
d XML_RELAXNG_ERR_INTERSEQ...
d c 11
d XML_RELAXNG_ERR_INTEREXTRA...
d c 12
d XML_RELAXNG_ERR_ELEMNAME...
d c 13
d XML_RELAXNG_ERR_ATTRNAME...
d c 14
d XML_RELAXNG_ERR_ELEMNONS...
d c 15
d XML_RELAXNG_ERR_ATTRNONS...
d c 16
d XML_RELAXNG_ERR_ELEMWRONGNS...
d c 17
d XML_RELAXNG_ERR_ATTRWRONGNS...
d c 18
d XML_RELAXNG_ERR_ELEMEXTRANS...
d c 19
d XML_RELAXNG_ERR_ATTREXTRANS...
d c 20
d XML_RELAXNG_ERR_ELEMNOTEMPTY...
d c 21
d XML_RELAXNG_ERR_NOELEM...
d c 22
d XML_RELAXNG_ERR_NOTELEM...
d c 23
d XML_RELAXNG_ERR_ATTRVALID...
d c 24
d XML_RELAXNG_ERR_CONTENTVALID...
d c 25
d XML_RELAXNG_ERR_EXTRACONTENT...
d c 26
d XML_RELAXNG_ERR_INVALIDATTR...
d c 27
d XML_RELAXNG_ERR_DATAELEM...
d c 28
d XML_RELAXNG_ERR_VALELEM...
d c 29
d XML_RELAXNG_ERR_LISTELEM...
d c 30
d XML_RELAXNG_ERR_DATATYPE...
d c 31
d XML_RELAXNG_ERR_VALUE...
d c 32
d XML_RELAXNG_ERR_LIST...
d c 33
d XML_RELAXNG_ERR_NOGRAMMAR...
d c 34
d XML_RELAXNG_ERR_EXTRADATA...
d c 35
d XML_RELAXNG_ERR_LACKDATA...
d c 36
d XML_RELAXNG_ERR_INTERNAL...
d c 37
d XML_RELAXNG_ERR_ELEMWRONG...
d c 38
d XML_RELAXNG_ERR_TEXTWRONG...
d c 39
* xmlRelaxNGParserFlags:
*
* List of possible Relax NG Parser flags
d xmlRelaxNGParserFlag...
d s 10i 0 based(######typedef######) enum
d XML_RELAXNGP_NONE...
d c 0
d XML_RELAXNGP_FREE_DOC...
d c 1
d XML_RELAXNGP_CRNG...
d c 2
d xmlRelaxNGInitTypes...
d pr 10i 0 extproc('xmlRelaxNGInitTypes')
d xmlRelaxNGCleanupTypes...
d pr extproc('xmlRelaxNGCleanupTypes')
* Interfaces for parsing.
d xmlRelaxNGNewParserCtxt...
d pr extproc('xmlRelaxNGNewParserCtxt')
d like(xmlRelaxNGParserCtxtPtr)
d URL * value options(*string) const char *
d xmlRelaxNGNewMemParserCtxt...
d pr extproc('xmlRelaxNGNewMemParserCtxt')
d like(xmlRelaxNGParserCtxtPtr)
d buffer * value options(*string) const char *
d size 10i 0 value
d xmlRelaxNGNewDocParserCtxt...
d pr extproc('xmlRelaxNGNewDocParserCtxt')
d like(xmlRelaxNGParserCtxtPtr)
d doc value like(xmlDocPtr)
d xmlRelaxParserSetFlag...
d pr 10i 0 extproc('xmlRelaxParserSetFlag')
d ctxt value like(xmlRelaxNGParserCtxtPtr)
d flag 10i 0 value
d xmlRelaxNGFreeParserCtxt...
d pr extproc('xmlRelaxNGFreeParserCtxt')
d ctxt value like(xmlRelaxNGParserCtxtPtr)
d xmlRelaxNGSetParserErrors...
d pr extproc('xmlRelaxNGSetParserErrors')
d ctxt value like(xmlRelaxNGParserCtxtPtr)
d err value
d like(xmlRelaxNGValidityErrorFunc)
d warn value
d like(xmlRelaxNGValidityWarningFunc)
d ctx * value void *
d xmlRelaxNGGetParserErrors...
d pr 10i 0 extproc('xmlRelaxNGGetParserErrors')
d ctxt value like(xmlRelaxNGParserCtxtPtr)
d err like(xmlRelaxNGValidityErrorFunc)
d warn like(xmlRelaxNGValidityWarningFunc)
d ctx * void *(*)
d xmlRelaxNGSetParserStructuredErrors...
d pr extproc(
d 'xmlRelaxNGSetParserStructuredErrors'
d )
d ctxt value like(xmlRelaxNGParserCtxtPtr)
d serror value like(xmlStructuredErrorFunc)
d ctx * value void *
d xmlRelaxNGParse...
d pr extproc('xmlRelaxNGParse')
d like(xmlRelaxNGPtr)
d ctxt value like(xmlRelaxNGParserCtxtPtr)
d xmlRelaxNGFree pr extproc('xmlRelaxNGFree')
d schema value like(xmlRelaxNGPtr)
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlRelaxNGDump pr extproc('xmlRelaxNGDump')
d output * value FILE *
d schema value like(xmlRelaxNGPtr)
d xmlRelaxNGDumpTree...
d pr extproc('xmlRelaxNGDumpTree')
d output * value FILE *
d schema value like(xmlRelaxNGPtr)
/endif LIBXML_OUTPUT_ENABLD
* Interfaces for validating
d xmlRelaxNGSetValidErrors...
d pr extproc('xmlRelaxNGSetValidErrors')
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d err value
d like(xmlRelaxNGValidityErrorFunc)
d warn value
d like(xmlRelaxNGValidityWarningFunc)
d ctx * value void *
d xmlRelaxNGGetValidErrors...
d pr 10i 0 extproc('xmlRelaxNGGetValidErrors')
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d err like(xmlRelaxNGValidityErrorFunc)
d warn like(xmlRelaxNGValidityWarningFunc)
d ctx * value void * *
d xmlRelaxNGSetValidStructuredErrors...
d pr extproc(
d 'xmlRelaxNGSetValidStructuredErrors')
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d serror value like(xmlStructuredErrorFunc)
d ctx * value void *
d xmlRelaxNGNewValidCtxt...
d pr extproc('xmlRelaxNGNewValidCtxt')
d like(xmlRelaxNGValidCtxtPtr)
d schema value like(xmlRelaxNGPtr)
d xmlRelaxNGFreeValidCtxt...
d pr extproc('xmlRelaxNGFreeValidCtxt')
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d xmlRelaxNGValidateDoc...
d pr 10i 0 extproc('xmlRelaxNGValidateDoc')
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d doc value like(xmlDocPtr)
* Interfaces for progressive validation when possible
d xmlRelaxNGValidatePushElement...
d pr 10i 0 extproc(
d 'xmlRelaxNGValidatePushElement')
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d xmlRelaxNGValidatePushCData...
d pr 10i 0 extproc(
d 'xmlRelaxNGValidatePushCData')
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d data * value options(*string) const xmlChar *
d len 10i 0 value
d xmlRelaxNGValidatePopElement...
d pr 10i 0 extproc(
d 'xmlRelaxNGValidatePopElement')
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d xmlRelaxNGValidateFullElement...
d pr 10i 0 extproc(
d 'xmlRelaxNGValidateFullElement')
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
/endif LIBXML_SCHEMAS_ENBLD
/endif XML_RELAX_NG__

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,195 @@
* Summary: XML Schemastron implementation
* Description: interface to the XML Schematron validity checking.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_SCHEMATRON_H__)
/define XML_SCHEMATRON_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_SCHEMATRON_ENABLED)
/include "libxmlrpg/tree"
d xmlSchematronValidOptions...
d s 10i 0 based(######typedef######) enum
d XML_SCHEMATRON_OUT_QUIET... Quiet no report
d c X'0001'
d XML_SCHEMATRON_OUT_TEXT... Build textual report
d c X'0002'
d XML_SCHEMATRON_OUT_XML... Output SVRL
d c X'0004'
d XML_SCHEMATRON_OUT_ERROR... Output to error func
d c X'0008'
d XML_SCHEMATRON_OUT_FILE... Output to file descr
d c X'0100'
d XML_SCHEMATRON_OUT_BUFFER... Output to a buffer
d c X'0200'
d XML_SCHEMATRON_OUT_IO... Output to I/O mech
d c X'0400'
* The schemas related types are kept internal
d xmlSchematronPtr...
d s * based(######typedef######)
* xmlSchematronValidityErrorFunc:
* @ctx: the validation context
* @msg: the message
* @...: extra arguments
*
* Signature of an error callback from a Schematron validation
d xmlSchematronValidityErrorFunc...
d s * based(######typedef######)
d procptr
* xmlSchematronValidityWarningFunc:
* @ctx: the validation context
* @msg: the message
* @...: extra arguments
*
* Signature of a warning callback from a Schematron validation
d xmlSchematronValidityWarningFunc...
d s * based(######typedef######)
d procptr
* A schemas validation context
d xmlSchematronParserCtxtPtr...
d s * based(######typedef######)
d xmlSchematronValidCtxtPtr...
d s * based(######typedef######)
* Interfaces for parsing.
d xmlSchematronNewParserCtxt...
d pr extproc('xmlSchematronNewParserCtxt')
d like(xmlSchematronParserCtxtPtr)
d URL * value options(*string) const char *
d xmlSchematronNewMemParserCtxt...
d pr extproc(
d 'xmlSchematronNewMemParserCtxt')
d like(xmlSchematronParserCtxtPtr)
d buffer * value options(*string) const char *
d size 10i 0 value
d xmlSchematronNewDocParserCtxt...
d pr extproc(
d 'xmlSchematronNewDocParserCtxt')
d like(xmlSchematronParserCtxtPtr)
d doc value like(xmlDocPtr)
d xmlSchematronFreeParserCtxt...
d pr extproc(
d 'xmlSchematronFreeParserCtxt')
d ctxt value
d like(xmlSchematronParserCtxtPtr)
/if defined(DISABLED)
d xmlSchematronSetParserErrors...
d pr extproc(
d 'xmlSchematronSetParserErrors')
d ctxt value
d like(xmlSchematronParserCtxtPtr)
d err value
d like(xmlSchematronValidityErrorFunc)
d warn value like(
d xmlSchematronValidityWarningFunc)
d ctx * value void *
d xmlSchematronGetParserErrors...
d pr 10i 0 extproc(
d 'xmlSchematronGetParserErrors')
d ctxt value
d like(xmlSchematronParserCtxtPtr)
d err like(xmlSchematronValidityErrorFunc)
d warn like(
d xmlSchematronValidityWarningFunc)
d ctx * void *(*)
d xmlSchematronIsValid...
d pr 10i 0 extproc('xmlSchematronIsValid')
d ctxt value like(xmlSchematronValidCtxtPtr)
/endif
d xmlSchematronParse...
d pr extproc('xmlSchematronParse')
d like(xmlSchematronPtr)
d ctxt value
d like(xmlSchematronParserCtxtPtr)
d xmlSchematronFree...
d pr extproc('xmlSchematronFree')
d schema value like(xmlSchematronPtr)
* Interfaces for validating
d xmlSchematronSetValidStructuredErrors...
d pr extproc('xmlSchematronSetValidStruct-
d uredErrors')
d ctxt value like(xmlSchematronValidCtxtPtr)
d serror value like(xmlStructuredErrorFunc)
d ctx * value void *
/if defined(DISABLED)
d xmlSchematronSetValidErrors...
d pr extproc(
d 'xmlSchematronSetValidErrors')
d ctxt value like(xmlSchematronValidCtxtPtr)
d err value
d like(xmlSchematronValidityErrorFunc)
d warn value like(
d xmlSchematronValidityWarningFunc)
d ctx * value void *
d xmlSchematronGetValidErrors...
d pr 10i 0 extproc(
d 'xmlSchematronGetValidErrors')
d ctxt value like(xmlSchematronValidCtxtPtr)
d err like(xmlSchematronValidityErrorFunc)
d warn like(
d xmlSchematronValidityWarningFunc)
d ctx * void *(*)
d xmlSchematronSetValidOptions...
d pr 10i 0 extproc(
d 'xmlSchematronSetValidOptions')
d ctxt value like(xmlSchematronValidCtxtPtr)
d options 10i 0 value
d xmlSchematronValidCtxtGetOptions...
d pr 10i 0 extproc(
d 'xmlSchematronValidCtxtGetOptions')
d ctxt value like(xmlSchematronValidCtxtPtr)
d xmlSchematronValidateOneElement...
d pr 10i 0 extproc(
d 'xmlSchematronValidateOneElement')
d ctxt value like(xmlSchematronValidCtxtPtr)
d elem value like(xmlNodePtr)
/endif
d xmlSchematronNewValidCtxt...
d pr extproc('xmlSchematronNewValidCtxt')
d like(xmlSchematronValidCtxtPtr)
d schema value like(xmlSchematronPtr)
d options 10i 0 value
d xmlSchematronFreeValidCtxt...
d pr extproc('xmlSchematronFreeValidCtxt')
d ctxt value like(xmlSchematronValidCtxtPtr)
d xmlSchematronValidateDoc...
d pr 10i 0 extproc('xmlSchematronValidateDoc')
d ctxt value like(xmlSchematronValidCtxtPtr)
d instance value like(xmlDocPtr)
/endif _SCHEMATRON_ENABLED
/endif XML_SCHEMATRON_H__

View File

@@ -0,0 +1,70 @@
* Summary: interfaces for thread handling
* Description: set of generic threading related routines
* should work with pthreads, Windows native or TLS threads
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_THREADS_H__)
/define XML_THREADS_H__
/include "libxmlrpg/xmlversion"
* xmlMutex are a simple mutual exception locks.
d xmlMutexPtr s * based(######typedef######)
* xmlRMutex are reentrant mutual exception locks.
d xmlRMutexPtr s * based(######typedef######)
/include "libxmlrpg/globals"
d xmlNewMutex pr extproc('xmlNewMutex')
d like(xmlMutexPtr)
d xmlMutexLock pr extproc('xmlMutexLock')
d tok value like(xmlMutexPtr)
d xmlMutexUnlock pr extproc('xmlMutexUnlock')
d tok value like(xmlMutexPtr)
d xmlFreeMutex pr extproc('xmlFreeMutex')
d tok value like(xmlMutexPtr)
d xmlNewRMutex pr extproc('xmlNewRMutex')
d like(xmlRMutexPtr)
d xmlRMutexLock pr extproc('xmlRMutexLock')
d tok value like(xmlRMutexPtr)
d xmlRMutexUnlock...
d pr extproc('xmlRMutexUnlock')
d tok value like(xmlRMutexPtr)
d xmlFreeRMutex pr extproc('xmlFreeRMutex')
d tok value like(xmlRMutexPtr)
* Library wide APIs.
d xmlInitThreads pr extproc('xmlInitThreads')
d xmlLockLibrary pr extproc('xmlLockLibrary')
d xmlUnlockLibrary...
d pr extproc('xmlUnlockLibrary')
d xmlGetThreadId pr 10i 0 extproc('xmlGetThreadId')
d xmlIsMainThread...
d pr 10i 0 extproc('xmlIsMainThread')
d xmlCleanupThreads...
d pr extproc('xmlCleanupThreads')
d xmlGetGlobalState...
d pr extproc('xmlGetGlobalState')
d like(xmlGlobalStatePtr)
/endif XML_THREADS_H__

View File

@@ -0,0 +1,71 @@
* Supplementary character code conversion functions for
* EBCDIC environments.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(TRANSCODE_H__)
/define TRANSCODE_H__
/include "libxmlrpg/dict"
/include "libxmlrpg/xmlstdarg"
d xmlZapDict pr extproc('xmlZapDict')
d dict like(xmlDictPtr)
d xmlTranscodeResult...
d pr * extproc('xmlTranscodeResult') const char *
d s * value options(*string) const xmlChar *
d encoding * value options(*string) const char *
d dict like(xmlDictPtr) options(*omit)
d freeproc * value procptr
d xmlTranscodeString...
d pr * extproc('xmlTranscodeString') const xmlChar *
d s * value options(*string) const char *
d encoding * value options(*string) const char *
d dict like(xmlDictPtr) options(*omit)
d xmlTranscodeWString...
d pr * extproc('xmlTranscodeWString') const xmlChar *
d s * value options(*string) const char *
d encoding * value options(*string) const char *
d dict like(xmlDictPtr) options(*omit)
d xmlTranscodeHString...
d pr * extproc('xmlTranscodeHString') const xmlChar *
d s * value options(*string) const char *
d encoding * value options(*string) const char *
d dict like(xmlDictPtr) options(*omit)
/if not defined(XML_NO_SHORT_NAMES)
d xmlTR pr * extproc('xmlTranscodeResult') const char *
d s * value options(*string) const xmlChar *
d encoding * value options(*string) const char *
d dict like(xmlDictPtr) options(*omit)
d freeproc * value procptr
d xmlTS pr * extproc('xmlTranscodeString') const xmlChar *
d s * value options(*string) const char *
d encoding * value options(*string) const char *
d dict like(xmlDictPtr) options(*omit)
d xmlTW pr * extproc('xmlTranscodeWString') const xmlChar *
d s * value options(*string) const char *
d encoding * value options(*string) const char *
d dict like(xmlDictPtr) options(*omit)
d xmlTH pr * extproc('xmlTranscodeHString') const xmlChar *
d s * value options(*string) const char *
d encoding * value options(*string) const char *
d dict like(xmlDictPtr) options(*omit)
/endif
d xmlVasprintf pr * extproc('xmlVasprintf')
d dict like(xmlDictPtr) options(*omit)
d encoding * value options(*string) const char *
d fmt * value options(*string) const xmlChar *
d args likeds(xmlVaList)
/endif

1628
os400/libxmlrpg/tree.rpgle Normal file

File diff suppressed because it is too large Load Diff

100
os400/libxmlrpg/uri.rpgle Normal file
View File

@@ -0,0 +1,100 @@
* Summary: library of generic URI related routines
* Description: library of generic URI related routines
* Implements RFC 2396
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_URI_H__)
/define XML_URI_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
* xmlURI:
*
* A parsed URI reference. This is a struct containing the various fields
* as described in RFC 2396 but separated for further processing.
*
* Note: query is a deprecated field which is incorrectly unescaped.
* query_raw takes precedence over query if the former is set.
* See: http://mail.gnome.org/archives/xml/2007-April/thread.html#00127
d xmlURIPtr s * based(######typedef######)
d xmlURI ds based(xmlURIPtr)
d align qualified
d scheme * char *
d opaque * char *
d authority * char *
d server * char *
d user * char *
d port 10i 0
d path * char *
d query * char *
d fragment * char *
d cleanup 10i 0
d query_raw * char *
d xmlCreateURI pr extproc('xmlCreateURI')
d like(xmlURIPtr)
d xmlBuildURI pr * extproc('xmlBuildURI') xmlChar *
d URI * value options(*string) const xmlChar *
d base * value options(*string) const xmlChar *
d xmlBuildRelativeURI...
d pr * extproc('xmlBuildRelativeURI') xmlChar *
d URI * value options(*string) const xmlChar *
d base * value options(*string) const xmlChar *
d xmlParseURI pr extproc('xmlParseURI')
d like(xmlURIPtr)
d str * value options(*string) const char *
d xmlParseURIRaw pr extproc('xmlParseURIRaw')
d like(xmlURIPtr)
d str * value options(*string) const char *
d raw 10i 0 value
d xmlParseURIReference...
d pr 10i 0 extproc('xmlParseURIReference')
d uri value like(xmlURIPtr)
d str * value options(*string) const char *
d xmlSaveUri pr * extproc('xmlSaveUri') xmlChar *
d uri value like(xmlURIPtr)
d xmlPrintURI pr extproc('xmlPrintURI')
d stream * value FILE *
d uri value like(xmlURIPtr)
d xmlURIEscapeStr...
d pr * extproc('xmlURIEscapeStr') xmlChar *
d str * value options(*string) const xmlChar *
d list * value options(*string) const xmlChar *
d xmlURIUnescapeString...
d pr * extproc('xmlURIUnescapeString') char *
d str * value options(*string) const char *
d len 10i 0 value
d target * value options(*string) char *
d xmlNormalizeURIPath...
d pr 10i 0 extproc('xmlNormalizeURIPath')
d path * value options(*string) char *
d xmlURIEscape pr * extproc('xmlURIEscape') xmlChar *
d str * value options(*string) const xmlChar *
d xmlFreeURI pr extproc('xmlFreeURI')
d uri value like(xmlURIPtr)
d xmlCanonicPath pr * extproc('xmlCanonicPath') xmlChar *
d path * value options(*string) const xmlChar *
d xmlPathToURI pr * extproc('xmlPathToURI') xmlChar *
d path * value options(*string) const xmlChar *
/endif XML_URI_H__

575
os400/libxmlrpg/valid.rpgle Normal file
View File

@@ -0,0 +1,575 @@
* Summary: The DTD validation
* Description: API for the DTD handling and the validity checking
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_VALID_H__)
/define XML_VALID_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/xmlerror"
/include "libxmlrpg/tree"
/include "libxmlrpg/list"
/include "libxmlrpg/xmlautomata"
/include "libxmlrpg/xmlregexp"
* Validation state added for non-determinist content model.
d xmlValidStatePtr...
d s * based(######typedef######)
* xmlValidityErrorFunc:
* @ctx: usually an xmlValidCtxtPtr to a validity error context,
* but comes from ctxt->userData (which normally contains such
* a pointer); ctxt->userData can be changed by the user.
* @msg: the string to format *printf like vararg
* @...: remaining arguments to the format
*
* Callback called when a validity error is found. This is a message
* oriented function similar to an *printf function.
d xmlValidityErrorFunc...
d s * based(######typedef######)
d procptr
* xmlValidityWarningFunc:
* @ctx: usually an xmlValidCtxtPtr to a validity error context,
* but comes from ctxt->userData (which normally contains such
* a pointer); ctxt->userData can be changed by the user.
* @msg: the string to format *printf like vararg
* @...: remaining arguments to the format
*
* Callback called when a validity warning is found. This is a message
* oriented function similar to an *printf function.
d xmlValidityWarningFunc...
d s * based(######typedef######)
d procptr
* xmlValidCtxt:
* An xmlValidCtxt is used for error reporting when validating.
d xmlValidCtxtPtr...
d s * based(######typedef######)
d xmlValidCtxt ds based(xmlValidCtxtPtr)
d align qualified
d userdata * void *
d error like(xmlValidityErrorFunc) Error callback
d warning like(xmlValidityWarningFunc) Warning callback
*
* Node analysis stack used when validating within entities
*
d node like(xmlNodePtr) Current parsed Node
d nodeNr 10i 0 Parsing stack depth
d nodeMax 10i 0 Max stack depth
d nodeTab * xmlNodePtr *
*
d finishDtd 10u 0 Finish validtng DTD?
d doc like(xmlDocPtr) The document
d valid 10i 0 Temp check result
*
* state state used for non-determinist content validation
*
d vstate * xmlValidState *
d vstateNr 10i 0 Validat. stack depth
d vstateMax 10i 0 Max stack depth
d vstateTab * xmlValidState *
*
/if defined(LIBXML_REGEXP_ENABLED)
d am like(xmlAutomataPtr) The automata
d state like(xmlAutomataStatePtr) Automata build state
/else
d am *
d state *
/endif
* ALL notation declarations are stored in a table.
* There is one table per DTD.
d xmlNotationTablePtr...
d s * based(######typedef######)
* ALL element declarations are stored in a table.
* There is one table per DTD.
d xmlElementTablePtr...
d s * based(######typedef######)
* ALL attribute declarations are stored in a table.
* There is one table per DTD.
d xmlAttributeTablePtr...
d s * based(######typedef######)
* ALL IDs attributes are stored in a table.
* There is one table per document.
d xmlIDTablePtr s * based(######typedef######)
* ALL Refs attributes are stored in a table.
* There is one table per document.
d xmlRefTablePtr s * based(######typedef######)
* Notation
d xmlAddNotationDecl...
d pr extproc('xmlAddNotationDecl')
d like(xmlNotationPtr)
d ctxt value like(xmlValidCtxtPtr)
d dtd value like(xmlDtdPtr)
d name * value options(*string) const xmlChar *
d PublicID * value options(*string) const xmlChar *
d SystemID * value options(*string) const xmlChar *
/if defined(LIBXML_TREE_ENABLED)
d xmlCopyNotationTable...
d pr extproc('xmlCopyNotationTable')
d like(xmlNotationPtr)
d table value like(xmlNotationTablePtr)
/endif LIBXML_TREE_ENABLED
d xmlFreeNotationTable...
d pr extproc('xmlFreeNotationTable')
d table value like(xmlNotationTablePtr)
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlDumpNotationDecl...
d pr extproc('xmlDumpNotationDecl')
d buf value like(xmlBufferPtr)
d nota value like(xmlNotationPtr)
d xmlDumpNotationTable...
d pr extproc('xmlDumpNotationTable')
d buf value like(xmlBufferPtr)
d table value like(xmlNotationTablePtr)
/endif LIBXML_OUTPUT_ENABLD
* Element Content
* the non Doc version are being deprecated
d xmlNewElementContent...
d pr extproc('xmlNewElementContent')
d like(xmlElementContentPtr)
d name * value const xmlChar *
d type value like(xmlElementContentType)
d xmlCopyElementContent...
d pr extproc('xmlCopyElementContent')
d like(xmlElementContentPtr)
d content value like(xmlElementContentPtr)
d xmlFreeElementContent...
d pr extproc('xmlFreeElementContent')
d cur value like(xmlElementContentPtr)
* the new versions with doc argument
d xmlNewDocElementContent...
d pr extproc('xmlNewDocElementContent')
d like(xmlElementContentPtr)
d doc value like(xmlDocPtr)
d name * value const xmlChar *
d type value like(xmlElementContentType)
d xmlCopyDocElementContent...
d pr extproc('xmlCopyDocElementContent')
d like(xmlElementContentPtr)
d doc value like(xmlDocPtr)
d content value like(xmlElementContentPtr)
d xmlFreeDocElementContent...
d pr extproc('xmlFreeDocElementContent')
d doc value like(xmlDocPtr)
d cur value like(xmlElementContentPtr)
d xmlSnprintfElementContent...
d pr extproc('xmlSnprintfElementContent')
d buf 65535 options(*varsize)
d size 10i 0 value
d content value like(xmlElementContentPtr)
d englob 10i 0 value
/if defined(LIBXML_OUTPUT_ENABLED)
* DEPRECATED
d xmlSprintfElementContent...
d pr extproc('xmlSprintfElementContent')
d buf 65535 options(*varsize)
d content value like(xmlElementContentPtr)
d englob 10i 0 value
/endif LIBXML_OUTPUT_ENABLD
* DEPRECATED
* Element
d xmlAddElementDecl...
d pr extproc('xmlAddElementDecl')
d like(xmlElementPtr)
d ctxt value like(xmlValidCtxtPtr)
d dtd value like(xmlDtdPtr)
d name * value options(*string) const xmlChar *
d type value like(xmlElementTypeVal)
d content value like(xmlElementContentPtr)
/if defined(LIBXML_TREE_ENABLED)
d xmlCopyElementTable...
d pr extproc('xmlCopyElementTable')
d like(xmlElementTablePtr)
d table value like(xmlElementTablePtr)
/endif LIBXML_TREE_ENABLED
d xmlFreeElementTable...
d pr extproc('xmlFreeElementTable')
d table value like(xmlElementTablePtr)
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlDumpElementTable...
d pr extproc('xmlDumpElementTable')
d buf value like(xmlBufferPtr)
d table value like(xmlElementTablePtr)
d xmlDumpElementDecl...
d pr extproc('xmlDumpElementDecl')
d buf value like(xmlBufferPtr)
d elem value like(xmlElementPtr)
/endif LIBXML_OUTPUT_ENABLD
* Enumeration
d xmlCreateEnumeration...
d pr extproc('xmlCreateEnumeration')
d like(xmlEnumerationPtr)
d name * value options(*string) const xmlChar *
d xmlFreeEnumeration...
d pr extproc('xmlFreeEnumeration')
d cur value like(xmlEnumerationPtr)
/if defined(LIBXML_TREE_ENABLED)
d xmlCopyEnumeration...
d pr extproc('xmlCopyEnumeration')
d like(xmlEnumerationPtr)
d cur value like(xmlEnumerationPtr)
/endif LIBXML_TREE_ENABLED
* Attribute
d xmlAddAttributeDecl...
d pr extproc('xmlAddAttributeDecl')
d like(xmlAttributePtr)
d ctxt value like(xmlValidCtxtPtr)
d dtd value like(xmlDtdPtr)
d elem * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d ns * value options(*string) const xmlChar *
d type value like(xmlAttributeType)
d def value like(xmlAttributeDefault)
d defaultValue * value options(*string) const xmlChar *
d tree value like(xmlEnumerationPtr)
/if defined(LIBXML_TREE_ENABLED)
d xmlCopyAttributeTable...
d pr extproc('xmlCopyAttributeTable')
d like(xmlAttributeTablePtr)
d table value like(xmlAttributeTablePtr)
/endif LIBXML_TREE_ENABLED
d xmlFreeAttributeTable...
d pr extproc('xmlFreeAttributeTable')
d table value like(xmlAttributeTablePtr)
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlDumpAttributeTable...
d pr extproc('xmlDumpAttributeTable')
d buf value like(xmlBufferPtr)
d table value like(xmlAttributeTablePtr)
d xmlDumpAttributeDecl...
d pr extproc('xmlDumpAttributeDecl')
d buf value like(xmlBufferPtr)
d attr value like(xmlAttributePtr)
/endif LIBXML_OUTPUT_ENABLD
* IDs
d xmlAddID pr extproc('xmlAddID')
d like(xmlIDPtr)
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d value * value options(*string) const xmlChar *
d attr value like(xmlAttrPtr)
d xmlFreeIdTable pr extproc('xmlFreeIDTable')
d table value like(xmlIDTablePtr)
d xmlGetID pr extproc('xmlGetID')
d like(xmlAttrPtr)
d doc value like(xmlDocPtr)
d ID * value options(*string) const xmlChar *
d xmlIsID pr 10i 0 extproc('xmlIsID')
d doc value like(xmlDocPtr)
d node value like(xmlNodePtr)
d attr value like(xmlAttrPtr)
d xmlRemoveID pr 10i 0 extproc('xmlRemoveID')
d doc value like(xmlDocPtr)
d attr value like(xmlAttrPtr)
* IDREFs
d xmlAddRef pr extproc('xmlAddRef')
d like(xmlRefPtr)
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d value * value options(*string) const xmlChar *
d attr value like(xmlAttrPtr)
d xmlFreeRefTable...
d pr extproc('xmlFreeRefTable')
d table value like(xmlRefTablePtr)
d xmlIsRef pr 10i 0 extproc('xmlIsRef')
d doc value like(xmlDocPtr)
d node value like(xmlNodePtr)
d attr value like(xmlAttrPtr)
d xmlRemoveRef pr 10i 0 extproc('xmlRemoveRef')
d doc value like(xmlDocPtr)
d attr value like(xmlAttrPtr)
d xmlGetRefs pr extproc('xmlGetRefs')
d like(xmlListPtr)
d doc value like(xmlDocPtr)
d ID * value options(*string) const xmlChar *
* The public function calls related to validity checking.
/if defined(LIBXML_VALID_ENABLED)
* Allocate/Release Validation Contexts
d xmlNewValidCtxt...
d pr extproc('xmlNewValidCtxt')
d like(xmlValidCtxtPtr)
d xmlFreeValidCtxt...
d pr extproc('xmlFreeValidCtxt')
d ctxt value like(xmlValidCtxtPtr)
d xmlValidateRoot...
d pr 10i 0 extproc('xmlValidateRoot')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d xmlValidateElementDecl...
d pr 10i 0 extproc('xmlValidateElementDecl')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlElementPtr)
d xmlValidNormalizeAttributeValue...
d pr * extproc( xmlChar *
d 'xmlValidNormalizeAttributeValue')
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d name * value options(*string) const xmlChar *
d value * value options(*string) const xmlChar *
d xmlValidCtxtNormalizeAttributeValue...
d pr * extproc('xmlValidCtxt+ xmlChar *
d NormalizeAttributeValue')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d name * value options(*string) const xmlChar *
d value * value options(*string) const xmlChar *
d xmlValidateAttributeDecl...
d pr 10i 0 extproc('xmlValidateAttributeDecl')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d attr value like(xmlAttributePtr)
d xmlValidateAttributeValue...
d pr 10i 0 extproc('xmlValidateAttributeValue')
d type value like(xmlAttributeType)
d value * value options(*string) const xmlChar *
d xmlValidateNotationDecl...
d pr 10i 0 extproc('xmlValidateNotationDecl')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d nota value like(xmlNotationPtr)
d xmlValidateDtd pr 10i 0 extproc('xmlValidateDtd')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d dtd value like(xmlDtdPtr)
d xmlValidateDtdFinal...
d pr 10i 0 extproc('xmlValidateDtdFinal')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d xmlValidateDocument...
d pr 10i 0 extproc('xmlValidateDocument')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d xmlValidateElement...
d pr 10i 0 extproc('xmlValidateElement')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d xmlValidateOneElement...
d pr 10i 0 extproc('xmlValidateOneElement')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d xmlValidateOneAttribute...
d pr 10i 0 extproc('xmlValidateOneAttribute')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d attr value like(xmlAttrPtr)
d value * value options(*string) const xmlChar *
d xmlValidateOneNamespace...
d pr 10i 0 extproc('xmlValidateOneNamespace')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d prefix * value options(*string) const xmlChar *
d ns value like(xmlNsPtr)
d value * value options(*string) const xmlChar *
d xmlValidateDocumentFinal...
d pr 10i 0 extproc('xmlValidateDocumentFinal')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
/endif LIBXML_VALID_ENABLED
/undefine XML_TESTVAL
/if defined(LIBXML_VALID_ENABLED)
/define XML_TESTVAL
/elseif defined(LIBXML_SCHEMAS_ENABLED)
/define XML_TESTVAL
/endif
/if defined(XML_TESTVAL)
d xmlValidateNotationUse...
d pr 10i 0 extproc('xmlValidateNotationUse')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d notationName * value options(*string) const xmlChar *
/undefine XML_TESTVAL
/endif
d xmlIsMixedElement...
d pr 10i 0 extproc('xmlIsMixedElement')
d doc value like(xmlDocPtr)
d name * value options(*string) const xmlChar *
d xmlGetDtdAttrDesc...
d pr extproc('xmlGetDtdAttrDesc')
d like(xmlAttributePtr)
d dtd value like(xmlDtdPtr)
d elem * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d xmlGetDtdQAttrDesc...
d pr extproc('xmlGetDtdQAttrDesc')
d like(xmlAttributePtr)
d dtd value like(xmlDtdPtr)
d elem * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d prefix * value options(*string) const xmlChar *
d xmlGetDtdNotationDesc...
d pr extproc('xmlGetDtdNotationDesc')
d like(xmlNotationPtr)
d dtd value like(xmlDtdPtr)
d name * value options(*string) const xmlChar *
d xmlGetDtdQElementDesc...
d pr extproc('xmlGetDtdQElementDesc')
d like(xmlElementPtr)
d dtd value like(xmlDtdPtr)
d name * value options(*string) const xmlChar *
d prefix * value options(*string) const xmlChar *
d xmlGetDtdElementDesc...
d pr extproc('xmlGetDtdElementDesc')
d like(xmlElementPtr)
d dtd value like(xmlDtdPtr)
d name * value options(*string) const xmlChar *
/if defined(LIBXML_VALID_ENABLED)
d xmlValidGetPotentialChildren...
d pr 10i 0 extproc(
d 'xmlValidGetPotentialChildren')
d ctree * value xmlElementContent *
d names * const xmlChar *(*)
d len 10i 0
d max 10i 0 value
d xmlValidGetValidElements...
d pr 10i 0 extproc('xmlValidGetValidElements')
d prev like(xmlNodePtr)
d next like(xmlNodePtr)
d names * const xmlChar *(*)
d max 10i 0 value
d xmlValidateNameValue...
d pr 10i 0 extproc('xmlValidateNameValue')
d value * value options(*string) const xmlChar *
d xmlValidateNamesValue...
d pr 10i 0 extproc('xmlValidateNamesValue')
d value * value options(*string) const xmlChar *
d xmlValidateNmtokenValue...
d pr 10i 0 extproc('xmlValidateNmtokenValue')
d value * value options(*string) const xmlChar *
d xmlValidateNmtokensValue...
d pr 10i 0 extproc('xmlValidateNmtokensValue')
d value * value options(*string) const xmlChar *
/if defined(LIBXML_REGEXP_ENABLED)
* Validation based on the regexp support
d xmlValidBuildContentModel...
d pr 10i 0 extproc('xmlValidBuildContentModel')
d ctxt value like(xmlValidCtxtPtr)
d elem value like(xmlElementPtr)
d xmlValidatePushElement...
d pr 10i 0 extproc('xmlValidatePushElement')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d qname * value options(*string) const xmlChar *
d xmlValidatePushCData...
d pr 10i 0 extproc('xmlValidatePushCData')
d ctxt value like(xmlValidCtxtPtr)
d data * value options(*string) const xmlChar *
d len 10i 0 value
d xmlValidatePopElement...
d pr 10i 0 extproc('xmlValidatePopElement')
d ctxt value like(xmlValidCtxtPtr)
d doc value like(xmlDocPtr)
d elem value like(xmlNodePtr)
d qname * value options(*string) const xmlChar *
/endif LIBXML_REGEXP_ENABLD
/endif LIBXML_VALID_ENABLED
/endif XML_VALID_H__

View File

@@ -0,0 +1,147 @@
* Summary: implementation of XInclude
* Description: API to handle XInclude processing,
* implements the
* World Wide Web Consortium Last Call Working Draft 10 November 2003
* http://www.w3.org/TR/2003/WD-xinclude-20031110
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_XINCLUDE_H__)
/define XML_XINCLUDE_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
/if defined(LIBXML_XINCLUDE_ENABLED)
* XINCLUDE_NS:
*
* Macro defining the Xinclude namespace: http://www.w3.org/2003/XInclude
d XINCLUDE_NS c 'http://www.w3.org/2003/XInclude'
* XINCLUDE_OLD_NS:
*
* Define the draft Xinclude namespace: http://www.w3.org/2001/XInclude
d XINCLUDE_OLD_NS...
d c 'http://www.w3.org/2001/XInclude'
* XINCLUDE_NODE:
*
* Macro defining "include"
d XINCLUDE_NODE c 'include'
* XINCLUDE_FALLBACK:
*
* Macro defining "fallback"
d XINCLUDE_FALLBACK...
d c 'fallback'
* XINCLUDE_HREF:
*
* Macro defining "href"
d XINCLUDE_HREF c 'href'
* XINCLUDE_PARSE:
*
* Macro defining "parse"
d XINCLUDE_PARSE c 'parse'
* XINCLUDE_PARSE_XML:
*
* Macro defining "xml"
d XINCLUDE_PARSE_XML...
d c 'xml'
* XINCLUDE_PARSE_TEXT:
*
* Macro defining "text"
d XINCLUDE_PARSE_TEXT...
d c 'text'
* XINCLUDE_PARSE_ENCODING:
*
* Macro defining "encoding"
d XINCLUDE_PARSE_ENCODING...
d c 'encoding'
* XINCLUDE_PARSE_XPOINTER:
*
* Macro defining "xpointer"
d XINCLUDE_PARSE_XPOINTER...
d c 'xpointer'
d xmlXIncludeCtxtPtr...
d s * based(######typedef######)
* standalone processing
d xmlXIncludeProcess...
d pr 10i 0 extproc('xmlXIncludeProcess')
d doc value like(xmlDocPtr)
d xmlXIncludeProcessFlags...
d pr 10i 0 extproc('xmlXIncludeProcessFlags')
d doc value like(xmlDocPtr)
d flags 10i 0 value
d xmlXIncludeProcessFlagsData...
d pr 10i 0 extproc(
d 'xmlXIncludeProcessFlagsData')
d doc value like(xmlDocPtr)
d flags 10i 0 value
d data * value void *
d xmlXIncludeProcessTreeFlagsData...
d pr 10i 0 extproc(
d 'xmlXIncludeProcessTreeFlagsData')
d tree value like(xmlNodePtr)
d flags 10i 0 value
d data * value void *
d xmlXIncludeProcessTree...
d pr 10i 0 extproc('xmlXIncludeProcessTree')
d tree value like(xmlNodePtr)
d xmlXIncludeProcessTreeFlags...
d pr 10i 0 extproc(
d 'xmlXIncludeProcessTreeFlags')
d tree value like(xmlNodePtr)
d flags 10i 0 value
* contextual processing
d xmlXIncludeNewContext...
d pr extproc('xmlXIncludeNewContext')
d like(xmlXIncludeCtxtPtr)
d doc value like(xmlDocPtr)
d xmlXIncludeSetFlags...
d pr 10i 0 extproc('xmlXIncludeSetFlags')
d ctxt value like(xmlXIncludeCtxtPtr)
d flags 10i 0 value
d xmlXIncludeFreeContext...
d pr extproc('xmlXIncludeFreeContext')
d ctxt value like(xmlXIncludeCtxtPtr)
d xmlXIncludeProcessNode...
d pr 10i 0 extproc('xmlXIncludeProcessNode')
d ctxt value like(xmlXIncludeCtxtPtr)
d tree value like(xmlNodePtr)
/endif XINCLUDE_ENABLED
/endif XML_XINCLUDE_H__

164
os400/libxmlrpg/xlink.rpgle Normal file
View File

@@ -0,0 +1,164 @@
* Summary: unfinished XLink detection module
* Description: unfinished XLink detection module
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_XLINK_H__)
/define XML_XLINK_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
/if defined(LIBXML_XPTR_ENABLED)
* Various defines for the various Link properties.
*
* NOTE: the link detection layer will try to resolve QName expansion
* of namespaces. If "foo" is the prefix for "http://foo.com/"
* then the link detection layer will expand role="foo:myrole"
* to "http://foo.com/:myrole".
* NOTE: the link detection layer will expand URI-Refences found on
* href attributes by using the base mechanism if found.
d xlinkRef s * based(######typedef######) xmlChar *
d xlinkRole s * based(######typedef######) xmlChar *
d xlinkTitle s * based(######typedef######) xmlChar *
d xlinkType s 10i 0 based(######typedef######) enum
d XLINK_TYPE_NONE...
d c 0
d XLINK_TYPE_SIMPLE...
d c 1
d XLINK_TYPE_EXTENDED...
d c 2
d XLINK_TYPE_EXTENDED_SET...
d c 3
d xlinkShow s 10i 0 based(######typedef######) enum
d XLINK_SHOW_NONE...
d c 0
d XLINK_SHOW_NEW...
d c 1
d XLINK_SHOW_EMBED...
d c 2
d XLINK_SHOW_REPLACE...
d c 3
d xlinkActuate s 10i 0 based(######typedef######) enum
d XLINK_ACTUATE_NONE...
d c 0
d XLINK_ACTUATE_AUTO...
d c 1
d XLINK_ACTUATE_ONREQUEST...
d c 2
* xlinkNodeDetectFunc:
* @ctx: user data pointer
* @node: the node to check
*
* This is the prototype for the link detection routine.
* It calls the default link detection callbacks upon link detection.
d xlinkNodeDetectFunc...
d s * based(######typedef######)
d procptr
* The link detection module interact with the upper layers using
* a set of callback registered at parsing time.
* xlinkSimpleLinkFunk:
* @ctx: user data pointer
* @node: the node carrying the link
* @href: the target of the link
* @role: the role string
* @title: the link title
*
* This is the prototype for a simple link detection callback.
d xlinkSimpleLinkFunk...
d s * based(######typedef######)
d procptr
* xlinkExtendedLinkFunk:
* @ctx: user data pointer
* @node: the node carrying the link
* @nbLocators: the number of locators detected on the link
* @hrefs: pointer to the array of locator hrefs
* @roles: pointer to the array of locator roles
* @nbArcs: the number of arcs detected on the link
* @from: pointer to the array of source roles found on the arcs
* @to: pointer to the array of target roles found on the arcs
* @show: array of values for the show attributes found on the arcs
* @actuate: array of values for the actuate attributes found on the arcs
* @nbTitles: the number of titles detected on the link
* @title: array of titles detected on the link
* @langs: array of xml:lang values for the titles
*
* This is the prototype for a extended link detection callback.
d xlinkExtendedLinkFunk...
d s * based(######typedef######)
d procptr
* xlinkExtendedLinkSetFunk:
* @ctx: user data pointer
* @node: the node carrying the link
* @nbLocators: the number of locators detected on the link
* @hrefs: pointer to the array of locator hrefs
* @roles: pointer to the array of locator roles
* @nbTitles: the number of titles detected on the link
* @title: array of titles detected on the link
* @langs: array of xml:lang values for the titles
*
* This is the prototype for a extended link set detection callback.
d xlinkExtendedLinkSetFunk...
d s * based(######typedef######)
d procptr
* This is the structure containing a set of Links detection callbacks.
*
* There is no default xlink callbacks, if one want to get link
* recognition activated, those call backs must be provided before parsing.
d xlinkHandlerPtr...
d s * based(######typedef######) xmlChar *
d xlinkHandler ds based(xlinkHandlerPtr)
d align qualified
d simple like(xlinkSimpleLinkFunk)
d extended like(xlinkExtendedLinkFunk)
d set like(xlinkExtendedLinkSetFunk)
* The default detection routine, can be overridden, they call the default
* detection callbacks.
d xlinkGetDefaultDetect...
d pr extproc('xlinkGetDefaultDetect')
d like(xlinkNodeDetectFunc)
d xlinkSetDefaultDetect...
d pr extproc('xlinkSetDefaultDetect')
d func value like(xlinkNodeDetectFunc)
* Routines to set/get the default handlers.
d xlinkGetDefaultHandler...
d pr extproc('xlinkGetDefaultHandler')
d like(xlinkHandlerPtr)
d xlinkSetDefaultHandler...
d pr extproc('xlinkSetDefaultHandler')
d handler value like(xlinkHandlerPtr)
* Link detection module itself.
d xlinkIsLink pr extproc('xlinkIsLink')
d like(xlinkType)
d doc value like(xmlDocPtr)
d node value like(xmlNodePtr)
/endif LIBXML_XPTR_ENABLED
/endif XML_XLINK_H__

441
os400/libxmlrpg/xmlIO.rpgle Normal file
View File

@@ -0,0 +1,441 @@
* Summary: interface for the I/O interfaces used by the parser
* Description: interface for the I/O interfaces used by the parser
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_IO_H__)
/define XML_IO_H__
/include "libxmlrpg/xmlversion"
* Those are the functions and datatypes for the parser input
* I/O structures.
* xmlInputMatchCallback:
* @filename: the filename or URI
*
* Callback used in the I/O Input API to detect if the current handler
* can provide input fonctionnalities for this resource.
*
* Returns 1 if yes and 0 if another Input module should be used
d xmlInputMatchCallback...
d s * based(######typedef######)
d procptr
* xmlInputOpenCallback:
* @filename: the filename or URI
*
* Callback used in the I/O Input API to open the resource
*
* Returns an Input context or NULL in case or error
d xmlInputOpenCallback...
d s * based(######typedef######)
d procptr
* xmlInputReadCallback:
* @context: an Input context
* @buffer: the buffer to store data read
* @len: the length of the buffer in bytes
*
* Callback used in the I/O Input API to read the resource
*
* Returns the number of bytes read or -1 in case of error
d xmlInputReadCallback...
d s * based(######typedef######)
d procptr
* xmlInputCloseCallback:
* @context: an Input context
*
* Callback used in the I/O Input API to close the resource
*
* Returns 0 or -1 in case of error
d xmlInputCloseCallback...
d s * based(######typedef######)
d procptr
/if defined(LIBXML_OUTPUT_ENABLED)
* Those are the functions and datatypes for the library output
* I/O structures.
* xmlOutputMatchCallback:
* @filename: the filename or URI
*
* Callback used in the I/O Output API to detect if the current handler
* can provide output fonctionnalities for this resource.
*
* Returns 1 if yes and 0 if another Output module should be used
d xmlOutputMatchCallback...
d s * based(######typedef######)
d procptr
* xmlOutputOpenCallback:
* @filename: the filename or URI
*
* Callback used in the I/O Output API to open the resource
*
* Returns an Output context or NULL in case or error
d xmlOutputOpenCallback...
d s * based(######typedef######)
d procptr
* xmlOutputWriteCallback:
* @context: an Output context
* @buffer: the buffer of data to write
* @len: the length of the buffer in bytes
*
* Callback used in the I/O Output API to write to the resource
*
* Returns the number of bytes written or -1 in case of error
d xmlOutputWriteCallback...
d s * based(######typedef######)
d procptr
* xmlOutputCloseCallback:
* @context: an Output context
*
* Callback used in the I/O Output API to close the resource
*
* Returns 0 or -1 in case of error
d xmlOutputCloseCallback...
d s * based(######typedef######)
d procptr
/endif LIBXML_OUTPUT_ENABLD
/include "libxmlrpg/globals"
/include "libxmlrpg/tree"
/include "libxmlrpg/parser"
/include "libxmlrpg/encoding"
d xmlParserInputBuffer...
d ds based(xmlParserInputBufferPtr)
d align qualified
d context * void *
d readcallback like(xmlInputReadCallback)
d closecallback like(xmlInputCloseCallback)
*
d encoder like(xmlCharEncodingHandlerPtr) Conversions --> UTF8
*
d buffer like(xmlBufPtr) UTF-8 local buffer
d raw like(xmlBufPtr) Raw input buffer
d compressed 10i 0
d error 10i 0
d rawconsumed 20u 0
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlOutputBuffer...
d ds based(xmlOutputBufferPtr)
d align qualified
d context * void *
d writecallback like(xmlOutputWriteCallback)
d closecallback like(xmlOutputCloseCallback)
*
d encoder like(xmlCharEncodingHandlerPtr) Conversions --> UTF8
*
d buffer like(xmlBufPtr) UTF-8/ISOLatin local
d conv like(xmlBufPtr) Buffer for output
d written 10i 0 Total # byte written
d error 10i 0
/endif LIBXML_OUTPUT_ENABLD
* Interfaces for input
d xmlCleanupInputCallbacks...
d pr extproc('xmlCleanupInputCallbacks')
d xmlPopInputCallbacks...
d pr 10i 0 extproc('xmlPopInputCallbacks')
d xmlRegisterDefaultInputCallbacks...
d pr extproc(
d 'xmlRegisterDefaultInputCallbacks')
d xmlAllocParserInputBuffer...
d pr extproc('xmlAllocParserInputBuffer')
d like(xmlParserInputBufferPtr)
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateFilename...
d pr extproc(
d 'xmlParserInputBufferCreateFilename')
d like(xmlParserInputBufferPtr)
d URI * value options(*string) const char *
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateFile...
d pr extproc(
d 'xmlParserInputBufferCreateFile')
d like(xmlParserInputBufferPtr)
d file * value FILE *
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateFd...
d pr extproc(
d 'xmlParserInputBufferCreateFd')
d like(xmlParserInputBufferPtr)
d fd 10i 0 value
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateMem...
d pr extproc(
d 'xmlParserInputBufferCreateMem')
d like(xmlParserInputBufferPtr)
d mem * value options(*string) const char *
d size 10i 0 value
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateStatic...
d pr extproc(
d 'xmlParserInputBufferCreateStatic')
d like(xmlParserInputBufferPtr)
d mem * value options(*string) const char *
d size 10i 0 value
d enc value like(xmlCharEncoding)
d xmlParserInputBufferCreateIO...
d pr extproc(
d 'xmlParserInputBufferCreateIO')
d like(xmlParserInputBufferPtr)
d ioread value like(xmlInputReadCallback)
d ioclose value like(xmlInputCloseCallback)
d ioctx * value void *
d enc value like(xmlCharEncoding)
d xmlParserInputBufferRead...
d pr 10i 0 extproc('xmlParserInputBufferRead')
d in value like(xmlParserInputBufferPtr)
d len 10i 0 value
d xmlParserInputBufferGrow...
d pr 10i 0 extproc('xmlParserInputBufferGrow')
d in value like(xmlParserInputBufferPtr)
d len 10i 0 value
d xmlParserInputBufferPush...
d pr 10i 0 extproc('xmlParserInputBufferPush')
d in value like(xmlParserInputBufferPtr)
d len 10i 0 value
d buf * value options(*string) const char *
d xmlFreeParserInputBuffer...
d pr extproc('xmlFreeParserInputBuffer')
d in value like(xmlParserInputBufferPtr)
d xmlParserGetDirectory...
d pr * extproc('xmlParserGetDirectory') char *
d filename * value options(*string) const char *
d xmlRegisterInputCallbacks...
d pr 10i 0 extproc('xmlRegisterInputCallbacks')
d matchFunc value like(xmlInputMatchCallback)
d openFunc value like(xmlInputOpenCallback)
d readFunc value like(xmlInputReadCallback)
d closeFunc value like(xmlInputCloseCallback)
/if defined(LIBXML_OUTPUT_ENABLED)
* Interfaces for output
d xmlCleanupOutputCallbacks...
d pr extproc('xmlCleanupOutputCallbacks')
d xmlRegisterDefaultOutputCallbacks...
d pr extproc(
d 'xmlRegisterDefaultOuputCallbacks')
d xmlAllocOutputBuffer...
d pr extproc('xmlAllocOutputBuffer')
d like(xmlOutputBufferPtr)
d encoder value
d like(xmlCharEncodingHandlerPtr)
d xmlOutputBufferCreateFilename...
d pr extproc(
d 'xmlOutputBufferCreateFilename')
d like(xmlOutputBufferPtr)
d URI * value options(*string) const char *
d encoder value
d like(xmlCharEncodingHandlerPtr)
d compression 10i 0 value
d xmlOutputBufferCreateFile...
d pr extproc('xmlOutputBufferCreateFile')
d like(xmlOutputBufferPtr)
d file * value FILE *
d encoder value
d like(xmlCharEncodingHandlerPtr)
d xmlOutputBufferCreateBuffer...
d pr extproc(
d 'xmlOutputBufferCreateBuffer')
d like(xmlOutputBufferPtr)
d buffer value like(xmlBufferPtr)
d encoder value
d like(xmlCharEncodingHandlerPtr)
d xmlOutputBufferCreateFd...
d pr extproc('xmlOutputBufferCreateFd')
d like(xmlOutputBufferPtr)
d fd 10i 0 value
d encoder value
d like(xmlCharEncodingHandlerPtr)
d xmlOutputBufferCreateIO...
d pr extproc('xmlOutputBufferCreateIO')
d like(xmlOutputBufferPtr)
d iowrite value like(xmlOutputWriteCallback)
d ioclose value like(xmlOutputCloseCallback)
d ioctx * value void *
d encoder value
d like(xmlCharEncodingHandlerPtr)
* Couple of APIs to get the output without digging into the buffers
d xmlOutputBufferGetContent...
d pr * extproc('xmlOutputBufferGetContent') const xmlChar *
d out value like(xmlOutputBufferPtr)
d xmlOutputBufferGetSize...
d pr 10u 0 extproc('xmlOutputBufferGetSize') size_t
d out value like(xmlOutputBufferPtr)
d xmlOutputBufferWrite...
d pr 10i 0 extproc('xmlOutputBufferWrite')
d out value like(xmlOutputBufferPtr)
d len 10i 0 value
d buf * value options(*string) const char *
d xmlOutputBufferWriteString...
d pr 10i 0 extproc('xmlOutputBufferWriteString')
d out value like(xmlOutputBufferPtr)
d str * value options(*string) const char *
d xmlOutputBufferWriteEscape...
d pr 10i 0 extproc('xmlOutputBufferWriteEscape')
d out value like(xmlOutputBufferPtr)
d str * value options(*string) const xmlChar *
d escaping value like(xmlCharEncodingOutputFunc)
d xmlOutputBufferFlush...
d pr 10i 0 extproc('xmlOutputBufferFlush')
d out value like(xmlOutputBufferPtr)
d xmlOutputBufferClose...
d pr 10i 0 extproc('xmlOutputBufferClose')
d out value like(xmlOutputBufferPtr)
d xmlRegisterOutputCallbacks...
d pr 10i 0 extproc('xmlRegisterOutputCallbacks')
d matchFunc value like(xmlOutputMatchCallback)
d openFunc value like(xmlOutputOpenCallback)
d writeFunc value like(xmlOutputWriteCallback)
d closeFunc value like(xmlOutputCloseCallback)
/if defined(LIBXML_HTTP_ENABLED)
* This function only exists if HTTP support built into the library
d xmlRegisterHTTPPostCallbacks...
d pr extproc(
d 'xmlRegisterHTTPPostCallbacks')
/endif LIBXML_HTTP_ENABLED
/endif LIBXML_OUTPUT_ENABLD
d xmlCheckHTTPInput...
d pr extproc('xmlCheckHTTPInput')
d like(xmlParserInputPtr)
d ctxt value like(xmlParserCtxtPtr)
d ret value like(xmlParserInputPtr)
* A predefined entity loader disabling network accesses
d xmlNoNetExternalEntityLoader...
d pr extproc(
d 'xmlNoNetExternalEntityLoader')
d like(xmlParserInputPtr)
d URL * value options(*string) const char *
d ID * value options(*string) const char *
d ctxt value like(xmlParserCtxtPtr)
* xmlNormalizeWindowsPath is obsolete, don't use it.
* Check xmlCanonicPath in uri.h for a better alternative.
d xmlNormalizeWindowsPath...
d pr * extproc('xmlNormalizeWindowsPath') xmlChar *
d path * value options(*string) const xmlChar *
d xmlCheckFilename...
d pr 10i 0 extproc('xmlCheckFilename')
d path * value options(*string) const char *
* Default 'file://' protocol callbacks
d xmlFileMatch pr 10i 0 extproc('xmlFileMatch')
d filename * value options(*string) const char *
d xmlFileOpen pr * extproc('xmlFileOpen') void *
d filename * value options(*string) const char *
d xmlFileRead pr 10i 0 extproc('xmlFileRead')
d context * value void *
d buffer 65535 options(*varsize)
d len 10i 0 value
d xmlFileClose pr 10i 0 extproc('xmlFileClose')
d context * value void *
* Default 'http://' protocol callbacks
/if defined(LIBXML_HTTP_ENABLED)
d xmlIOHTTPMatch pr 10i 0 extproc('xmlIOHTTPMatch')
d filename * value options(*string) const char *
d xmlIOHTTPOpen pr * extproc('xmlIOHTTPOpen') void *
d filename * value options(*string) const char *
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlIOHTTPOpenW pr * extproc('xmlIOHTTPOpenW') void *
d post_uri * value options(*string) const char *
d compression 10i 0 value
/endif LIBXML_OUTPUT_ENABLD
d xmlIOHTTPRead pr 10i 0 extproc('xmlIOHTTPRead')
d context * value void *
d buffer 65535 options(*varsize)
d len 10i 0 value
d xmlIOHTTPClose pr 10i 0 extproc('xmlIOHTTPClose')
d context * value void *
/endif LIBXML_HTTP_ENABLED
* Default 'ftp://' protocol callbacks
/if defined(LIBXML_FTP_ENABLED)
d xmlIOFTPMatch pr 10i 0 extproc('xmlIOFTPMatch')
d filename * value options(*string) const char *
d xmlIOFTPOpen pr * extproc('xmlIOFTPOpen') void *
d filename * value options(*string) const char *
d xmlIOFTPRead pr 10i 0 extproc('xmlIOFTPRead')
d context * value void *
d buffer 65535 options(*varsize)
d len 10i 0 value
d xmlIOFTPClose pr 10i 0 extproc('xmlIOFTPClose')
d context * value void *
/endif LIBXML_FTP_ENABLED
/endif XML_IO_H__

View File

@@ -0,0 +1,179 @@
* Summary: API to build regexp automata
* Description: the API to build regexp automata
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_AUTOMATA_H__)
/define XML_AUTOMATA_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
/if defined(LIBXML_REGEXP_ENABLED)
/if defined(LIBXML_AUTOMATA_ENABLED)
/include "libxmlrpg/xmlregexp"
* xmlAutomataPtr:
*
* A libxml automata description, It can be compiled into a regexp
d xmlAutomataPtr s * based(######typedef######)
* xmlAutomataStatePtr:
*
* A state int the automata description,
d xmlAutomataStatePtr...
d s * based(######typedef######)
* Building API
d xmlNewAutomata pr extproc('xmlNewAutomata')
d like(xmlAutomataPtr)
d xmlFreeAutomata...
d pr extproc('xmlFreeAutomata')
d am value like(xmlAutomataPtr)
d xmlAutomataGetInitState...
d pr extproc('xmlAutomataGetInitState')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d xmlAutomataSetFinalState...
d pr 10i 0 extproc('xmlAutomataSetFinalState')
d am value like(xmlAutomataPtr)
d state value like(xmlAutomataStatePtr)
d xmlAutomataNewState...
d pr extproc('xmlAutomataNewState')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d xmlAutomataNewTransition...
d pr extproc('xmlAutomataNewTransition')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d token * value options(*string) const xmlChar *
d data * value options(*string) void *
d xmlAutomataNewTransition2...
d pr extproc('xmlAutomataNewTransition2')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d token * value options(*string) const xmlChar *
d token2 * value options(*string) const xmlChar *
d data * value options(*string) void *
d xmlAutomataNewNegTrans...
d pr extproc('xmlAutomataNewNegTrans')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d token * value options(*string) const xmlChar *
d token2 * value options(*string) const xmlChar *
d data * value options(*string) void *
d xmlAutomataNewCountTrans...
d pr extproc('xmlAutomataNewCountTrans')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d token * value options(*string) const xmlChar *
d min 10i 0 value
d max 10i 0 value
d data * value options(*string) void *
d xmlAutomataNewCountTrans2...
d pr extproc('xmlAutomataNewCountTrans2')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d token * value options(*string) const xmlChar *
d token2 * value options(*string) const xmlChar *
d min 10i 0 value
d max 10i 0 value
d data * value options(*string) void *
d xmlAutomataNewOnceTrans...
d pr extproc('xmlAutomataNewOnceTrans')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d token * value options(*string) const xmlChar *
d min 10i 0 value
d max 10i 0 value
d data * value options(*string) void *
d xmlAutomataNewOnceTrans2...
d pr extproc('xmlAutomataNewOnceTrans2')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d token * value options(*string) const xmlChar *
d token2 * value options(*string) const xmlChar *
d min 10i 0 value
d max 10i 0 value
d data * value options(*string) void *
d xmlAutomataNewAllTrans...
d pr extproc('xmlAutomataNewAllTrans')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d lax 10i 0 value
d xmlAutomataNewEpsilon...
d pr extproc('xmlAutomataNewEpsilon')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d xmlAutomataNewCountedTrans...
d pr extproc('xmlAutomataNewCountedTrans')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d counter 10i 0 value
d xmlAutomataNewCounterTrans...
d pr extproc('xmlAutomataNewCounterTrans')
d like(xmlAutomataStatePtr)
d am value like(xmlAutomataPtr)
d from value like(xmlAutomataStatePtr)
d to value like(xmlAutomataStatePtr)
d counter 10i 0 value
d xmlAutomataNewCounter...
d pr 10i 0 extproc('xmlAutomataNewCounter')
d am value like(xmlAutomataPtr)
d min 10i 0 value
d max 10i 0 value
d xmlAutomataCompile...
d pr extproc('xmlAutomataCompile')
d like(xmlRegexpPtr)
d am value like(xmlAutomataPtr)
d xmlAutomataIsDeterminist...
d pr 10i 0 extproc('xmlAutomataIsDeterminist')
d am value like(xmlAutomataPtr)
/endif AUTOMATA_ENABLED
/endif LIBXML_REGEXP_ENABLD
/endif XML_AUTOMATA_H__

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,15 @@
* Summary: macros for marking symbols as exportable/importable.
* Description: macros for marking symbols as exportable/importable.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_EXPORTS_H__)
/define XML_EXPORTS_H__
* The definition in the original C header file are not appliable to
* ILE/RPG.
* Therefore this file is intentionally empty.
/endif XML_EXPORTS_H__

View File

@@ -0,0 +1,239 @@
* Summary: interface for the memory allocator
* Description: provides interfaces for the memory allocator,
* including debugging capabilities.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(DEBUG_MEMORY_ALLOC__)
/define DEBUG_MEMORY_ALLOC__
/include "libxmlrpg/xmlversion"
* DEBUG_MEMORY:
*
* DEBUG_MEMORY replaces the allocator with a collect and debug
* shell to the libc allocator.
* DEBUG_MEMORY should only be activated when debugging
* libxml i.e. if libxml has been configured with --with-debug-mem too.
* /define DEBUG_MEMORY_FREED
* /define DEBUG_MEMORY_LOCATION
/if defined(DEBUG)
/if not defined(DEBUG_MEMORY)
/define DEBUG_MEMORY
/endif
/endif
* DEBUG_MEMORY_LOCATION:
*
* DEBUG_MEMORY_LOCATION should be activated only when debugging
* libxml i.e. if libxml has been configured with --with-debug-mem too.
/if defined(DEBUG_MEMORY_LOCATION)
/endif
* The XML memory wrapper support 4 basic overloadable functions.
* xmlFreeFunc:
* @mem: an already allocated block of memory
*
* Signature for a free() implementation.
d xmlFreeFunc s * based(######typedef######)
d procptr
* xmlMallocFunc:
* @size: the size requested in bytes
*
* Signature for a malloc() implementation.
*
* Returns a pointer to the newly allocated block or NULL in case of error.
d xmlMallocFunc s * based(######typedef######)
d procptr
* xmlReallocFunc:
* @mem: an already allocated block of memory
* @size: the new size requested in bytes
*
* Signature for a realloc() implementation.
*
* Returns a pointer to the newly reallocated block or NULL in case of error.
d xmlReallocFunc s * based(######typedef######)
d procptr
* xmlStrdupFunc:
* @str: a zero terminated string
*
* Signature for an strdup() implementation.
*
* Returns the copy of the string or NULL in case of error.
d xmlStrdupFunc s * based(######typedef######)
d procptr
* The 5 interfaces used for all memory handling within libxml.
* Since indirect calls are only supported via a based prototype,
* storage is accessed via functions.
d get_xmlFree pr extproc('__get_xmlFree')
d like(xmlFreeFunc)
d set_xmlFree pr extproc('__set_xmlFree')
d func value like(xmlFreeFunc)
d xmlFree pr extproc('__call_xmlFree')
d mem * value void *
d get_xmlMalloc pr extproc('__get_xmlMalloc')
d like(xmlMallocFunc)
d set_xmlMalloc pr extproc('__set_xmlMalloc')
d func value like(xmlMallocFunc)
d xmlMalloc pr * extproc('__call_xmlMalloc') void *
d size 10u 0 value size_t
d get_xmlMallocAtomic...
d pr extproc('__get_xmlMallocAtomic')
d like(xmlMallocFunc)
d set_xmlMallocAtomic...
d pr extproc('__set_xmlMallocAtomic')
d func value like(xmlMallocFunc)
d xmlMallocAtomic...
d pr * extproc('__call_xmlMallocAtomic') void *
d size 10u 0 value size_t
d get_xmlRealloc pr extproc('__get_xmlRealloc')
d like(xmlReallocFunc)
d set_xmlRealloc pr extproc('__set_xmlRealloc')
d func value like(xmlReallocFunc)
d xmlRealloc pr * extproc('__call_xmlRealloc') void *
d mem * value void *
d size 10u 0 value size_t
d get_xmlMemStrdup...
d pr extproc('__get_xmlMemStrdup')
d like(xmlStrdupFunc)
d set_xmlMemStrdup...
d pr extproc('__set_xmlMemstrdup')
d func value like(xmlStrdupFunc)
d xmlMemStrdup pr * extproc('__call_xmlMemStrdup') void *
d str * value options(*string) const char *
* The way to overload the existing functions.
* The xmlGc function have an extra entry for atomic block
* allocations useful for garbage collected memory allocators
d xmlMemSetup pr 10i 0 extproc('xmlMemSetup')
d freeFunc value like(xmlFreeFunc)
d mallocFunc value like(xmlMallocFunc)
d reallocFunc value like(xmlReallocFunc)
d strdupFunc value like(xmlStrdupFunc)
d xmlMemGet pr 10i 0 extproc('xmlMemGet')
d freeFunc like(xmlFreeFunc)
d mallocFunc like(xmlMallocFunc)
d reallocFunc like(xmlReallocFunc)
d strdupFunc like(xmlStrdupFunc)
d xmlGcMemSetup pr 10i 0 extproc('xmlGcMemSetup')
d freeFunc value like(xmlFreeFunc)
d mallocFunc value like(xmlMallocFunc)
d mallocAtomicFunc...
d value like(xmlMallocFunc)
d reallocFunc value like(xmlReallocFunc)
d strdupFunc value like(xmlStrdupFunc)
d xmlGcMemGet pr 10i 0 extproc('xmlGcMemGet')
d freeFunc like(xmlFreeFunc)
d mallocFunc like(xmlMallocFunc)
d mallocAtomicFunc...
d like(xmlMallocFunc)
d reallocFunc like(xmlReallocFunc)
d strdupFunc like(xmlStrdupFunc)
* Initialization of the memory layer.
d xmlInitMemory pr 10i 0 extproc('xmlInitMemory')
* Cleanup of the memory layer.
d xmlCleanupMemory...
d pr extproc('xmlCleanupMemory')
* These are specific to the XML debug memory wrapper.
d xmlMemUsed pr 10i 0 extproc('xmlMemUsed')
d xmlMemBlocks pr 10i 0 extproc('xmlMemBlocks')
d xmlMemDisplay pr extproc('xmlMemDisplay')
d fp * value FILE *
d xmlMmDisplayLast...
d pr extproc('xmlMemDisplayLast')
d fp * value FILE *
d nbBytes 20i 0 value
d xmlMemShow pr extproc('xmlMemShow')
d fp * value FILE *
d nr 10i 0 value
d xmlMemoryDump pr extproc('xmlMemoryDump')
d xmlMemMalloc pr * extproc('xmlMemMalloc') void *
d size 10u 0 value size_t
d xmlMemRealloc pr * extproc('xmlMemRealloc') void *
d ptr * value void *
d size 10u 0 value size_t
d xmlMemFree pr extproc('xmlMemFree')
d ptr * value void *
d xmlMemoryStrdup...
d pr * extproc('xmlMemoryStrdup') char *
d str * value options(*string) const char *
d xmlMallocLoc pr * extproc('xmlMallocLoc') void *
d size 10u 0 value size_t
d file * value options(*string) const char *
d line 10i 0 value
d xmlReallocLoc pr * extproc('xmlReallocLoc') void *
d ptr * value void *
d size 10u 0 value size_t
d file * value options(*string) const char *
d line 10i 0 value
d xmlMallocAtomicLoc...
d pr * extproc('xmlMallocAtomicLoc') void *
d size 10u 0 value size_t
d file * value options(*string) const char *
d line 10i 0 value
d xmlMemStrdupLoc...
d pr * extproc('xmlMemStrdupLoc') char *
d str * value options(*string) const char *
d file * value options(*string) const char *
d line 10i 0 value
/if not defined(XML_GLOBALS_H)
/if not defined(XML_THREADS_H__)
/include "libxmlrpg/threads"
/include "libxmlrpg/globals"
/endif
/endif
/endif DEBUG_MEMORY_ALLOC__

View File

@@ -0,0 +1,51 @@
* Summary: dynamic module loading
* Description: basic API for dynamic module loading, used by
* libexslt added in 2.6.17
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_MODULE_H__)
/define XML_MODULE_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_MODULES_ENABLED)
* xmlModulePtr:
*
* A handle to a dynamically loaded module
d xmlModulePtr s * based(######typedef######)
* xmlModuleOption:
*
* enumeration of options that can be passed down to xmlModuleOpen()
d xmlModuleOption...
d s 10i 0 based(######typedef######) enum
d XML_MODULE_LAZY... Lazy binding
d c 1
d XML_MODULE_LOCAL... Local binding
d c 2
d xmlModuleOpen pr extproc('xmlModuleOpen')
d like(xmlModulePtr)
d filename * value options(*string) const char *
d options 10i 0 value
d xmlModuleSymbol...
d pr 10i 0 extproc('xmlModuleSymbol')
d module value like(xmlModulePtr)
d name * value options(*string) const char *
d result * void *(*)
d xmlModuleClose pr 10i 0 extproc('xmlModuleClose')
d module value like(xmlModulePtr)
d xmlModuleFree pr 10i 0 extproc('xmlModuleFree')
d module value like(xmlModulePtr)
/endif LIBXML_MODULES_ENBLD
/endif XML_MODULE_H__

View File

@@ -0,0 +1,619 @@
* Summary: the XMLReader implementation
* Description: API of the XML streaming API based on C# interfaces.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_XMLREADER_H__)
/define XML_XMLREADER_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
/include "libxmlrpg/xmlIO"
/if defined(LIBXML_SCHEMAS_ENABLED)
/include "libxmlrpg/relaxng"
/include "libxmlrpg/xmlschemas"
/endif
* xmlParserSeverities:
*
* How severe an error callback is when the per-reader error callback API
* is used.
d xmlParserSeverities...
d s 10i 0 based(######typedef######) enum
d XML_PARSER_SEVERITY_VALIDITY_WARNING...
d c 1
d XML_PARSER_SEVERITY_VALIDITY_ERROR...
d c 2
d XML_PARSER_SEVERITY_WARNING...
d c 3
d XML_PARSER_SEVERITY_ERROR...
d c 4
/if defined(LIBXML_READER_ENABLED)
* xmlTextReaderMode:
*
* Internal state values for the reader.
d xmlTextReaderMode...
d s 10i 0 based(######typedef######) enum
d XML_TEXTREADER_MODE_INITIAL...
d c 0
d XML_TEXTREADER_MODE_INTERACTIVE...
d c 1
d XML_TEXTREADER_MODE_ERROR...
d c 2
d XML_TEXTREADER_MODE_EOF...
d c 3
d XML_TEXTREADER_MODE_CLOSED...
d c 4
d XML_TEXTREADER_MODE_READING...
d c 5
* xmlParserProperties:
*
* Some common options to use with xmlTextReaderSetParserProp, but it
* is better to use xmlParserOption and the xmlReaderNewxxx and
* xmlReaderForxxx APIs now.
d xmlParserProperties...
d s 10i 0 based(######typedef######) enum
d XML_PARSER_LOADDTD...
d c 1
d XML_PARSER_DEFAULTATTRS...
d c 2
d XML_PARSER_VALIDATE...
d c 3
d XML_PARSER_SUBST_ENTITIES...
d c 4
* xmlReaderTypes:
*
* Predefined constants for the different types of nodes.
d xmlReaderTypes s 10i 0 based(######typedef######) enum
d XML_READER_TYPE_NONE...
d c 0
d XML_READER_TYPE_ELEMENT...
d c 1
d XML_READER_TYPE_ATTRIBUTE...
d c 2
d XML_READER_TYPE_TEXT...
d c 3
d XML_READER_TYPE_CDATA...
d c 4
d XML_READER_TYPE_ENTITY_REFERENCE...
d c 5
d XML_READER_TYPE_ENTITY...
d c 6
d XML_READER_TYPE_PROCESSING_INSTRUCTION...
d c 7
d XML_READER_TYPE_COMMENT...
d c 8
d XML_READER_TYPE_DOCUMENT...
d c 9
d XML_READER_TYPE_DOCUMENT_TYPE...
d c 10
d XML_READER_TYPE_DOCUMENT_FRAGMENT...
d c 11
d XML_READER_TYPE_NOTATION...
d c 12
d XML_READER_TYPE_WHITESPACE...
d c 13
d XML_READER_TYPE_SIGNIFICANT_WHITESPACE...
d c 14
d XML_READER_TYPE_END_ELEMENT...
d c 15
d XML_READER_TYPE_END_ENTITY...
d c 16
d XML_READER_TYPE_XML_DECLARATION...
d c 17
* xmlTextReaderPtr:
*
* Pointer to an xmlReader context.
d xmlTextReaderPtr...
d s * based(######typedef######)
* Constructors & Destructor
d xmlNewTextReader...
d pr extproc('xmlNewTextReader')
d like(xmlTextReaderPtr)
d input value like(xmlParserInputBufferPtr)
d URI * value options(*string) const char *
d xmlNewTextReaderFilename...
d pr extproc('xmlNewTextReaderFilename')
d like(xmlTextReaderPtr)
d URI * value options(*string) const char *
d xmlFreeTextReader...
d pr extproc('xmlFreeTextReader')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderSetup...
d pr 10i 0 extproc('xmlTextReaderSetup')
d reader value like(xmlTextReaderPtr)
d input value like(xmlParserInputBufferPtr)
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
* Iterators
d xmlTextReaderRead...
d pr 10i 0 extproc('xmlTextReaderRead')
d reader value like(xmlTextReaderPtr)
/if defined(LIBXML_WRITER_ENABLED)
d xmlTextReaderReadInnerXml...
d pr * extproc('xmlTextReaderReadInnerXml') xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderReadOuterXml...
d pr * extproc('xmlTextReaderReadOuterXml') xmlChar *
d reader value like(xmlTextReaderPtr)
/endif
d xmlTextReaderReadString...
d pr * extproc('xmlTextReaderReadString') xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderReadAttributeValue...
d pr 10i 0 extproc(
d 'xmlTextReaderReadAttributeValue')
d reader value like(xmlTextReaderPtr)
* Attributes of the node
d xmlTextReaderAttributeCount...
d pr 10i 0 extproc(
d 'xmlTextReaderAttributeCount')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderDepth...
d pr 10i 0 extproc('xmlTextReaderDepth')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderHasAttributes...
d pr 10i 0 extproc('xmlTextReaderHasAttributes')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderHasValue...
d pr 10i 0 extproc('xmlTextReaderHasValue')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderIsDefault...
d pr 10i 0 extproc('xmlTextReaderIsDefault')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderIsEmptyElement...
d pr 10i 0 extproc(
d 'xmlTextReaderIsEmptyElement')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderNodeType...
d pr 10i 0 extproc('xmlTextReaderNodeType')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderQuoteChar...
d pr 10i 0 extproc('xmlTextReaderQuoteChar')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderReadState...
d pr 10i 0 extproc('xmlTextReaderReadState')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderIsNamespaceDecl...
d pr 10i 0 extproc(
d 'xmlTextReaderIsNamespaceDecl')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderConstBaseUri...
d pr * extproc('xmlTextReaderConstBaseUri') const xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderConstLocalName...
d pr * extproc( const xmlChar *
d 'xmlTextReaderConstLocalName')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderConstName...
d pr * extproc('xmlTextReaderConstName') const xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderConstNamespaceUri...
d pr * extproc( const xmlChar *
d 'xmlTextReaderConstNamespaceUri')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderConstPrefix...
d pr * extproc('xmlTextReaderConstPrefix') const xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderConstXmlLang...
d pr * extproc('xmlTextReaderConstXmlLang') const xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderConstString...
d pr * extproc('xmlTextReaderConstString') const xmlChar *
d reader value like(xmlTextReaderPtr)
d str * value options(*string) const xmlChar *
d xmlTextReaderConstValue...
d pr * extproc('xmlTextReaderConstValue') const xmlChar *
d reader value like(xmlTextReaderPtr)
* use the Const version of the routine for
* better performance and simpler code
d xmlTextReaderBaseUri...
d pr * extproc('xmlTextReaderBaseUri') xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderLocalName...
d pr * extproc('xmlTextReaderLocalName') xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderName...
d pr * extproc('xmlTextReaderName') xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderNamespaceUri...
d pr * extproc('xmlTextReaderNamespaceUri') xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderPrefix...
d pr * extproc('xmlTextReaderPrefix') xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderXmlLang...
d pr * extproc('xmlTextReaderXmlLang') xmlChar *
d reader value like(xmlTextReaderPtr)
d xmlTextReaderValue...
d pr * extproc('xmlTextReaderValue') xmlChar *
d reader value like(xmlTextReaderPtr)
* Methods of the XmlTextReader
d xmlTextReaderClose...
d pr 10i 0 extproc('xmlTextReaderClose')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderGetAttributeNo...
d pr * extproc( xmlChar *
d 'xmlTextReaderGetAttributeNo')
d reader value like(xmlTextReaderPtr)
d no 10i 0 value
d xmlTextReaderGetAttribute...
d pr * extproc('xmlTextReaderGetAttribute') xmlChar *
d reader value like(xmlTextReaderPtr)
d name * value options(*string) const xmlChar *
d xmlTextReaderGetAttributeNs...
d pr * extproc( xmlChar *
d 'xmlTextReaderGetAttributeNs')
d reader value like(xmlTextReaderPtr)
d localName * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d xmlTextReaderGetRemainder...
d pr extproc('xmlTextReaderGetRemainder')
d like(xmlParserInputBufferPtr)
d reader value like(xmlTextReaderPtr)
d xmlTextReaderLookupNamespace...
d pr * extproc( xmlChar *
d 'xmlTextReaderLookupNamespace')
d reader value like(xmlTextReaderPtr)
d prefix * value options(*string) const xmlChar *
d xmlTextReaderMoveToAttributeNo...
d pr 10i 0 extproc(
d 'xmlTextReaderMoveToAttributeNo')
d reader value like(xmlTextReaderPtr)
d no 10i 0 value
d xmlTextReaderMoveToAttribute...
d pr 10i 0 extproc(
d 'xmlTextReaderMoveToAttribute')
d reader value like(xmlTextReaderPtr)
d name * value options(*string) const xmlChar *
d xmlTextReaderMoveToAttributeNs...
d pr 10i 0 extproc(
d 'xmlTextReaderMoveToAttributeNs')
d reader value like(xmlTextReaderPtr)
d localName * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d xmlTextReaderMoveToFirstAttribute...
d pr 10i 0 extproc(
d 'xmlTextReaderMoveToFirstAttribute')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderMoveToNextAttribute...
d pr 10i 0 extproc(
d 'xmlTextReaderMoveToNextAttribute')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderMoveToElement...
d pr 10i 0 extproc('xmlTextReaderMoveToElement')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderNormalization...
d pr 10i 0 extproc('xmlTextReaderNormalization')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderConstEncoding...
d pr * extproc('xmlTextReaderConstEncoding')const xmlChar *
d reader value like(xmlTextReaderPtr)
* Extensions
d xmlTextReaderSetParserProp...
d pr 10i 0 extproc('xmlTextReaderSetParserProp')
d reader value like(xmlTextReaderPtr)
d prop 10i 0 value
d value 10i 0 value
d xmlTextReaderGetParserProp...
d pr 10i 0 extproc('xmlTextReaderGetParserProp')
d reader value like(xmlTextReaderPtr)
d prop 10i 0 value
d xmlTextReaderCurrentNode...
d pr extproc('xmlTextReaderCurrentNode')
d like(xmlNodePtr)
d reader value like(xmlTextReaderPtr)
d xmlTextReaderGetParserLineNumber...
d pr 10i 0 extproc(
d 'xmlTextReaderGetParserLineNumber')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderGetParserColumnNumber...
d pr 10i 0 extproc(
d 'xmlTextReaderGetParserColumnNumber')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderPreserve...
d pr extproc('xmlTextReaderPreserve')
d like(xmlNodePtr)
d reader value like(xmlTextReaderPtr)
/if defined(LIBXML_PATTERN_ENABLED)
d xmlTextReaderPreservePattern...
d pr 10i 0 extproc(
d 'xmlTextReaderPreservePattern')
d reader value like(xmlTextReaderPtr)
d pattern * value options(*string) const xmlChar *
d namespaces * const xmlChar *(*)
/endif LIBXML_PATTERN_ENBLD
d xmlTextReaderCurrentDoc...
d pr extproc('xmlTextReaderCurrentDoc')
d like(xmlDocPtr)
d reader value like(xmlTextReaderPtr)
d xmlTextReaderExpand...
d pr extproc('xmlTextReaderExpand')
d like(xmlNodePtr)
d reader value like(xmlTextReaderPtr)
d xmlTextReaderNext...
d pr 10i 0 extproc('xmlTextReaderNext')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderNextSibling...
d pr 10i 0 extproc('xmlTextReaderNextSibling')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderIsValid...
d pr 10i 0 extproc('xmlTextReaderIsValid')
d reader value like(xmlTextReaderPtr)
/if defined(LIBXML_SCHEMAS_ENABLED)
d xmlTextReaderRelaxNGValidate...
d pr 10i 0 extproc(
d 'xmlTextReaderRelaxNGValidate')
d reader value like(xmlTextReaderPtr)
d rng * value options(*string) const char *
d xmlTextReaderRelaxNGValidateCtxt...
d pr 10i 0 extproc(
d 'xmlTextReaderRelaxNGValidateCtxt')
d reader value like(xmlTextReaderPtr)
d ctxt value like(xmlRelaxNGValidCtxtPtr)
d options 10i 0 value
d xmlTextReaderRelaxNGSetSchema...
d pr 10i 0 extproc(
d 'xmlTextReaderRelaxNGSetSchema')
d reader value like(xmlTextReaderPtr)
d schema value like(xmlRelaxNGPtr)
d xmlTextReaderSchemaValidate...
d pr 10i 0 extproc(
d 'xmlTextReaderSchemaValidate')
d reader value like(xmlTextReaderPtr)
d xsd * value options(*string) const char *
d xmlTextReaderSchemaValidateCtxt...
d pr 10i 0 extproc(
d 'xmlTextReaderSchemaValidateCtxt')
d reader value like(xmlTextReaderPtr)
d ctxt value like(xmlSchemaValidCtxtPtr)
d options 10i 0 value
d xmlTextReaderSetSchema...
d pr 10i 0 extproc('xmlTextReaderSetSchema')
d reader value like(xmlTextReaderPtr)
d schema value like(xmlSchemaPtr)
/endif
d xmlTextReaderConstXmlVersion...
d pr * extproc( const xmlChar *
d 'xmlTextReaderConstXmlVersion')
d reader value like(xmlTextReaderPtr)
d xmlTextReaderStandalone...
d pr 10i 0 extproc('xmlTextReaderStandalone')
d reader value like(xmlTextReaderPtr)
* Index lookup
d xmlTextReaderByteConsumed...
d pr 20i 0 extproc('xmlTextReaderByteConsumed')
d reader value like(xmlTextReaderPtr)
* New more complete APIs for simpler creation and reuse of readers
d xmlReaderWalker...
d pr extproc('xmlReaderWalker')
d like(xmlTextReaderPtr)
d doc value like(xmlDocPtr)
d xmlReaderForDoc...
d pr extproc('xmlReaderForDoc')
d like(xmlTextReaderPtr)
d cur * value options(*string) const xmlChar *
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlReaderForFile...
d pr extproc('xmlReaderForFile')
d like(xmlTextReaderPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlReaderForMemory...
d pr extproc('xmlReaderForMemory')
d like(xmlTextReaderPtr)
d buffer * value options(*string) const char *
d size 10i 0 value
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlReaderForFd pr extproc('xmlReaderForFd')
d like(xmlTextReaderPtr)
d fd 10i 0 value
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlReaderForIO pr extproc('xmlReaderForIO')
d like(xmlTextReaderPtr)
d ioread value like(xmlInputReadCallback)
d ioclose value like(xmlInputCloseCallback)
d ioctx * value void *
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlReaderNewWalker...
d pr 10i 0 extproc('xmlReaderNewWalker')
d reader value like(xmlTextReaderPtr)
d doc value like(xmlDocPtr)
d xmlReaderNewDoc...
d pr 10i 0 extproc('xmlReaderNewDoc')
d reader value like(xmlTextReaderPtr)
d cur * value options(*string) const xmlChar *
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlReaderNewFile...
d pr 10i 0 extproc('xmlReaderNewFile')
d reader value like(xmlTextReaderPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlReaderNewMemory...
d pr 10i 0 extproc('xmlReaderNewMemory')
d reader value like(xmlTextReaderPtr)
d buffer * value options(*string) const char *
d size 10i 0 value
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlReaderNewFd pr 10i 0 extproc('xmlReaderNewFd')
d reader value like(xmlTextReaderPtr)
d fd 10i 0 value
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlReaderNewIO pr 10i 0 extproc('xmlReaderNewIO')
d reader value like(xmlTextReaderPtr)
d ioread value like(xmlInputReadCallback)
d ioclose value like(xmlInputCloseCallback)
d ioctx * value void *
d URL * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
* Error handling extensions
d xmlTextReaderLocatorPtr...
d s * based(######typedef######) void *
* xmlTextReaderErrorFunc:
* @arg: the user argument
* @msg: the message
* @severity: the severity of the error
* @locator: a locator indicating where the error occured
*
* Signature of an error callback from a reader parser
d xmlTextReaderErrorFunc...
d s * based(######typedef######)
d procptr
d xmlTextReaderLocatorLineNumber...
d pr 10i 0 extproc(
d 'xmlTextReaderLocatorLineNumber')
d locator value like(xmlTextReaderLocatorPtr)
d xmlTextReaderLocatorBaseURI...
d pr * extproc( xmlChar *
d 'xmlTextReaderLocatorBaseURI')
d locator value like(xmlTextReaderLocatorPtr)
d xmlTextReaderSetErrorHandler...
d pr extproc(
d 'xmlTextReaderSetErrorHandler')
d reader value like(xmlTextReaderPtr)
d f value like(xmlTextReaderErrorFunc)
d arg * value void *
d xmlTextReaderSetStructuredErrorHandler...
d pr extproc('xmlTextReaderSetStructuredE-
d rrorHandler')
d reader value like(xmlTextReaderPtr)
d f value like(xmlStructuredErrorFunc)
d arg * value void *
d xmlTextReaderGetErrorHandler...
d pr extproc(
d 'xmlTextReaderGetErrorHandler')
d reader value like(xmlTextReaderPtr)
d f like(xmlTextReaderErrorFunc)
d arg * void *(*)
/endif LIBXML_READER_ENABLD
/endif XML_XMLREADER_H__

View File

@@ -0,0 +1,246 @@
* Summary: regular expressions handling
* Description: basic API for libxml regular expressions handling used
* for XML Schemas and validation.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_REGEXP_H__)
/define XML_REGEXP_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_REGEXP_ENABLED)
* xmlRegexpPtr:
*
* A libxml regular expression, they can actually be far more complex
* thank the POSIX regex expressions.
d xmlRegexpPtr s * based(######typedef######)
* xmlRegExecCtxtPtr:
*
* A libxml progressive regular expression evaluation context
d xmlRegExecCtxtPtr...
d s * based(######typedef######)
/include "libxmlrpg/tree"
/include "libxmlrpg/dict"
* The POSIX like API
d xmlRegexpCompile...
d pr extproc('xmlRegexpCompile')
d like(xmlRegexpPtr)
d regexp * value options(*string) const xmlChar *
d xmlRegFreeRegexp...
d pr extproc('xmlRegFreeRegexp')
d regexp value like(xmlRegexpPtr)
d xmlRegexpExec pr 10i 0 extproc('xmlRegexpExec')
d comp value like(xmlRegexpPtr)
d value * value options(*string) const xmlChar *
d xmlRegexpPrint pr extproc('xmlRegexpPrint')
d output * value FILE *
d regexp value like(xmlRegexpPtr)
d xmlRegexpIsDeterminist...
d pr 10i 0 extproc('xmlRegexpIsDeterminist')
d comp value like(xmlRegexpPtr)
* xmlRegExecCallbacks:
* @exec: the regular expression context
* @token: the current token string
* @transdata: transition data
* @inputdata: input data
*
* Callback function when doing a transition in the automata
d xmlRegExecCallbacks...
d s * based(######typedef######)
d procptr
* The progressive API
d xmlRegNewExecCtxt...
d pr extproc('xmlRegNewExecCtxt')
d like(xmlRegExecCtxtPtr)
d comp value like(xmlRegexpPtr)
d callback value like(xmlRegExecCallbacks)
d data * value void *
d xmlRegFreeExecCtxt...
d pr extproc('xmlRegFreeExecCtxt')
d exec value like(xmlRegExecCtxtPtr)
d xmlRegExecPushString...
d pr 10i 0 extproc('xmlRegExecPushString')
d exec value like(xmlRegExecCtxtPtr)
d value * value options(*string) const xmlChar *
d data * value void *
d xmlRegExecPushString2...
d pr 10i 0 extproc('xmlRegExecPushString2')
d exec value like(xmlRegExecCtxtPtr)
d value * value options(*string) const xmlChar *
d value2 * value options(*string) const xmlChar *
d data * value void *
d xmlRegExecNextValues...
d pr 10i 0 extproc('xmlRegExecNextValues')
d exec value like(xmlRegExecCtxtPtr)
d nbval 10i 0
d nbneg 10i 0
d values * xmlChar * (*)
d terminal 10i 0
d xmlRegExecErrInfo...
d pr 10i 0 extproc('xmlRegExecErrInfo')
d exec value like(xmlRegExecCtxtPtr)
d string * const xmlChar * (*)
d nbval 10i 0
d nbneg 10i 0
d values * xmlChar * (*)
d terminal 10i 0
/if defined(LIBXML_EXPR_ENABLED)
* Formal regular expression handling
* Its goal is to do some formal work on content models
* expressions are used within a context
d xmlExpCtxtPtr s * based(######typedef######)
d xmlExpFreeCtxt pr extproc('xmlExpFreeCtxt')
d ctxt value like(xmlExpCtxtPtr)
d xmlExpNewCtxt pr extproc('xmlExpNewCtxt')
d like(xmlExpCtxtPtr)
d maxNodes 10i 0 value
d dict value like(xmlDictPtr)
d xmlExpCtxtNbNodes...
d pr 10i 0 extproc('xmlExpCtxtNbNodes')
d ctxt value like(xmlExpCtxtPtr)
d xmlExpCtxtNbCons...
d pr 10i 0 extproc('xmlExpCtxtNbCons')
d ctxt value like(xmlExpCtxtPtr)
* Expressions are trees but the tree is opaque
d xmlExpNodePtr s * based(######typedef######)
d xmlExpNodeType s 10i 0 based(######typedef######) enum
d XML_EXP_EMPTY c 0
d XML_EXP_FORBID...
d c 1
d XML_EXP_ATOM c 2
d XML_EXP_SEQ c 3
d XML_EXP_OR c 4
d XML_EXP_COUNT c 5
* 2 core expressions shared by all for the empty language set
* and for the set with just the empty token
d forbiddenExp s import('forbiddenExp')
d like(xmlExpNodePtr)
d emptyExp s import('emptyExp')
d like(xmlExpNodePtr)
* Expressions are reference counted internally
d xmlExpFree pr extproc('xmlExpFree')
d expr value like(xmlExpNodePtr)
d xmlExpRef pr extproc('xmlExpRef')
d expr value like(xmlExpNodePtr)
* constructors can be either manual or from a string
d xmlExpParse pr extproc('xmlExpParse')
d like(xmlExpNodePtr)
d ctxt value like(xmlExpCtxtPtr)
d expr * value options(*string) const char *
d xmlExpNewAtom pr extproc('xmlExpNewAtom')
d like(xmlExpNodePtr)
d ctxt value like(xmlExpCtxtPtr)
d name * value options(*string) const xmlChar *
d len 10i 0 value
d xmlExpNewOr pr extproc('xmlExpNewOr')
d like(xmlExpNodePtr)
d ctxt value like(xmlExpCtxtPtr)
d left value like(xmlExpNodePtr)
d right value like(xmlExpNodePtr)
d xmlExpNewSeq pr extproc('xmlExpNewSeq')
d like(xmlExpNodePtr)
d ctxt value like(xmlExpCtxtPtr)
d left value like(xmlExpNodePtr)
d right value like(xmlExpNodePtr)
d xmlExpNewRange pr extproc('xmlExpNewRange')
d like(xmlExpNodePtr)
d ctxt value like(xmlExpCtxtPtr)
d subset value like(xmlExpNodePtr)
d min 10i 0 value
d max 10i 0 value
* The really interesting APIs
d xmlExpIsNillable...
d pr 10i 0 extproc('xmlExpIsNillable')
d expr value like(xmlExpNodePtr)
d xmlExpMaxToken pr 10i 0 extproc('xmlExpMaxToken')
d expr value like(xmlExpNodePtr)
d xmlExpGetLanguage...
d pr 10i 0 extproc('xmlExpGetLanguage')
d ctxt value like(xmlExpCtxtPtr)
d expr value like(xmlExpNodePtr)
d langList * const xmlChar *(*)
d len 10i 0 value
d xmlExpGetStart pr 10i 0 extproc('xmlExpGetStart')
d ctxt value like(xmlExpCtxtPtr)
d expr value like(xmlExpNodePtr)
d tokList * const xmlChar *(*)
d len 10i 0 value
d xmlExpStringDerive...
d pr extproc('xmlExpStringDerive')
d like(xmlExpNodePtr)
d ctxt value like(xmlExpCtxtPtr)
d expr value like(xmlExpNodePtr)
d str * value options(*string) const xmlChar *
d len 10i 0 value
d xmlExpExpDerive...
d pr extproc('xmlExpExpDerive')
d like(xmlExpNodePtr)
d ctxt value like(xmlExpCtxtPtr)
d expr value like(xmlExpNodePtr)
d sub value like(xmlExpNodePtr)
d xmlExpSubsume pr 10i 0 extproc('xmlExpSubsume')
d ctxt value like(xmlExpCtxtPtr)
d expr value like(xmlExpNodePtr)
d sub value like(xmlExpNodePtr)
d xmlExpDump pr extproc('xmlExpDump')
d buf value like(xmlBufferPtr)
d expr value like(xmlExpNodePtr)
/endif LIBXML_EXPR_ENABLED
/endif LIBXML_REGEXP_ENABLD
/endif XML_REGEXP_H__

View File

@@ -0,0 +1,96 @@
* Summary: the XML document serializer
* Description: API to save document or subtree of document
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_XMLSAVE_H__)
/define XML_XMLSAVE_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/tree"
/include "libxmlrpg/encoding"
/include "libxmlrpg/xmlIO"
/if defined(LIBXML_OUTPUT_ENABLED)
* xmlSaveOption:
*
* This is the set of XML save options that can be passed down
* to the xmlSaveToFd() and similar calls.
d xmlSaveOption s 10i 0 based(######typedef######) enum
d XML_SAVE_FORMAT... Format save output
d c X'0001'
d XML_SAVE_NO_DECL... Drop xml declaration
d c X'0002'
d XML_SAVE_NO_EMPTY... No empty tags
d c X'0004'
d XML_SAVE_NO_XHTML... No XHTML1 specific
d c X'0008'
d XML_SAVE_XHTML... Frce XHTML1 specific
d c X'0010'
d XML_SAVE_AS_XML... Frce XML on HTML doc
d c X'0020'
d XML_SAVE_AS_HTML... Frce HTML on XML doc
d c X'0040'
d XML_SAVE_WSNONSIG... Fmt w/ non-sig space
d c X'0080'
d xmlSaveCtxtPtr s * based(######typedef######)
d xmlSaveToFd pr extproc('xmlSaveToFd')
d like(xmlSaveCtxtPtr)
d fd 10i 0 value
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlSaveToFilename...
d pr extproc('xmlSaveToFilename')
d like(xmlSaveCtxtPtr)
d filename * value options(*string) const char *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlSaveToBuffer...
d pr extproc('xmlSaveToBuffer')
d like(xmlSaveCtxtPtr)
d buffer value like(xmlBufferPtr)
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlSaveToIO pr extproc('xmlSaveToIO')
d like(xmlSaveCtxtPtr)
d iowrite value like(xmlOutputWriteCallback)
d ioclose value like(xmlOutputCloseCallback)
d ioctx * value void *
d encoding * value options(*string) const char *
d options 10i 0 value
d xmlSaveDoc pr 20i 0 extproc('xmlSaveDoc')
d ctxt value like(xmlSaveCtxtPtr)
d doc value like(xmlDocPtr)
d xmlSaveTree pr 20i 0 extproc('xmlSaveTree')
d ctxt value like(xmlSaveCtxtPtr)
d node value like(xmlNodePtr)
d xmlSaveFlush pr 10i 0 extproc('xmlSaveFlush')
d ctxt value like(xmlSaveCtxtPtr)
d xmlSaveClose pr 10i 0 extproc('xmlSaveClose')
d ctxt value like(xmlSaveCtxtPtr)
d xmlSaveSetEscape...
d pr 10i 0 extproc('xmlSaveSetEscape')
d ctxt value like(xmlSaveCtxtPtr)
d escape value like(xmlCharEncodingOutputFunc)
d xmlSaveSetAttrEscape...
d pr 10i 0 extproc('xmlSaveSetAttrEscape')
d ctxt value like(xmlSaveCtxtPtr)
d escape value like(xmlCharEncodingOutputFunc)
/endif LIBXML_OUTPUT_ENABLD
/endif XML_XMLSAVE_H__

View File

@@ -0,0 +1,318 @@
* Summary: incomplete XML Schemas structure implementation
* Description: interface to the XML Schemas handling and schema validity
* checking, it is incomplete right now.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_SCHEMA_H__)
/define XML_SCHEMA_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_SCHEMAS_ENABLED)
/include "libxmlrpg/tree"
* This error codes are obsolete; not used any more.
d xmlSchemaValidError...
d s 10i 0 based(######typedef######) enum
d XML_SCHEMAS_ERR_OK...
d c 0
d XML_SCHEMAS_ERR_NOROOT...
d c 1
d XML_SCHEMAS_ERR_UNDECLAREDELEM...
d c 2
d XML_SCHEMAS_ERR_NOTTOPLEVEL...
d c 3
d XML_SCHEMAS_ERR_MISSING...
d c 4
d XML_SCHEMAS_ERR_WRONGELEM...
d c 5
d XML_SCHEMAS_ERR_NOTYPE...
d c 6
d XML_SCHEMAS_ERR_NOROLLBACK...
d c 7
d XML_SCHEMAS_ERR_ISABSTRACT...
d c 8
d XML_SCHEMAS_ERR_NOTEMPTY...
d c 9
d XML_SCHEMAS_ERR_ELEMCONT...
d c 10
d XML_SCHEMAS_ERR_HAVEDEFAULT...
d c 11
d XML_SCHEMAS_ERR_NOTNILLABLE...
d c 12
d XML_SCHEMAS_ERR_EXTRACONTENT...
d c 13
d XML_SCHEMAS_ERR_INVALIDATTR...
d c 14
d XML_SCHEMAS_ERR_INVALIDELEM...
d c 15
d XML_SCHEMAS_ERR_NOTDETERMINIST...
d c 16
d XML_SCHEMAS_ERR_CONSTRUCT...
d c 17
d XML_SCHEMAS_ERR_INTERNAL...
d c 18
d XML_SCHEMAS_ERR_NOTSIMPLE...
d c 19
d XML_SCHEMAS_ERR_ATTRUNKNOWN...
d c 20
d XML_SCHEMAS_ERR_ATTRINVALID...
d c 21
d XML_SCHEMAS_ERR_VALUE...
d c 22
d XML_SCHEMAS_ERR_FACET...
d c 23
d XML_SCHEMAS_ERR_...
d c 24
d XML_SCHEMAS_ERR_XXX...
d c 25
* ATTENTION: Change xmlSchemaSetValidOptions's check
* for invalid values, if adding to the validation
* options below.
* xmlSchemaValidOption:
*
* This is the set of XML Schema validation options.
d xmlSchemaValidOption...
d s 10i 0 based(######typedef######) enum
*
* Default/fixed: create an attribute node
* or an element's text node on the instance.
*
d XML_SCHEMA_VAL_VC_I_CREATE...
d c X'0001'
/if defined(DISABLED)
*
* assemble schemata using
* xsi:schemaLocation and
* xsi:noNamespaceSchemaLocation
*
d XML_SCHEMA_VAL_XSI_ASSEMBLE...
d c X'0002'
/endif
* The schemas related types are kept internal
d xmlSchemaPtr s * based(######typedef######)
* xmlSchemaValidityErrorFunc:
* @ctx: the validation context
* @msg: the message
* @...: extra arguments
*
* Signature of an error callback from an XSD validation
d xmlSchemaValidityErrorFunc...
d s * based(######typedef######)
d procptr
* xmlSchemaValidityWarningFunc:
* @ctx: the validation context
* @msg: the message
* @...: extra arguments
*
* Signature of a warning callback from an XSD validation
d xmlSchemaValidityWarningFunc...
d s * based(######typedef######)
d procptr
* A schemas validation context
d xmlSchemaParserCtxtPtr...
d s * based(######typedef######)
d xmlSchemaValidCtxtPtr...
d s * based(######typedef######)
* xmlSchemaValidityLocatorFunc:
* @ctx: user provided context
* @file: returned file information
* @line: returned line information
*
* A schemas validation locator, a callback called by the validator.
* This is used when file or node informations are not available
* to find out what file and line number are affected
*
* Returns: 0 in case of success and -1 in case of error
d xmlSchemaValidityLocatorFunc...
d s * based(######typedef######)
d procptr
* Interfaces for parsing.
d xmlSchemaNewParserCtxt...
d pr extproc('xmlSchemaNewParserCtxt')
d like(xmlSchemaParserCtxtPtr)
d URL * value options(*string) const char *
d xmlSchemaNewMemParserCtxt...
d pr extproc('xmlSchemaNewMemParserCtxt')
d like(xmlSchemaParserCtxtPtr)
d buffer * value options(*string) const char *
d size 10i 0 value
d xmlSchemaNewDocParserCtxt...
d pr extproc('xmlSchemaNewDocParserCtxt')
d like(xmlSchemaParserCtxtPtr)
d doc value like(xmlDocPtr)
d xmlSchemaFreeParserCtxt...
d pr extproc('xmlSchemaFreeParserCtxt')
d ctxt value like(xmlSchemaParserCtxtPtr)
d xmlSchemaSetParserErrors...
d pr extproc('xmlSchemaSetParserErrors')
d ctxt value like(xmlSchemaParserCtxtPtr)
d err value
d like(xmlSchemaValidityErrorFunc)
d warn value
d like(xmlSchemaValidityWarningFunc)
d ctx * value void *
d xmlSchemaSetParserStructuredErrors...
d pr extproc(
d 'xmlSchemaSetParserStructuredErrors')
d ctxt value like(xmlSchemaParserCtxtPtr)
d serror value like(xmlStructuredErrorFunc)
d ctx * value void *
d xmlSchemaGetParserErrors...
d pr 10i 0 extproc('xmlSchemaGetParserErrors')
d ctxt value like(xmlSchemaParserCtxtPtr)
d err like(xmlSchemaValidityErrorFunc)
d warn like(xmlSchemaValidityWarningFunc)
d ctx * void *(*)
d xmlSchemaIsValid...
d pr 10i 0 extproc('xmlSchemaIsValid')
d ctxt value like(xmlSchemaValidCtxtPtr)
d xmlSchemaParse pr extproc('xmlSchemaParse')
d like(xmlSchemaPtr)
d ctxt value like(xmlSchemaParserCtxtPtr)
d xmlSchemaFree pr extproc('xmlSchemaFree')
d schema value like(xmlSchemaPtr)
/if defined(LIBXML_OUTPUT_ENABLED)
d xmlSchemaDump pr extproc('xmlSchemaDump')
d output * value FILE *
d schema value like(xmlSchemaPtr)
/endif LIBXML_OUTPUT_ENABLD
* Interfaces for validating
d xmlSchemaSetValidErrors...
d pr extproc('xmlSchemaSetValidErrors')
d ctxt value like(xmlSchemaValidCtxtPtr)
d err value
d like(xmlSchemaValidityErrorFunc)
d warn value
d like(xmlSchemaValidityWarningFunc)
d ctx * value void *
d xmlSchemaSetValidStructuredErrors...
d pr extproc(
d 'xmlSchemaSetValidStructuredErrors')
d ctxt value like(xmlSchemaValidCtxtPtr)
d serror value like(xmlStructuredErrorFunc)
d ctx * value void *
d xmlSchemaGetValidErrors...
d pr 10i 0 extproc('xmlSchemaGetValidErrors')
d ctxt value like(xmlSchemaValidCtxtPtr)
d err like(xmlSchemaValidityErrorFunc)
d warn like(xmlSchemaValidityWarningFunc)
d ctx * void *(*)
d xmlSchemaSetValidOptions...
d pr 10i 0 extproc('xmlSchemaSetValidOptions')
d ctxt value like(xmlSchemaValidCtxtPtr)
d options 10i 0 value
d xmlSchemaValidateSetFilename...
d pr extproc(
d 'xmlSchemaValidateSetFilename')
d vctxt value like(xmlSchemaValidCtxtPtr)
d filename * value options(*string) const char *
d xmlSchemaValidCtxtGetOptions...
d pr 10i 0 extproc(
d 'xmlSchemaValidCtxtGetOptions')
d ctxt value like(xmlSchemaValidCtxtPtr)
d xmlSchemaNewValidCtxt...
d pr extproc('xmlSchemaNewValidCtxt')
d like(xmlSchemaValidCtxtPtr)
d schema value like(xmlSchemaPtr)
d xmlSchemaFreeValidCtxt...
d pr extproc('xmlSchemaFreeValidCtxt')
d ctxt value like(xmlSchemaValidCtxtPtr)
d xmlSchemaValidateDoc...
d pr 10i 0 extproc('xmlSchemaValidateDoc')
d ctxt value like(xmlSchemaValidCtxtPtr)
d instance value like(xmlDocPtr)
d xmlSchemaValidateOneElement...
d pr 10i 0 extproc(
d 'xmlSchemaValidateOneElement')
d ctxt value like(xmlSchemaValidCtxtPtr)
d elem value like(xmlNodePtr)
d xmlSchemaValidateStream...
d pr 10i 0 extproc('xmlSchemaValidateStream')
d ctxt value like(xmlSchemaValidCtxtPtr)
d input value like(xmlParserInputBufferPtr)
d enc value like(xmlCharEncoding)
d sax value like(xmlSAXHandlerPtr)
d user_data * value void *
d xmlSchemaValidateFile...
d pr 10i 0 extproc('xmlSchemaValidateFile')
d ctxt value like(xmlSchemaValidCtxtPtr)
d filename * value options(*string) const char *
d options 10i 0 value
d xmlSchemaValidCtxtGetParserCtxt...
d pr extproc(
d 'xmlSchemaValidCtxtGetParserCtxt')
d like(xmlParserCtxtPtr)
d ctxt value like(xmlSchemaValidCtxtPtr)
* Interface to insert Schemas SAX validation in a SAX stream
d xmlSchemaSAXPlugPtr...
d s * based(######typedef######)
d xmlSchemaSAXPlug...
d pr extproc('xmlSchemaSAXPlug')
d like(xmlSchemaSAXPlugPtr)
d ctxt value like(xmlSchemaValidCtxtPtr)
d sax like(xmlSAXHandlerPtr)
d user_data * void *(*)
d xmlSchemaSAXUnplug...
d pr 10i 0 extproc('xmlSchemaSAXUnplug')
d plug value like(xmlSchemaSAXPlugPtr)
d xmlSchemaValidateSetLocator...
d pr extproc(
d 'xmlSchemaValidateSetLocator')
d vctxt value like(xmlSchemaValidCtxtPtr)
d f value
d like(xmlSchemaValidityLocatorFunc)
d ctxt * value void *
/endif LIBXML_SCHEMAS_ENBLD
/endif XML_SCHEMA_H__

View File

@@ -0,0 +1,235 @@
* Summary: implementation of XML Schema Datatypes
* Description: module providing the XML Schema Datatypes implementation
* both definition and validity checking
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_SCHEMA_TYPES_H__)
/define XML_SCHEMA_TYPES_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_SCHEMAS_ENABLED)
/include "libxmlrpg/schemasInternals"
/include "libxmlrpg/xmlschemas"
d xmlSchemaWhitespaceValueType...
d s 10i 0 based(######typedef######) enum
d XML_SCHEMA_WHITESPACE_UNKNOWN...
d c 0
d XML_SCHEMA_WHITESPACE_PRESERVE...
d c 1
d XML_SCHEMA_WHITESPACE_REPLACE...
d c 2
d XML_SCHEMA_WHITESPACE_COLLAPSE...
d c 3
d xmlSchemaInitTypes...
d pr extproc('xmlSchemaInitTypes')
d xmlSchemaCleanupTypes...
d pr extproc('xmlSchemaCleanupTypes')
d xmlSchemaGetPredefinedType...
d pr extproc('xmlSchemaGetPredefinedType')
d like(xmlSchemaTypePtr)
d name * value options(*string) const xmlChar *
d ns * value options(*string) const xmlChar *
d xmlSchemaValidatePredefinedType...
d pr 10i 0 extproc(
d 'xmlSchemaValidatePredefinedType')
d type value like(xmlSchemaTypePtr)
d value * value options(*string) const xmlChar *
d val * value xmlSchemaValPtr *
d xmlSchemaValPredefTypeNode...
d pr 10i 0 extproc('xmlSchemaValPredefTypeNode')
d type value like(xmlSchemaTypePtr)
d value * value options(*string) const xmlChar *
d val * value xmlSchemaValPtr *
d node value like(xmlNodePtr)
d xmlSchemaValidateFacet...
d pr 10i 0 extproc('xmlSchemaValidateFacet')
d base value like(xmlSchemaTypePtr)
d facet value like(xmlSchemaFacetPtr)
d value * value options(*string) const xmlChar *
d val value like(xmlSchemaValPtr)
d xmlSchemaValidateFacetWhtsp...
d pr 10i 0 extproc(
d 'xmlSchemaValidateFacetWhtsp')
d facet value like(xmlSchemaFacetPtr)
d fws value
d like(xmlSchemaWhitespaceValueType)
d valType value like(xmlSchemaValType)
d value * value options(*string) const xmlChar *
d val value like(xmlSchemaValPtr)
d ws value
d like(xmlSchemaWhitespaceValueType)
d xmlSchemaFreeValue...
d pr extproc('xmlSchemaFreeValue')
d val value like(xmlSchemaValPtr)
d xmlSchemaNewFacet...
d pr extproc('xmlSchemaNewFacet')
d like(xmlSchemaFacetPtr)
d xmlSchemaCheckFacet...
d pr 10i 0 extproc('xmlSchemaCheckFacet')
d facet value like(xmlSchemaFacetPtr)
d typeDecl value like(xmlSchemaTypePtr)
d ctxt value like(xmlSchemaParserCtxtPtr)
d name * value options(*string) const xmlChar *
d xmlSchemaFreeFacet...
d pr extproc('xmlSchemaFreeFacet')
d facet value like(xmlSchemaFacetPtr)
d xmlSchemaCompareValues...
d pr 10i 0 extproc('xmlSchemaCompareValues')
d x value like(xmlSchemaValPtr)
d y value like(xmlSchemaValPtr)
d xmlSchemaGetBuiltInListSimpleTypeItemType...
d pr extproc('xmlSchemaGetBuiltInListSimp-
d leTypeItemType')
d like(xmlSchemaTypePtr)
d type value like(xmlSchemaTypePtr)
d xmlSchemaValidateListSimpleTypeFacet...
d pr 10i 0 extproc('xmlSchemaValidateListSimple-
d TypeFacet')
d facet value like(xmlSchemaFacetPtr)
d value * value options(*string) const xmlChar *
d actualLen 20u 0 value
d expectedLen * value unsigned long *
d xmlSchemaGetBuiltInType...
d pr extproc('xmlSchemaGetBuiltInType')
d like(xmlSchemaTypePtr)
d type value like(xmlSchemaValType)
d xmlSchemaIsBuiltInTypeFacet...
d pr 10i 0 extproc(
d 'xmlSchemaIsBuiltInTypeFacet')
d type value like(xmlSchemaTypePtr)
d facetType 10i 0 value
d xmlSchemaCollapseString...
d pr * extproc('xmlSchemaCollapseString') xmlChar *
d value * value options(*string) const xmlChar *
d xmlSchemaWhiteSpaceReplace...
d pr * extproc('xmlSchemaWhiteSpaceReplace')xmlChar *
d value * value options(*string) const xmlChar *
d xmlSchemaGetFacetValueAsULong...
d pr 20u 0 extproc(
d 'xmlSchemaGetFacetValueAsULong')
d facet value like(xmlSchemaFacetPtr)
d xmlSchemaValidateLengthFacet...
d pr 10i 0 extproc(
d 'xmlSchemaValidateLengthFacet')
d type value like(xmlSchemaTypePtr)
d facet value like(xmlSchemaFacetPtr)
d value * value options(*string) const xmlChar *
d val value like(xmlSchemaValPtr)
d length 20u 0
d xmlSchemaValidateLengthFacetWhtsp...
d pr 10i 0 extproc(
d 'xmlSchemaValidateLengthFacetWhtsp')
d facet value like(xmlSchemaFacetPtr)
d valType value like(xmlSchemaValType)
d value * value options(*string) const xmlChar *
d val value like(xmlSchemaValPtr)
d length 20u 0
d ws value
d like(xmlSchemaWhitespaceValueType)
d xmlSchemaValPredefTypeNodeNoNorm...
d pr 10i 0 extproc(
d 'xmlSchemaValPredefTypeNodeNoNorm')
d type value like(xmlSchemaTypePtr)
d value * value options(*string) const xmlChar *
d val like(xmlSchemaValPtr)
d node value like(xmlNodePtr)
d xmlSchemaGetCanonValue...
d pr 10i 0 extproc('xmlSchemaGetCanonValue')
d val value like(xmlSchemaValPtr)
d retValue * value const xmlChar * *
d xmlSchemaGetCanonValueWhtsp...
d pr 10i 0 extproc(
d 'xmlSchemaGetCanonValueWhtsp')
d val value like(xmlSchemaValPtr)
d retValue * value const xmlChar * *
d ws value
d like(xmlSchemaWhitespaceValueType)
d xmlSchemaValueAppend...
d pr 10i 0 extproc('xmlSchemaValueAppend')
d prev value like(xmlSchemaValPtr)
d cur value like(xmlSchemaValPtr)
d xmlSchemaValueGetNext...
d pr extproc('xmlSchemaValueGetNext')
d like(xmlSchemaValPtr)
d cur value like(xmlSchemaValPtr)
d xmlSchemaValueGetAsString...
d pr * extproc('xmlSchemaValueGetAsString') const xmlChar *
d val value like(xmlSchemaValPtr)
d xmlSchemaValueGetAsBoolean...
d pr 10i 0 extproc('xmlSchemaValueGetAsBoolean')
d val value like(xmlSchemaValPtr)
d xmlSchemaNewStringValue...
d pr extproc('xmlSchemaNewStringValue')
d like(xmlSchemaValPtr)
d type value like(xmlSchemaValType)
d value * value options(*string) const xmlChar *
d xmlSchemaNewNOTATIONValue...
d pr extproc('xmlSchemaNewNOTATIONValue')
d like(xmlSchemaValPtr)
d name * value options(*string) const xmlChar *
d ns * value options(*string) const xmlChar *
d xmlSchemaNewQNameValue...
d pr extproc('xmlSchemaNewQNameValue')
d like(xmlSchemaValPtr)
d namespaceName * value options(*string) const xmlChar *
d localName * value options(*string) const xmlChar *
d xmlSchemaCompareValuesWhtsp...
d pr 10i 0 extproc(
d 'xmlSchemaCompareValuesWhtsp')
d x value like(xmlSchemaValPtr)
d xws value
d like(xmlSchemaWhitespaceValueType)
d y value like(xmlSchemaValPtr)
d yws value
d like(xmlSchemaWhitespaceValueType)
d xmlSchemaCopyValue...
d pr extproc('xmlSchemaCopyValue')
d like(xmlSchemaValPtr)
d val value like(xmlSchemaValPtr)
d xmlSchemaGetValType...
d pr extproc('xmlSchemaGetValType')
d like(xmlSchemaValType)
d val value like(xmlSchemaValPtr)
/endif LIBXML_SCHEMAS_ENBLD
/endif XML_SCHEMA_TYPES_H__

View File

@@ -0,0 +1,34 @@
* Summary: va_list support for ILE/RPG.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_STDARG_H__)
/define XML_STDARG_H__
/include "libxmlrpg/xmlversion"
* The va_list object.
d xmlVaList ds based(######typedef######)
d align qualified
d current *
d next *
* Procedures.
d xmlVaStart pr extproc('__xmlVaStart')
d list like(xmlVaList)
d lastargaddr * value
d lastargsize 10u 0 value
d xmlVaArg pr * extproc('__xmlVaArg')
d list like(xmlVaList)
d dest * value
d argsize 10i 0 value
d xmlVaEnd pr extproc('__xmlVaEnd')
d list like(xmlVaList)
/endif XML_STDARG_H__

View File

@@ -0,0 +1,162 @@
* Summary: set of routines to process strings
* Description: type and interfaces needed for the internal string
* handling of the library, especially UTF8 processing.
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_STRING_H__)
/define XML_STRING_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/xmlstdarg"
* xmlChar:
*
* This is a basic byte in an UTF-8 encoded string.
* It's unsigned allowing to pinpoint case where char * are assigned
* to xmlChar * (possibly making serialization back impossible).
d xmlChar s 3u 0 based(######typedef######)
* xmlChar handling
d xmlStrdup pr * extproc('xmlStrdup') xmlChar *
d cur * value options(*string) const xmlChar *
d xmlStrndup pr * extproc('xmlStrndup') xmlChar *
d cur * value options(*string) const xmlChar *
d len 10i 0 value
d xmlCharStrndup pr * extproc('xmlCharStrndup') xmlChar *
d cur * value options(*string) const char *
d len 10i 0 value
d xmlCharStrdup pr * extproc('xmlCharStrdup') xmlChar *
d cur * value options(*string) const char *
d xmlStrsub pr * extproc('xmlStrsub') const xmlChar *
d str * value options(*string) const xmlChar *
d start 10i 0 value
d len 10i 0 value
d xmlStrchr pr * extproc('xmlStrchr') const xmlChar *
d str * value options(*string) const xmlChar *
d val value like(xmlChar)
d xmlStrstr pr * extproc('xmlStrstr') const xmlChar *
d str * value options(*string) const xmlChar *
d val * value options(*string) const xmlChar *
d xmlStrcasestr pr * extproc('xmlStrcasestr') const xmlChar *
d str * value options(*string) const xmlChar *
d val * value options(*string) const xmlChar *
d xmlStrcmp pr 10i 0 extproc('xmlStrcmp')
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
d xmlStrncmp pr 10i 0 extproc('xmlStrncmp')
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
d len 10i 0 value
d xmlStrcasecmp pr 10i 0 extproc('xmlStrcasecmp')
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
d xmlStrncasecmp pr 10i 0 extproc('xmlStrncasecmp')
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
d len 10i 0 value
d xmlStrEqual pr 10i 0 extproc('xmlStrEqual')
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
d xmlStrQEqual pr 10i 0 extproc('xmlStrQEqual')
d pref * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d stre * value options(*string) const xmlChar *
d xmlStrlen pr 10i 0 extproc('xmlStrlen')
d str * value options(*string) const xmlChar *
d xmlStrcat pr * extproc('xmlStrcat') xmlChar *
d cur * value options(*string) xmlChar *
d add * value options(*string) const xmlChar *
d xmlStrncat pr * extproc('xmlStrncat') xmlChar *
d cur * value options(*string) xmlChar *
d add * value options(*string) const xmlChar *
d len 10i 0 value
d xmlStrncatNew pr * extproc('xmlStrncatNew') xmlChar *
d str1 * value options(*string) const xmlChar *
d str2 * value options(*string) const xmlChar *
d len 10i 0 value
* xmlStrPrintf() is a vararg function.
* The following prototype supports up to 8 pointer arguments.
* Other argument signature can be achieved by defining alternate
* prototypes redirected to the same function.
d xmlStrPrintf pr 10i 0 extproc('xmlStrPrintf')
d buf * value options(*string) xmlChar *
d len 10i 0 value
d msg * value options(*string) const xmlChar *
d arg1 * value options(*string: *nopass)
d arg2 * value options(*string: *nopass)
d arg3 * value options(*string: *nopass)
d arg4 * value options(*string: *nopass)
d arg5 * value options(*string: *nopass)
d arg6 * value options(*string: *nopass)
d arg7 * value options(*string: *nopass)
d arg8 * value options(*string: *nopass)
d xmlStrVPrintf pr 10i 0 extproc('xmlStrVPrintf')
d buf * value options(*string) xmlChar *
d len 10i 0 value
d msg * value options(*string) const xmlChar *
d ap likeds(xmlVaList)
d xmlGetUTF8Char pr 10i 0 extproc('xmlGetUTF8Char')
d utf * value options(*string) const uns. char *
d len 10i 0
d xmlCheckUTF8 pr 10i 0 extproc('xmlCheckUTF8')
d utf * value options(*string) const uns. char *
d xmlUTF8Strsize pr 10i 0 extproc('xmlUTF8Strsize')
d utf * value options(*string) const xmlChar *
d len 10i 0 value
d xmlUTF8Strndup pr * extproc('xmlUTF8Strndup') xmlChar *
d utf * value options(*string) const xmlChar *
d len 10i 0 value
d xmlUTF8Strpos pr * extproc('xmlUTF8Strpos') const xmlChar *
d utf * value options(*string) const xmlChar *
d pos 10i 0 value
d xmlUTF8Strloc pr 10i 0 extproc('xmlUTF8Strloc')
d utf * value options(*string) const xmlChar *
d utfchar * value options(*string) const xmlChar *
d xmlUTF8Strsub pr * extproc('xmlUTF8Strsub') xmlChar *
d utf * value options(*string) const xmlChar *
d start 10i 0 value
d len 10i 0 value
d xmlUTF8Strlen pr 10i 0 extproc('xmlUTF8Strlen')
d utf * value options(*string) const xmlChar *
d xmlUTF8Size pr 10i 0 extproc('xmlUTF8Size')
d utf * value options(*string) const xmlChar *
d xmlUTF8Charcmp pr 10i 0 extproc('xmlUTF8Charcmp')
d utf1 * value options(*string) const xmlChar *
d utf2 * value options(*string) const xmlChar *
/endif XML_STRING_H__

View File

@@ -0,0 +1,668 @@
* Summary: Unicode character APIs
* Description: API for the Unicode character APIs
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_UNICODE_H__)
/define XML_UNICODE_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_UNICODE_ENABLED)
d xmlUCSIsAegeanNumbers...
d pr 10i 0 extproc('xmlUCSIsAegeanNumbers')
d code 10i 0 value
d xmlUCSIsAlphabeticPresentationForms...
d pr 10i 0 extproc(
d 'xmlUCSIsAlphabeticPresentationForms'
d )
d code 10i 0 value
d xmlUCSIsArabic pr 10i 0 extproc('xmlUCSIsArabic')
d code 10i 0 value
d xmlUCSIsArabicPresentationFormsA...
d pr 10i 0 extproc(
d 'xmlUCSIsArabicPresentationFormsA')
d code 10i 0 value
d xmlUCSIsArabicPresentationFormsB...
d pr 10i 0 extproc(
d 'xmlUCSIsArabicPresentationFormsB')
d code 10i 0 value
d xmlUCSIsArmenian...
d pr 10i 0 extproc('xmlUCSIsArmenian')
d code 10i 0 value
d xmlUCSIsArrows pr 10i 0 extproc('xmlUCSIsArrows')
d code 10i 0 value
d xmlUCSIsBasicLatin...
d pr 10i 0 extproc('xmlUCSIsBasicLatin')
d code 10i 0 value
d xmlUCSIsBengali...
d pr 10i 0 extproc('xmlUCSIsBengali')
d code 10i 0 value
d xmlUCSIsBlockElements...
d pr 10i 0 extproc('xmlUCSIsBlockElements')
d code 10i 0 value
d xmlUCSIsBopomofo...
d pr 10i 0 extproc('xmlUCSIsBopomofo')
d code 10i 0 value
d xmlUCSIsBopomofoExtended...
d pr 10i 0 extproc('xmlUCSIsBopomofoExtended')
d code 10i 0 value
d xmlUCSIsBoxDrawing...
d pr 10i 0 extproc('xmlUCSIsBoxDrawing')
d code 10i 0 value
d xmlUCSIsBraillePatterns...
d pr 10i 0 extproc('xmlUCSIsBraillePatterns')
d code 10i 0 value
d xmlUCSIsBuhid pr 10i 0 extproc('xmlUCSIsBuhid')
d code 10i 0 value
d xmlUCSIsByzantineMusicalSymbols...
d pr 10i 0 extproc(
d 'xmlUCSIsByzantineMusicalSymbols')
d code 10i 0 value
d xmlUCSIsCJKCompatibility...
d pr 10i 0 extproc('xmlUCSIsCJKCompatibility')
d code 10i 0 value
d xmlUCSIsCJKCompatibilityForms...
d pr 10i 0 extproc(
d 'xmlUCSIsCJKCompatibilityForms')
d code 10i 0 value
d xmlUCSIsCJKCompatibilityIdeographs...
d pr 10i 0 extproc(
d 'xmlUCSIsCJKCompatibilityIdeographs')
d code 10i 0 value
d xmlUCSIsCJKCompatibilityIdeographsSupplement...
d pr 10i 0 extproc('xmlUCSIsCJKCompatibilityIde-
d ographsSupplement')
d code 10i 0 value
d xmlUCSIsCJKRadicalsSupplement...
d pr 10i 0 extproc(
d 'xmlUCSIsCJKRadicalsSupplement')
d code 10i 0 value
d xmlUCSIsCJKSymbolsandPunctuation...
d pr 10i 0 extproc(
d 'xmlUCSIsCJKSymbolsandPunctuation')
d code 10i 0 value
d xmlUCSIsCJKUnifiedIdeographs...
d pr 10i 0 extproc(
d 'xmlUCSIsCJKUnifiedIdeographs')
d code 10i 0 value
d xmlUCSIsCJKUnifiedIdeographsExtensionA...
d pr 10i 0 extproc('xmlUCSIsCJKUnifiedIdeograph-
d sExtensionA')
d code 10i 0 value
d xmlUCSIsCJKUnifiedIdeographsExtensionB...
d pr 10i 0 extproc('xmlUCSIsCJKUnifiedIdeograph-
d sExtensionB')
d code 10i 0 value
d xmlUCSIsCherokee...
d pr 10i 0 extproc('xmlUCSIsCherokee')
d code 10i 0 value
d xmlUCSIsCombiningDiacriticalMarks...
d pr 10i 0 extproc(
d 'xmlUCSIsCombiningDiacriticalMarks')
d code 10i 0 value
d xmlUCSIsCombiningDiacriticalMarksforSymbols...
d pr 10i 0 extproc('xmlUCSIsCombiningDiacritica-
d lMarksforSymbols')
d code 10i 0 value
d xmlUCSIsCombiningHalfMarks...
d pr 10i 0 extproc('xmlUCSIsCombiningHalfMarks')
d code 10i 0 value
d xmlUCSIsCombiningMarksforSymbols...
d pr 10i 0 extproc(
d 'xmlUCSIsCombiningMarksforSymbols')
d code 10i 0 value
d xmlUCSIsControlPictures...
d pr 10i 0 extproc('xmlUCSIsControlPictures')
d code 10i 0 value
d xmlUCSIsCurrencySymbols...
d pr 10i 0 extproc('xmlUCSIsCurrencySymbols')
d code 10i 0 value
d xmlUCSIsCypriotSyllabary...
d pr 10i 0 extproc('xmlUCSIsCypriotSyllabary')
d code 10i 0 value
d xmlUCSIsCyrillic...
d pr 10i 0 extproc('xmlUCSIsCyrillic')
d code 10i 0 value
d xmlUCSIsCyrillicSupplement...
d pr 10i 0 extproc('xmlUCSIsCyrillicSupplement')
d code 10i 0 value
d xmlUCSIsDeseret...
d pr 10i 0 extproc('xmlUCSIsDeseret')
d code 10i 0 value
d xmlUCSIsDevanagari...
d pr 10i 0 extproc('xmlUCSIsDevanagari')
d code 10i 0 value
d xmlUCSIsDingbats...
d pr 10i 0 extproc('xmlUCSIsDingbats')
d code 10i 0 value
d xmlUCSIsEnclosedAlphanumerics...
d pr 10i 0 extproc(
d 'xmlUCSIsEnclosedAlphanumerics')
d code 10i 0 value
d xmlUCSIsEnclosedCJKLettersandMonths...
d pr 10i 0 extproc(
d 'xmlUCSIsEnclosedCJKLettersandMonths'
d )
d code 10i 0 value
d xmlUCSIsEthiopic...
d pr 10i 0 extproc('xmlUCSIsEthiopic')
d code 10i 0 value
d xmlUCSIsGeneralPunctuation...
d pr 10i 0 extproc('xmlUCSIsGeneralPunctuation')
d code 10i 0 value
d xmlUCSIsGeometricShapes...
d pr 10i 0 extproc('xmlUCSIsGeometricShapes')
d code 10i 0 value
d xmlUCSIsGeorgian...
d pr 10i 0 extproc('xmlUCSIsGeorgian')
d code 10i 0 value
d xmlUCSIsGothic pr 10i 0 extproc('xmlUCSIsGothic')
d code 10i 0 value
d xmlUCSIsGreek pr 10i 0 extproc('xmlUCSIsGreek')
d code 10i 0 value
d xmlUCSIsGreekExtended...
d pr 10i 0 extproc('xmlUCSIsGreekExtended')
d code 10i 0 value
d xmlUCSIsGreekandCoptic...
d pr 10i 0 extproc('xmlUCSIsGreekandCoptic')
d code 10i 0 value
d xmlUCSIsGujarati...
d pr 10i 0 extproc('xmlUCSIsGujarati')
d code 10i 0 value
d xmlUCSIsGurmukhi...
d pr 10i 0 extproc('xmlUCSIsGurmukhi')
d code 10i 0 value
d xmlUCSIsHalfwidthandFullwidthForms...
d pr 10i 0 extproc(
d 'xmlUCSIsHalfwidthandFullwidthForms')
d code 10i 0 value
d xmlUCSIsHangulCompatibilityJamo...
d pr 10i 0 extproc(
d 'xmlUCSIsHangulCompatibilityJamo')
d code 10i 0 value
d xmlUCSIsHangulJamo...
d pr 10i 0 extproc('xmlUCSIsHangulJamo')
d code 10i 0 value
d xmlUCSIsHangulSyllables...
d pr 10i 0 extproc('xmlUCSIsHangulSyllables')
d code 10i 0 value
d xmlUCSIsHanunoo...
d pr 10i 0 extproc('xmlUCSIsHanunoo')
d code 10i 0 value
d xmlUCSIsHebrew pr 10i 0 extproc('xmlUCSIsHebrew')
d code 10i 0 value
d xmlUCSIsHighPrivateUseSurrogates...
d pr 10i 0 extproc(
d 'xmlUCSIsHighPrivateUseSurrogates')
d code 10i 0 value
d xmlUCSIsHighSurrogates...
d pr 10i 0 extproc('xmlUCSIsHighSurrogates')
d code 10i 0 value
d xmlUCSIsHiragana...
d pr 10i 0 extproc('xmlUCSIsHiragana')
d code 10i 0 value
d xmlUCSIsIPAExtensions...
d pr 10i 0 extproc('xmlUCSIsIPAExtensions')
d code 10i 0 value
d xmlUCSIsIdeographicDescriptionCharacters...
d pr 10i 0 extproc('xmlUCSIsIdeographicDescript-
d ionCharacters')
d code 10i 0 value
d xmlUCSIsKanbun pr 10i 0 extproc('xmlUCSIsKanbun')
d code 10i 0 value
d xmlUCSIsKangxiRadicals...
d pr 10i 0 extproc('xmlUCSIsKangxiRadicals')
d code 10i 0 value
d xmlUCSIsKannada...
d pr 10i 0 extproc('xmlUCSIsKannada')
d code 10i 0 value
d xmlUCSIsKatakana...
d pr 10i 0 extproc('xmlUCSIsKatakana')
d code 10i 0 value
d xmlUCSIsKatakanaPhoneticExtensions...
d pr 10i 0 extproc(
d 'xmlUCSIsKatakanaPhoneticExtensions')
d code 10i 0 value
d xmlUCSIsKhmer pr 10i 0 extproc('xmlUCSIsKhmer')
d code 10i 0 value
d xmlUCSIsKhmerSymbols...
d pr 10i 0 extproc('xmlUCSIsKhmerSymbols')
d code 10i 0 value
d xmlUCSIsLao pr 10i 0 extproc('xmlUCSIsLao')
d code 10i 0 value
d xmlUCSIsLatin1Supplement...
d pr 10i 0 extproc('xmlUCSIsLatin1Supplement')
d code 10i 0 value
d xmlUCSIsLatinExtendedA...
d pr 10i 0 extproc('xmlUCSIsLatinExtendedA')
d code 10i 0 value
d xmlUCSIsLatinExtendedB...
d pr 10i 0 extproc('xmlUCSIsLatinExtendedB')
d code 10i 0 value
d xmlUCSIsLatinExtendedAdditional...
d pr 10i 0 extproc(
d 'xmlUCSIsLatinExtendedAdditional')
d code 10i 0 value
d xmlUCSIsLetterlikeSymbols...
d pr 10i 0 extproc('xmlUCSIsLetterlikeSymbols')
d code 10i 0 value
d xmlUCSIsLimbu pr 10i 0 extproc('xmlUCSIsLimbu')
d code 10i 0 value
d xmlUCSIsLinearBIdeograms...
d pr 10i 0 extproc('xmlUCSIsLinearBIdeograms')
d code 10i 0 value
d xmlUCSIsLinearBSyllabary...
d pr 10i 0 extproc('xmlUCSIsLinearBSyllabary')
d code 10i 0 value
d xmlUCSIsLowSurrogates...
d pr 10i 0 extproc('xmlUCSIsLowSurrogates')
d code 10i 0 value
d xmlUCSIsMalayalam...
d pr 10i 0 extproc('xmlUCSIsMalayalam')
d code 10i 0 value
d xmlUCSIsMathematicalAlphanumericSymbols...
d pr 10i 0 extproc('xmlUCSIsMathematicalAlphanu-
d mericSymbols')
d code 10i 0 value
d xmlUCSIsMathematicalOperators...
d pr 10i 0 extproc(
d 'xmlUCSIsMathematicalOperators')
d code 10i 0 value
d xmlUCSIsMiscellaneousMathematicalSymbolsA...
d pr 10i 0 extproc('xmlUCSIsMiscellaneousMathem-
d aticalSymbolsA')
d code 10i 0 value
d xmlUCSIsMiscellaneousMathematicalSymbolsB...
d pr 10i 0 extproc('xmlUCSIsMiscellaneousMathem-
d aticalSymbolsB')
d code 10i 0 value
d xmlUCSIsMiscellaneousSymbols...
d pr 10i 0 extproc(
d 'xmlUCSIsMiscellaneousSymbols')
d code 10i 0 value
d xmlUCSIsMiscellaneousSymbolsandArrows...
d pr 10i 0 extproc('xmlUCSIsMiscellaneousSymbol-
d sandArrows')
d code 10i 0 value
d xmlUCSIsMiscellaneousTechnical...
d pr 10i 0 extproc(
d 'xmlUCSIsMiscellaneousTechnical')
d code 10i 0 value
d xmlUCSIsMongolian...
d pr 10i 0 extproc('xmlUCSIsMongolian')
d code 10i 0 value
d xmlUCSIsMusicalSymbols...
d pr 10i 0 extproc('xmlUCSIsMusicalSymbols')
d code 10i 0 value
d xmlUCSIsMyanmar...
d pr 10i 0 extproc('xmlUCSIsMyanmar')
d code 10i 0 value
d xmlUCSIsNumberForms...
d pr 10i 0 extproc('xmlUCSIsNumberForms')
d code 10i 0 value
d xmlUCSIsOgham pr 10i 0 extproc('xmlUCSIsOgham')
d code 10i 0 value
d xmlUCSIsOldItalic...
d pr 10i 0 extproc('xmlUCSIsOldItalic')
d code 10i 0 value
d xmlUCSIsOpticalCharacterRecognition...
d pr 10i 0 extproc(
d 'xmlUCSIsOpticalCharacterRecognition'
d )
d code 10i 0 value
d xmlUCSIsOriya pr 10i 0 extproc('xmlUCSIsOriya')
d code 10i 0 value
d xmlUCSIsOsmanya...
d pr 10i 0 extproc('xmlUCSIsOsmanya')
d code 10i 0 value
d xmlUCSIsPhoneticExtensions...
d pr 10i 0 extproc('xmlUCSIsPhoneticExtensions')
d code 10i 0 value
d xmlUCSIsPrivateUse...
d pr 10i 0 extproc('xmlUCSIsPrivateUse')
d code 10i 0 value
d xmlUCSIsPrivateUseArea...
d pr 10i 0 extproc('xmlUCSIsPrivateUseArea')
d code 10i 0 value
d xmlUCSIsRunic pr 10i 0 extproc('xmlUCSIsRunic')
d code 10i 0 value
d xmlUCSIsShavian...
d pr 10i 0 extproc('xmlUCSIsShavian')
d code 10i 0 value
d xmlUCSIsSinhala...
d pr 10i 0 extproc('xmlUCSIsSinhala')
d code 10i 0 value
d xmlUCSIsSmallFormVariants...
d pr 10i 0 extproc('xmlUCSIsSmallFormVariants')
d code 10i 0 value
d xmlUCSIsSpacingModifierLetters...
d pr 10i 0 extproc(
d 'xmlUCSIsSpacingModifierLetters')
d code 10i 0 value
d xmlUCSIsSpecials...
d pr 10i 0 extproc('xmlUCSIsSpecials')
d code 10i 0 value
d xmlUCSIsSuperscriptsandSubscripts...
d pr 10i 0 extproc(
d 'xmlUCSIsSuperscriptsandSubscripts')
d code 10i 0 value
d xmlUCSIsSupplementalArrowsA...
d pr 10i 0 extproc(
d 'xmlUCSIsSupplementalArrowsA')
d code 10i 0 value
d xmlUCSIsSupplementalArrowsB...
d pr 10i 0 extproc(
d 'xmlUCSIsSupplementalArrowsB')
d code 10i 0 value
d xmlUCSIsSupplementalMathematicalOperators...
d pr 10i 0 extproc('xmlUCSIsSupplementalMathema-
d ticalOperators')
d code 10i 0 value
d xmlUCSIsSupplementaryPrivateUseAreaA...
d pr 10i 0 extproc('xmlUCSIsSupplementaryPrivat-
d eUseAreaA')
d code 10i 0 value
d xmlUCSIsSupplementaryPrivateUseAreaB...
d pr 10i 0 extproc('xmlUCSIsSupplementaryPrivat-
d eUseAreaB')
d code 10i 0 value
d xmlUCSIsSyriac pr 10i 0 extproc('xmlUCSIsSyriac')
d code 10i 0 value
d xmlUCSIsTagalog...
d pr 10i 0 extproc('xmlUCSIsTagalog')
d code 10i 0 value
d xmlUCSIsTagbanwa...
d pr 10i 0 extproc('xmlUCSIsTagbanwa')
d code 10i 0 value
d xmlUCSIsTags pr 10i 0 extproc('xmlUCSIsTags')
d code 10i 0 value
d xmlUCSIsTaiLe pr 10i 0 extproc('xmlUCSIsTaiLe')
d code 10i 0 value
d xmlUCSIsTaiXuanJingSymbols...
d pr 10i 0 extproc('xmlUCSIsTaiXuanJingSymbols')
d code 10i 0 value
d xmlUCSIsTamil pr 10i 0 extproc('xmlUCSIsTamil')
d code 10i 0 value
d xmlUCSIsTelugu pr 10i 0 extproc('xmlUCSIsTelugu')
d code 10i 0 value
d xmlUCSIsThaana pr 10i 0 extproc('xmlUCSIsThaana')
d code 10i 0 value
d xmlUCSIsThai pr 10i 0 extproc('xmlUCSIsThai')
d code 10i 0 value
d xmlUCSIsTibetan...
d pr 10i 0 extproc('xmlUCSIsTibetan')
d code 10i 0 value
d xmlUCSIsUgaritic...
d pr 10i 0 extproc('xmlUCSIsUgaritic')
d code 10i 0 value
d xmlUCSIsUnifiedCanadianAboriginalSyllabics...
d pr 10i 0 extproc('xmlUCSIsUnifiedCanadianAbor-
d iginalSyllabics')
d code 10i 0 value
d xmlUCSIsVariationSelectors...
d pr 10i 0 extproc('xmlUCSIsVariationSelectors')
d code 10i 0 value
d xmlUCSIsVariationSelectorsSupplement...
d pr 10i 0 extproc('xmlUCSIsVariationSelectorsS-
d upplement')
d code 10i 0 value
d xmlUCSIsYiRadicals...
d pr 10i 0 extproc('xmlUCSIsYiRadicals')
d code 10i 0 value
d xmlUCSIsYiSyllables...
d pr 10i 0 extproc('xmlUCSIsYiSyllables')
d code 10i 0 value
d xmlUCSIsYijingHexagramSymbols...
d pr 10i 0 extproc(
d 'xmlUCSIsYijingHexagramSymbols')
d code 10i 0 value
d xmlUCSIsBlock pr 10i 0 extproc('xmlUCSIsBlock')
d code 10i 0 value
d block * value options(*string) const char *
d xmlUCSIsCatC pr 10i 0 extproc('xmlUCSIsCatC')
d code 10i 0 value
d xmlUCSIsCatCc pr 10i 0 extproc('xmlUCSIsCatCc')
d code 10i 0 value
d xmlUCSIsCatCf pr 10i 0 extproc('xmlUCSIsCatCf')
d code 10i 0 value
d xmlUCSIsCatCo pr 10i 0 extproc('xmlUCSIsCatCo')
d code 10i 0 value
d xmlUCSIsCatCs pr 10i 0 extproc('xmlUCSIsCatCs')
d code 10i 0 value
d xmlUCSIsCatL pr 10i 0 extproc('xmlUCSIsCatL')
d code 10i 0 value
d xmlUCSIsCatLl pr 10i 0 extproc('xmlUCSIsCatLl')
d code 10i 0 value
d xmlUCSIsCatLm pr 10i 0 extproc('xmlUCSIsCatLm')
d code 10i 0 value
d xmlUCSIsCatLo pr 10i 0 extproc('xmlUCSIsCatLo')
d code 10i 0 value
d xmlUCSIsCatLt pr 10i 0 extproc('xmlUCSIsCatLt')
d code 10i 0 value
d xmlUCSIsCatLu pr 10i 0 extproc('xmlUCSIsCatLu')
d code 10i 0 value
d xmlUCSIsCatM pr 10i 0 extproc('xmlUCSIsCatM')
d code 10i 0 value
d xmlUCSIsCatMc pr 10i 0 extproc('xmlUCSIsCatMc')
d code 10i 0 value
d xmlUCSIsCatMe pr 10i 0 extproc('xmlUCSIsCatMe')
d code 10i 0 value
d xmlUCSIsCatMn pr 10i 0 extproc('xmlUCSIsCatMn')
d code 10i 0 value
d xmlUCSIsCatN pr 10i 0 extproc('xmlUCSIsCatN')
d code 10i 0 value
d xmlUCSIsCatNd pr 10i 0 extproc('xmlUCSIsCatNd')
d code 10i 0 value
d xmlUCSIsCatNl pr 10i 0 extproc('xmlUCSIsCatNl')
d code 10i 0 value
d xmlUCSIsCatNo pr 10i 0 extproc('xmlUCSIsCatNo')
d code 10i 0 value
d xmlUCSIsCatP pr 10i 0 extproc('xmlUCSIsCatP')
d code 10i 0 value
d xmlUCSIsCatPc pr 10i 0 extproc('xmlUCSIsCatPc')
d code 10i 0 value
d xmlUCSIsCatPd pr 10i 0 extproc('xmlUCSIsCatPd')
d code 10i 0 value
d xmlUCSIsCatPe pr 10i 0 extproc('xmlUCSIsCatPe')
d code 10i 0 value
d xmlUCSIsCatPf pr 10i 0 extproc('xmlUCSIsCatPf')
d code 10i 0 value
d xmlUCSIsCatPi pr 10i 0 extproc('xmlUCSIsCatPi')
d code 10i 0 value
d xmlUCSIsCatPo pr 10i 0 extproc('xmlUCSIsCatPo')
d code 10i 0 value
d xmlUCSIsCatPs pr 10i 0 extproc('xmlUCSIsCatPs')
d code 10i 0 value
d xmlUCSIsCatS pr 10i 0 extproc('xmlUCSIsCatS')
d code 10i 0 value
d xmlUCSIsCatSc pr 10i 0 extproc('xmlUCSIsCatSc')
d code 10i 0 value
d xmlUCSIsCatSk pr 10i 0 extproc('xmlUCSIsCatSk')
d code 10i 0 value
d xmlUCSIsCatSm pr 10i 0 extproc('xmlUCSIsCatSm')
d code 10i 0 value
d xmlUCSIsCatSo pr 10i 0 extproc('xmlUCSIsCatSo')
d code 10i 0 value
d xmlUCSIsCatZ pr 10i 0 extproc('xmlUCSIsCatZ')
d code 10i 0 value
d xmlUCSIsCatZl pr 10i 0 extproc('xmlUCSIsCatZl')
d code 10i 0 value
d xmlUCSIsCatZp pr 10i 0 extproc('xmlUCSIsCatZp')
d code 10i 0 value
d xmlUCSIsCatZs pr 10i 0 extproc('xmlUCSIsCatZs')
d code 10i 0 value
d xmlUCSIsCat pr 10i 0 extproc('xmlUCSIsCat')
d code 10i 0 value
d cat * value options(*string) const char *
/endif LIBXML_UNICODE_ENBLD
/endif XML_UNICODE_H__

View File

@@ -0,0 +1,352 @@
* Summary: compile-time version informations
* Description: compile-time version informations for the XML library
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_VERSION_H__)
/define XML_VERSION_H__
/include "libxmlrpg/xmlexports"
* use those to be sure nothing nasty will happen if
* your library and includes mismatch
d xmlCheckVersion...
d pr extproc('xmlCheckVersion')
d version 10i 0 value
* LIBXML_DOTTED_VERSION:
*
* the version string like "1.2.3"
d LIBXML_DOTTED_VERSION...
d c '@VERSION@'
* LIBXML_VERSION:
*
* the version number: 1.2.3 value is 10203
d LIBXML_VERSION c @LIBXML_VERSION_NUMBER@
* LIBXML_VERSION_STRING:
*
* the version number string, 1.2.3 value is "10203"
d LIBXML_VERSION_STRING...
d c '@LIBXML_VERSION_NUMBER@'
* LIBXML_VERSION_EXTRA:
*
* extra version information, used to show a CVS compilation
d LIBXML_VERSION_EXTRA...
d c '@LIBXML_VERSION_EXTRA@'
* For conditional compilation
/define DEFINED_1
/undefine DEFINED_0
/if defined(DEFINED_@WITH_TRIO@)
* WITH_TRIO:
*
* defined if the trio support need to be configured in
/define WITH_TRIO
/else
* WITHOUT_TRIO:
*
* defined if the trio support should not be configured in
/define WITHOUT_TRIO
/endif
* LIBXML_THREAD_ENABLED:
*
* Whether the thread support is configured in
/if defined(DEFINED_@WITH_THREADS@)
/define LIBXML_THREAD_ENABLED
/endif
* LIBXML_THREAD_ALLOC_ENABLED:
*
* Whether the allocation hooks are per-thread
/if defined(DEFINED_@WITH_THREAD_ALLOC@)
/define LIBXML_THREAD_ALLOC_ENABLED
/endif
* LIBXML_TREE_ENABLED:
*
* Whether the DOM like tree manipulation API support is configured in
/if defined(DEFINED_@WITH_TREE@)
/define LIBXML_TREE_ENABLED
/endif
* LIBXML_OUTPUT_ENABLED:
*
* Whether the serialization/saving support is configured in
/if defined(DEFINED_@WITH_OUTPUT@)
/define LIBXML_OUTPUT_ENABLED
/endif
* LIBXML_PUSH_ENABLED:
*
* Whether the push parsing interfaces are configured in
/if defined(DEFINED_@WITH_PUSH@)
/define LIBXML_PUSH_ENABLED
/endif
* LIBXML_READER_ENABLED:
*
* Whether the xmlReader parsing interface is configured in
/if defined(DEFINED_@WITH_READER@)
/define LIBXML_READER_ENABLED
/endif
* LIBXML_PATTERN_ENABLED:
*
* Whether the xmlPattern node selection interface is configured in
/if defined(DEFINED_@WITH_PATTERN@)
/define LIBXML_PATTERN_ENABLED
/endif
* LIBXML_WRITER_ENABLED:
*
* Whether the xmlWriter saving interface is configured in
/if defined(DEFINED_@WITH_WRITER@)
/define LIBXML_WRITER_ENABLED
/endif
* LIBXML_SAX1_ENABLED:
*
* Whether the older SAX1 interface is configured in
/if defined(DEFINED_@WITH_SAX1@)
/define LIBXML_SAX1_ENABLED
/endif
* LIBXML_FTP_ENABLED:
*
* Whether the FTP support is configured in
/if defined(DEFINED_@WITH_FTP@)
/define LIBXML_FTP_ENABLED
/endif
* LIBXML_HTTP_ENABLED:
*
* Whether the HTTP support is configured in
/if defined(DEFINED_@WITH_HTTP@)
/define LIBXML_HTTP_ENABLED
/endif
* LIBXML_VALID_ENABLED:
*
* Whether the DTD validation support is configured in
/if defined(DEFINED_@WITH_VALID@)
/define LIBXML_VALID_ENABLED
/endif
* LIBXML_HTML_ENABLED:
*
* Whether the HTML support is configured in
/if defined(DEFINED_@WITH_HTML@)
/define LIBXML_HTML_ENABLED
/endif
* LIBXML_LEGACY_ENABLED:
*
* Whether the deprecated APIs are compiled in for compatibility
/if defined(DEFINED_@WITH_LEGACY@)
/define LIBXML_LEGACY_ENABLED
/endif
* LIBXML_C14N_ENABLED:
*
* Whether the Canonicalization support is configured in
/if defined(DEFINED_@WITH_C14N@)
/define LIBXML_C14N_ENABLED
/endif
* LIBXML_CATALOG_ENABLED:
*
* Whether the Catalog support is configured in
/if defined(DEFINED_@WITH_CATALOG@)
/define LIBXML_CATALOG_ENABLED
/endif
* LIBXML_DOCB_ENABLED:
*
* Whether the SGML Docbook support is configured in
/if defined(DEFINED_@WITH_DOCB@)
/define LIBXML_DOCB_ENABLED
/endif
* LIBXML_XPATH_ENABLED:
*
* Whether XPath is configured in
/if defined(DEFINED_@WITH_XPATH@)
/define LIBXML_XPATH_ENABLED
/endif
* LIBXML_XPTR_ENABLED:
*
* Whether XPointer is configured in
/if defined(DEFINED_@WITH_XPTR@)
/define LIBXML_XPTR_ENABLED
/endif
* LIBXML_XINCLUDE_ENABLED:
*
* Whether XInclude is configured in
/if defined(DEFINED_@WITH_XINCLUDE@)
/define LIBXML_XINCLUDE_ENABLED
/endif
* LIBXML_ICONV_ENABLED:
*
* Whether iconv support is available
/if defined(DEFINED_@WITH_ICONV@)
/define LIBXML_ICONV_ENABLED
/endif
* LIBXML_ICU_ENABLED:
*
* Whether icu support is available
/if defined(DEFINED_@WITH_ICU@)
/define LIBXML_ICU_ENABLED
/endif
* LIBXML_ISO8859X_ENABLED:
*
* Whether ISO-8859-* support is made available in case iconv is not
/if defined(DEFINED_@WITH_ISO8859X@)
/define LIBXML_ISO8859X_ENABLED
/endif
* LIBXML_DEBUG_ENABLED:
*
* Whether Debugging module is configured in
/if defined(DEFINED_@WITH_DEBUG@)
/define LIBXML_DEBUG_ENABLED
/endif
* DEBUG_MEMORY_LOCATION:
*
* Whether the memory debugging is configured in
/if defined(DEFINED_@WITH_MEM_DEBUG@)
/define DEBUG_MEMORY_LOCATION
/endif
* LIBXML_DEBUG_RUNTIME:
*
* Whether the runtime debugging is configured in
/if defined(DEFINED_@WITH_RUN_DEBUG@)
/define LIBXML_DEBUG_RUNTIME
/endif
* LIBXML_UNICODE_ENABLED:
*
* Whether the Unicode related interfaces are compiled in
/if defined(DEFINED_@WITH_REGEXPS@)
/define LIBXML_UNICODE_ENABLED
/endif
* LIBXML_REGEXP_ENABLED:
*
* Whether the regular expressions interfaces are compiled in
/if defined(DEFINED_@WITH_REGEXPS@)
/define LIBXML_REGEXP_ENABLED
/endif
* LIBXML_AUTOMATA_ENABLED:
*
* Whether the automata interfaces are compiled in
/if defined(DEFINED_@WITH_REGEXPS@)
/define LIBXML_AUTOMATA_ENABLED
/endif
* LIBXML_EXPR_ENABLED:
*
* Whether the formal expressions interfaces are compiled in
/if defined(DEFINED_@WITH_SCHEMAS@)
/define LIBXML_EXPR_ENABLED
/endif
* LIBXML_SCHEMAS_ENABLED:
*
* Whether the Schemas validation interfaces are compiled in
/if defined(DEFINED_@WITH_SCHEMAS@)
/define LIBXML_SCHEMAS_ENABLED
/endif
* LIBXML_SCHEMATRON_ENABLED:
*
* Whether the Schematron validation interfaces are compiled in
/if defined(DEFINED_@WITH_SCHEMATRON@)
/define LIBXML_SCHEMATRON_ENABLED
/endif
* LIBXML_MODULES_ENABLED:
*
* Whether the module interfaces are compiled in
/if defined(DEFINED_@WITH_MODULES@)
/define LIBXML_MODULES_ENABLED
* LIBXML_MODULE_EXTENSION:
*
* the string suffix used by dynamic modules (usually shared libraries)
d LIBXML_MODULE_EXTENSION...
d c '.SRVPGM'
/endif
* LIBXML_ZLIB_ENABLED:
*
* Whether the Zlib support is compiled in
/if defined(DEFINED_@WITH_ZLIB@)
/define LIBXML_ZLIB_ENABLED
/endif
* LIBXML_LZMA_ENABLED:
*
* Whether the Lzma support is compiled in
/if defined(DEFINED_@WITH_LZMA@)
/define LIBXML_LZMA_ENABLED
/endif
/endif

View File

@@ -0,0 +1,725 @@
* Summary: text writing API for XML
* Description: text writing API for XML
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_XMLWRITER_H__)
/define XML_XMLWRITER_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_WRITER_ENABLED)
/include "libxmlrpg/xmlstdarg"
/include "libxmlrpg/xmlIO"
/include "libxmlrpg/list"
/include "libxmlrpg/xmlstring"
d xmlTextWriterPtr...
d s * based(######typedef######)
* Constructors & Destructor
d xmlNewTextWriter...
d pr extproc('xmlNewTextWriter')
d like(xmlTextWriterPtr)
d out value like(xmlOutputBufferPtr)
d xmlNewTextWriterFilename...
d pr extproc('xmlNewTextWriterFilename')
d like(xmlTextWriterPtr)
d uri * value options(*string) const char *
d compression 10i 0 value
d xmlNewTextWriterMemory...
d pr extproc('xmlNewTextWriterMemory')
d like(xmlTextWriterPtr)
d buf value like(xmlBufferPtr)
d compression 10i 0 value
d xmlNewTextWriterPushParser...
d pr extproc('xmlNewTextWriterPushParser')
d like(xmlTextWriterPtr)
d ctxt value like(xmlParserCtxtPtr)
d compression 10i 0 value
d xmlNewTextWriterDoc...
d pr extproc('xmlNewTextWriterDoc')
d like(xmlTextWriterPtr)
d doc like(xmlDocPtr)
d compression 10i 0 value
d xmlNewTextWriterTree...
d pr extproc('xmlNewTextWriterTree')
d like(xmlTextWriterPtr)
d doc value like(xmlDocPtr)
d node value like(xmlNodePtr)
d compression 10i 0 value
d xmlFreeTextWriter...
d pr extproc('xmlFreeTextWriter')
d writer value like(xmlTextWriterPtr)
* Functions
* Document
d xmlTextWriterStartDocument...
d pr 10i 0 extproc('xmlTextWriterStartDocument')
d writer value like(xmlTextWriterPtr)
d version * value options(*string) const char *
d encoding * value options(*string) const char *
d standalone * value options(*string) const char *
d xmlTextWriterEndDocument...
d pr 10i 0 extproc('xmlTextWriterEndDocument')
d writer value like(xmlTextWriterPtr)
* Comments
d xmlTextWriterStartComment...
d pr 10i 0 extproc('xmlTextWriterStartComment')
d writer value like(xmlTextWriterPtr)
d xmlTextWriterEndComment...
d pr 10i 0 extproc('xmlTextWriterEndComment')
d writer value like(xmlTextWriterPtr)
d xmlTextWriterWriteFormatComment...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatComment')
d writer value like(xmlTextWriterPtr)
d format * value options(*string: *nopass) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatComment...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatComment')
d writer value like(xmlTextWriterPtr)
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteComment...
d pr 10i 0 extproc('xmlTextWriterWriteComment')
d writer value like(xmlTextWriterPtr)
d content * value options(*string) const xmlChar *
* Elements
d xmlTextWriterStartElement...
d pr 10i 0 extproc('xmlTextWriterStartElement')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d xmlTextWriterStartElementNS...
d pr 10i 0 extproc(
d 'xmlTextWriterStartElementNS')
d writer value like(xmlTextWriterPtr)
d prefix * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d xmlTextWriterEndElement...
d pr 10i 0 extproc('xmlTextWriterEndElement')
d writer value like(xmlTextWriterPtr)
d xmlTextWriterFullEndElement...
d pr 10i 0 extproc(
d 'xmlTextWriterFullEndElement')
d writer value like(xmlTextWriterPtr)
* Elements conveniency functions
d xmlTextWriterWriteFormatElement...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatElement')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatElement...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatElement')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteElement...
d pr 10i 0 extproc('xmlTextWriterWriteElement')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
d xmlTextWriterWriteFormatElementNS...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatElementNS')
d writer value like(xmlTextWriterPtr)
d prefix * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatElementNS...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatElementNS')
d writer value like(xmlTextWriterPtr)
d prefix * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteElementNS...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteElementNS')
d writer value like(xmlTextWriterPtr)
d prefix * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
* Text
d xmlTextWriterWriteFormatRaw...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatRaw')
d writer value like(xmlTextWriterPtr)
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatRaw...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatRaw')
d writer value like(xmlTextWriterPtr)
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteRawLen...
d pr 10i 0 extproc('xmlTextWriterWriteRawLen')
d writer value like(xmlTextWriterPtr)
d content * value options(*string) const xmlChar *
d len 10i 0 value
d xmlTextWriterWriteRaw...
d pr 10i 0 extproc('xmlTextWriterWriteRaw')
d writer value like(xmlTextWriterPtr)
d content * value options(*string) const xmlChar *
d xmlTextWriterWriteFormatString...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatString')
d writer value like(xmlTextWriterPtr)
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatString...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatString')
d writer value like(xmlTextWriterPtr)
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteString...
d pr 10i 0 extproc('xmlTextWriterWriteString')
d writer value like(xmlTextWriterPtr)
d content * value options(*string) const xmlChar *
d xmlTextWriterWriteBase64...
d pr 10i 0 extproc('xmlTextWriterWriteBase64')
d writer value like(xmlTextWriterPtr)
d data * value options(*string) const char *
d start 10i 0 value
d len 10i 0 value
d xmlTextWriterWriteBinHex...
d pr 10i 0 extproc('xmlTextWriterWriteBinHex')
d writer value like(xmlTextWriterPtr)
d data * value options(*string) const char *
d start 10i 0 value
d len 10i 0 value
* Attributes
d xmlTextWriterStartAttribute...
d pr 10i 0 extproc(
d 'xmlTextWriterStartAttribute')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d xmlTextWriterStartAttributeNS...
d pr 10i 0 extproc(
d 'xmlTextWriterStartAttributeNS')
d writer value like(xmlTextWriterPtr)
d prefix * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d xmlTextWriterEndAttribute...
d pr 10i 0 extproc('xmlTextWriterEndAttribute')
d writer value like(xmlTextWriterPtr)
* Attributes conveniency functions
d xmlTextWriterWriteFormatAttribute...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatAttribute')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatAttribute...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatAttribute')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteAttribute...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteAttribute')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
d xmlTextWriterWriteFormatAttributeNS...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatAttributeNS'
d )
d writer value like(xmlTextWriterPtr)
d prefix * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatAttributeNS...
d pr 10i 0 extproc('xmlTextWriterWriteVFormatAt-
d tributeNS')
d writer value like(xmlTextWriterPtr)
d prefix * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteAttributeNS...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteAttributeNS')
d writer value like(xmlTextWriterPtr)
d prefix * value options(*string) const xmlChar *
d name * value options(*string) const xmlChar *
d namespaceURI * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
* PI's
d xmlTextWriterStartPI...
d pr 10i 0 extproc('xmlTextWriterStartPI')
d writer value like(xmlTextWriterPtr)
d target * value options(*string) const xmlChar *
d xmlTextWriterEndPI...
d pr 10i 0 extproc('xmlTextWriterEndPI')
d writer value like(xmlTextWriterPtr)
* PI conveniency functions
d xmlTextWriterWriteFormatPI...
d pr 10i 0 extproc('xmlTextWriterWriteFormatPI')
d writer value like(xmlTextWriterPtr)
d target * value options(*string) const xmlChar *
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatPI...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatPI')
d writer value like(xmlTextWriterPtr)
d target * value options(*string) const xmlChar *
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWritePI...
d pr 10i 0 extproc('xmlTextWriterWritePI')
d writer value like(xmlTextWriterPtr)
d target * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
* xmlTextWriterWriteProcessingInstruction:
*
* This macro maps to xmlTextWriterWritePI
d xmlTextWriterWriteProcessingInstruction...
d pr 10i 0 extproc('xmlTextWriterWritePI')
d writer value like(xmlTextWriterPtr)
d target * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
* CDATA
d xmlTextWriterStartCDATA...
d pr 10i 0 extproc('xmlTextWriterStartCDATA')
d writer value like(xmlTextWriterPtr)
d xmlTextWriterEndCDATA...
d pr 10i 0 extproc('xmlTextWriterEndCDATA')
d writer value like(xmlTextWriterPtr)
* CDATA conveniency functions
d xmlTextWriterWriteFormatCDATA...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatCDATA')
d writer value like(xmlTextWriterPtr)
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatCDATA...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatCDATA')
d writer value like(xmlTextWriterPtr)
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteCDATA...
d pr 10i 0 extproc('xmlTextWriterWriteCDATA')
d writer value like(xmlTextWriterPtr)
d content * value options(*string) const xmlChar *
* DTD
d xmlTextWriterStartDTD...
d pr 10i 0 extproc('xmlTextWriterStartDTD')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d pubid * value options(*string) const xmlChar *
d sysid * value options(*string) const xmlChar *
d xmlTextWriterEndDTD...
d pr 10i 0 extproc('xmlTextWriterEndDTD')
d writer value like(xmlTextWriterPtr)
* DTD conveniency functions
d xmlTextWriterWriteFormatDTD...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatDTD')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d pubid * value options(*string) const xmlChar *
d sysid * value options(*string) const xmlChar *
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatDTD...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatDTD')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d pubid * value options(*string) const xmlChar *
d sysid * value options(*string) const xmlChar *
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteDTD...
d pr 10i 0 extproc('xmlTextWriterWriteDTD')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d pubid * value options(*string) const xmlChar *
d sysid * value options(*string) const xmlChar *
d subset * value options(*string) const xmlChar *
* xmlTextWriterWriteDocType:
*
* this macro maps to xmlTextWriterWriteDTD
d xmlTextWriterWriteDocType...
d pr 10i 0 extproc('xmlTextWriterWriteDTD')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d pubid * value options(*string) const xmlChar *
d sysid * value options(*string) const xmlChar *
d subset * value options(*string) const xmlChar *
* DTD element definition
d xmlTextWriterStartDTDElement...
d pr 10i 0 extproc(
d 'xmlTextWriterStartDTDElement')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d xmlTextWriterEndDTDElement...
d pr 10i 0 extproc('xmlTextWriterEndDTDElement')
d writer value like(xmlTextWriterPtr)
* DTD element definition conveniency functions
d xmlTextWriterWriteFormatDTDElement...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatDTDElement')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatDTDElement...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatDTDElement'
d )
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteDTDElement...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteDTDElement')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
* DTD attribute list definition
d xmlTextWriterStartDTDAttlist...
d pr 10i 0 extproc(
d 'xmlTextWriterStartDTDAttlist')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d xmlTextWriterEndDTDAttlist...
d pr 10i 0 extproc('xmlTextWriterEndDTDAttlist')
d writer value like(xmlTextWriterPtr)
* DTD attribute list definition conveniency functions
d xmlTextWriterWriteFormatDTDAttlist...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteFormatDTDAttlist')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatDTDAttlist...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteVFormatDTDAttlist'
d )
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteDTDAttlist...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteDTDAttlist')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
* DTD entity definition
d xmlTextWriterStartDTDEntity...
d pr 10i 0 extproc(
d 'xmlTextWriterStartDTDEntity')
d writer value like(xmlTextWriterPtr)
d pe 10i 0 value
d name * value options(*string) const xmlChar *
d xmlTextWriterEndDTDEntity...
d pr 10i 0 extproc('xmlTextWriterEndDTDEntity')
d writer value like(xmlTextWriterPtr)
* DTD entity definition conveniency functions
d xmlTextWriterWriteFormatDTDInternalEntity...
d pr 10i 0 extproc('xmlTextWriterWriteFormatDTD-
d InternalEntity')
d writer value like(xmlTextWriterPtr)
d pe 10i 0 value
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d #vararg1 * value options(*string: *nopass) void *
d #vararg2 * value options(*string: *nopass) void *
d #vararg3 * value options(*string: *nopass) void *
d #vararg4 * value options(*string: *nopass) void *
d #vararg5 * value options(*string: *nopass) void *
d #vararg6 * value options(*string: *nopass) void *
d #vararg7 * value options(*string: *nopass) void *
d #vararg8 * value options(*string: *nopass) void *
d xmlTextWriterWriteVFormatDTDInternalEntity...
d pr 10i 0 extproc('xmlTextWriterWriteVFormatDT-
d DInternalEntity')
d writer value like(xmlTextWriterPtr)
d pe 10i 0 value
d name * value options(*string) const xmlChar *
d format * value options(*string) const char *
d argptr likeds(xmlVaList)
d xmlTextWriterWriteDTDInternalEntity...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteDTDInternalEntity'
d )
d writer value like(xmlTextWriterPtr)
d pe 10i 0 value
d name * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
d xmlTextWriterWriteDTDExternalEntity...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteDTDExternalEntity'
d )
d writer value like(xmlTextWriterPtr)
d pe 10i 0 value
d name * value options(*string) const xmlChar *
d pubid * value options(*string) const xmlChar *
d sysid * value options(*string) const xmlChar *
d ndataid * value options(*string) const xmlChar *
d xmlTextWriterWriteDTDExternalEntityContents...
d pr 10i 0 extproc('xmlTextWriterWriteDTDExtern-
d alEntityContents')
d writer value like(xmlTextWriterPtr)
d pubid * value options(*string) const xmlChar *
d sysid * value options(*string) const xmlChar *
d ndataid * value options(*string) const xmlChar *
d xmlTextWriterWriteDTDEntity...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteDTDEntity')
d writer value like(xmlTextWriterPtr)
d pe 10i 0 value
d name * value options(*string) const xmlChar *
d pubid * value options(*string) const xmlChar *
d sysid * value options(*string) const xmlChar *
d ndataid * value options(*string) const xmlChar *
d content * value options(*string) const xmlChar *
* DTD notation definition
d xmlTextWriterWriteDTDNotation...
d pr 10i 0 extproc(
d 'xmlTextWriterWriteDTDNotation')
d writer value like(xmlTextWriterPtr)
d name * value options(*string) const xmlChar *
d pubid * value options(*string) const xmlChar *
d sysid * value options(*string) const xmlChar *
* Indentation
d xmlTextWriterSetIndent...
d pr 10i 0 extproc('xmlTextWriterSetIndent')
d writer value like(xmlTextWriterPtr)
d indent 10i 0 value
d xmlTextWriterSetIndentString...
d pr 10i 0 extproc(
d 'xmlTextWriterSetIndentString')
d writer value like(xmlTextWriterPtr)
d str * value options(*string) const xmlChar *
d xmlTextWriterSetQuoteChar...
d pr 10i 0 extproc('xmlTextWriterSetQuoteChar')
d writer value like(xmlTextWriterPtr)
d quotechar value like(xmlChar)
* misc
d xmlTextWriterFlush...
d pr 10i 0 extproc('xmlTextWriterFlush')
d writer value like(xmlTextWriterPtr)
/endif LIBXML_WRITER_ENABLD
/endif XML_XMLWRITER_H__

631
os400/libxmlrpg/xpath.rpgle Normal file
View File

@@ -0,0 +1,631 @@
* Summary: XML Path Language implementation
* Description: API for the XML Path Language implementation
*
* XML Path Language implementation
* XPath is a language for addressing parts of an XML document,
* designed to be used by both XSLT and XPointer
* http://www.w3.org/TR/xpath
*
* Implements
* W3C Recommendation 16 November 1999
* http://www.w3.org/TR/1999/REC-xpath-19991116
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_XPATH_H__)
/define XML_XPATH_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_XPATH_ENABLED)
/include "libxmlrpg/xmlerror"
/include "libxmlrpg/tree"
/include "libxmlrpg/hash"
/endif LIBXML_XPATH_ENABLED
/if defined(LIBXML_XPATH_ENABLED)
d xmlXPathContextPtr...
d s * based(######typedef######)
d xmlXPathParserContextPtr...
d s * based(######typedef######)
* The set of XPath error codes.
d xmlXPathError s 10i 0 based(######typedef######) enum
d XPATH_EXPRESSION_OK...
d c 0
d XPATH_NUMBER_ERROR...
d c 1
d XPATH_UNFINISHED_LITERAL_ERROR...
d c 2
d XPATH_START_LITERAL_ERROR...
d c 3
d XPATH_VARIABLE_REF_ERROR...
d c 4
d XPATH_UNDEF_VARIABLE_ERROR...
d c 5
d XPATH_INVALID_PREDICATE_ERROR...
d c 6
d XPATH_EXPR_ERROR...
d c 7
d XPATH_UNCLOSED_ERROR...
d c 8
d XPATH_UNKNOWN_FUNC_ERROR...
d c 9
d XPATH_INVALID_OPERAND...
d c 10
d XPATH_INVALID_TYPE...
d c 11
d XPATH_INVALID_ARITY...
d c 12
d XPATH_INVALID_CTXT_SIZE...
d c 13
d XPATH_INVALID_CTXT_POSITION...
d c 14
d XPATH_MEMORY_ERROR...
d c 15
d XPTR_SYNTAX_ERROR...
d c 16
d XPTR_RESOURCE_ERROR...
d c 17
d XPTR_SUB_RESOURCE_ERROR...
d c 18
d XPATH_UNDEF_PREFIX_ERROR...
d c 19
d XPATH_ENCODING_ERROR...
d c 20
d XPATH_INVALID_CHAR_ERROR...
d c 21
d XPATH_INVALID_CTXT...
d c 22
d XPATH_STACK_ERROR...
d c 23
d XPATH_FORBID_VARIABLE_ERROR...
d c 24
* A node-set (an unordered collection of nodes without duplicates).
d xmlNodeSetPtr s * based(######typedef######)
d xmlNodeSet ds based(xmlNodeSetPtr)
d align qualified
d nodeNr 10i 0 Set node count
d nodeMax 10i 0 Max # nodes in set
d nodeTab * xmlNodePtr *
* An expression is evaluated to yield an object, which
* has one of the following four basic types:
* - node-set
* - boolean
* - number
* - string
*
* @@ XPointer will add more types !
d xmlXPathObjectType...
d s 10i 0 based(######typedef######) enum
d XPATH_UNDEFINED...
d c 0
d XPATH_NODESET c 1
d XPATH_BOOLEAN c 2
d XPATH_NUMBER c 3
d XPATH_STRING c 4
d XPATH_POINT c 5
d XPATH_RANGE c 6
d XPATH_LOCATIONSET...
d c 7
d XPATH_USERS c 8
d XPATH_XSLT_TREE... R/O XSLT value tree
d c 9
d xmlXPathObjectPtr...
d s * based(######typedef######)
d xmlXPathObject ds based(xmlXPathObjectPtr)
d align qualified
d type like(xmlXPathObjectType)
d nodesetval like(xmlNodeSetPtr)
d boolval 10i 0
d floatval 8f
d stringval * xmlChar *
d user * void *
d index 10i 0
d user2 * void *
d index2 10i 0
* xmlXPathConvertFunc:
* @obj: an XPath object
* @type: the number of the target type
*
* A conversion function is associated to a type and used to cast
* the new type to primitive values.
*
* Returns -1 in case of error, 0 otherwise
d xmlXPathConvertFunc...
d s * based(######typedef######)
d procptr
* Extra type: a name and a conversion function.
d xmlXPathTypePtr...
d s * based(######typedef######)
d xmlXPathType ds based(xmlXPathTypePtr)
d align qualified
d name * The type name
d func like(xmlXPathConvertFunc) Conversion function
* Extra variable: a name and a value.
d xmlXPathVariablePtr...
d s * based(######typedef######)
d xmlXPathVariable...
d ds based(xmlXPathVariablePtr)
d align qualified
d name * The variable name
d value like(xmlXPathObjectPtr) The value
* xmlXPathEvalFunc:
* @ctxt: an XPath parser context
* @nargs: the number of arguments passed to the function
*
* An XPath evaluation function, the parameters are on the XPath
* context stack.
d xmlXPathEvalFunc...
d s * based(######typedef######)
d procptr
* Extra function: a name and an evaluation function.
d xmlXPathFuncPtr...
d s * based(######typedef######)
d xmlXPathFunct ds based(xmlXPathFuncPtr)
d align qualified
d name * The function name
d func like(xmlXPathEvalFunc) Evaluation function
* xmlXPathAxisFunc:
* @ctxt: the XPath interpreter context
* @cur: the previous node being explored on that axis
*
* An axis traversal function. To traverse an axis, the engine calls
* the first time with cur == NULL and repeat until the function returns
* NULL indicating the end of the axis traversal.
*
* Returns the next node in that axis or NULL if at the end of the axis.
d xmlXPathAxisFunc...
d s * based(######typedef######)
d procptr
* Extra axis: a name and an axis function.
d xmlXPathAxisPtr...
d s * based(######typedef######)
d xmlXPathAxis ds based(xmlXPathAxisPtr)
d align qualified
d name * The axis name
d func like(xmlXPathAxisFunc) The search function
* xmlXPathFunction:
* @ctxt: the XPath interprestation context
* @nargs: the number of arguments
*
* An XPath function.
* The arguments (if any) are popped out from the context stack
* and the result is pushed on the stack.
d xmlXPathFunction...
d s * based(######typedef######)
d procptr
* Function and Variable Lookup.
* xmlXPathVariableLookupFunc:
* @ctxt: an XPath context
* @name: name of the variable
* @ns_uri: the namespace name hosting this variable
*
* Prototype for callbacks used to plug variable lookup in the XPath
* engine.
*
* Returns the XPath object value or NULL if not found.
d xmlXPathVariableLookupFunc...
d s * based(######typedef######)
d procptr
* xmlXPathFuncLookupFunc:
* @ctxt: an XPath context
* @name: name of the function
* @ns_uri: the namespace name hosting this function
*
* Prototype for callbacks used to plug function lookup in the XPath
* engine.
*
* Returns the XPath function or NULL if not found.
d xmlXPathFuncLookupFunc...
d s * based(######typedef######)
d procptr
* xmlXPathFlags:
* Flags for XPath engine compilation and runtime
* XML_XPATH_CHECKNS:
*
* check namespaces at compilation
d XML_XPATH_CHECKNS...
d c X'0001'
* XML_XPATH_NOVAR:
*
* forbid variables in expression
d XML_XPATH_NOVAR...
d c X'0002'
* xmlXPathContext:
*
* Expression evaluation occurs with respect to a context.
* he context consists of:
* - a node (the context node)
* - a node list (the context node list)
* - a set of variable bindings
* - a function library
* - the set of namespace declarations in scope for the expression
* Following the switch to hash tables, this need to be trimmed up at
* the next binary incompatible release.
* The node may be modified when the context is passed to libxml2
* for an XPath evaluation so you may need to initialize it again
* before the next call.
d xmlXPathContext...
d ds based(xmlXPathContextPtr)
d align qualified
d doc like(xmlDocPtr) Current document
d node like(xmlNodePtr) Current node
*
d nb_variables_unused... Unused (hash table)
d 10i 0
d max_variables_unused... Unused (hash table)
d 10i 0
d varHash like(xmlHashTablePtr) Defined variables
*
d nb_types 10i 0 # of defined types
d max_types 10i 0 Max number of types
d types like(xmlXPathTypePtr) Defined types array
*
d nb_funcs_unused... Unused (hash table)
d 10i 0
d max_funcs_unused... Unused (hash table)
d 10i 0
d funcHash like(xmlHashTablePtr) Defined functions
*
d nb_axis 10i 0 # of defined axis
d max_axis 10i 0 Max number of axis
d axis like(xmlXPathAxisPtr) Defined axis array
*
* the namespace nodes of the context node
*
d namespaces * xmlNsPtr *
d nsNr 10i 0 # scope namespaces
d user * procptr Function to free
*
* extra variables
*
d contextSize 10i 0 The context size
d proximityPosition...
d 10i 0
*
* extra stuff for XPointer
*
d xptr 10i 0 XPointer context ?
d here like(xmlNodePtr) For here()
d origin like(xmlNodePtr) For origin()
*
* the set of namespace declarations in scope for the expression
*
d nsHash like(xmlHashTablePtr) Namespace hashtable
d varLookupFunc like(xmlXPathVariableLookupFunc) Var lookup function
d varLookupData * void *
*
* Possibility to link in an extra item
*
d extra * void *
*
* The function name and URI when calling a function
*
d function * const xmlChar *
d functionURI * const xmlChar *
*
* function lookup function and data
*
d funcLookupFunc... Func lookup func
d like(xmlXPathVariableLookupFunc)
d funcLookupData... void *
d *
*
* temporary namespace lists kept for walking the namespace axis
*
d tmpNsList * xmlNsPtr *
d tmpNsNr 10i 0 # scope namespaces
*
* error reporting mechanism
*
d userData * void *
d error like(xmlStructuredErrorFunc) Error callback
d lastError like(xmlError) The last error
d debugNode like(xmlNodePtr) XSLT source node
*
* dictionary
*
d dict like(xmlDictPtr) Dictionary if any
*
d flags 10i 0 Compilation control
*
* Cache for reusal of XPath objects
*
d cache * void *
* The structure of a compiled expression form is not public.
d xmlXPathCompExprPtr...
d s * based(######typedef######)
* xmlXPathParserContext:
*
* An XPath parser context. It contains pure parsing informations,
* an xmlXPathContext, and the stack of objects.
d xmlXPathParserContext...
d ds based(xmlXPathParserContextPtr)
d align qualified
d cur * const xmlChar *
d base * const xmlChar *
*
d error 10i 0 Error code
*
d context like(xmlXPathContextPtr) Evaluation context
d value like(xmlXPathObjectPtr) The current value
d valueNr 10i 0 Value stack depth
d valueMax 10i 0 Max stack depth
d valueTab * xmlXPathObjectPtr *
*
d comp like(xmlXPathCompExprPtr) Precompiled expr.
d xptr 10i 0 XPointer expression?
d ancestor like(xmlNodePtr) To walk prec. axis
*
d valueFrame 10i 0 Limit stack pop
**************************************************************************
* *
* Public API *
* *
**************************************************************************
* Objects and Nodesets handling
d xmlXPathNAN s 8f import('xmlXPathNAN')
d xmlXPathPINF s 8f import('xmlXPathPINF')
d xmlXPathNINF s 8f import('xmlXPathNINF')
d xmlXPathFreeObject...
d pr extproc('xmlXPathFreeObject')
d obj value like(xmlXPathObjectPtr)
d xmlXPathNodeSetCreate...
d pr extproc('xmlXPathNodeSetCreate')
d like(xmlNodeSetPtr)
d val value like(xmlNodePtr)
d xmlXPathFreeNodeSetList...
d pr extproc('xmlXPathFreeNodeSetList')
d obj value like(xmlXPathObjectPtr)
d xmlXPathFreeNodeSet...
d pr extproc('xmlXPathFreeNodeSet')
d obj value like(xmlNodeSetPtr)
d xmlXPathObjectCopy...
d pr extproc('xmlXPathObjectCopy')
d like(xmlXPathObjectPtr)
d val value like(xmlXPathObjectPtr)
d xmlXPathCmpNodes...
d pr 10i 0 extproc('xmlXPathCmpNodes')
d node1 value like(xmlNodePtr)
d node2 value like(xmlNodePtr)
* Conversion functions to basic types.
d xmlXPathCastNumberToBoolean...
d pr 10i 0 extproc(
d 'xmlXPathCastNumberToBoolean')
d val 8f value
d xmlXPathCastStringToBoolean...
d pr 10i 0 extproc(
d 'xmlXPathCastStringToBoolean')
d val * value options(*string) const xmlChar *
d xmlXPathCastNodeSetToBoolean...
d pr 10i 0 extproc(
d 'xmlXPathCastNodeSetToBoolean')
d ns value like(xmlNodeSetPtr)
d xmlXPathCastToBoolean...
d pr 10i 0 extproc('xmlXPathCastToBoolean')
d val value like(xmlXPathObjectPtr)
d xmlXPathCastBooleanToNumber...
d pr extproc(
d 'xmlXPathCastBooleanToNumber')
d 8f
d val 10i 0 value
d xmlXPathCastStringToNumber...
d pr 8f extproc('xmlXPathCastStringToNumber')
d val * value options(*string) const xmlChar *
d xmlXPathCastNodeToNumber...
d pr 8f extproc('xmlXPathCastNodeToNumber')
d node value like(xmlNodePtr)
d xmlXPathCastNodeSetToNumber...
d pr 8f extproc(
d 'xmlXPathCastNodeSetToNumber')
d ns value like(xmlNodeSetPtr)
d xmlXPathCastToNumber...
d pr 8f extproc('xmlXPathCastToNumber')
d val value like(xmlXPathObjectPtr)
d xmlXPathCastBooleanToString...
d pr * extproc( xmlChar *
d 'xmlXPathCastBooleanToString')
d val 10i 0 value
d xmlXPathCastNumberToString...
d pr * extproc('xmlXPathCastNumberToString')xmlChar *
d val 8f value
d xmlXPathCastNodeToString...
d pr * extproc('xmlXPathCastNodeToString') xmlChar *
d node value like(xmlNodePtr)
d xmlXPathCastNodeSetToString...
d pr * extproc('xmlXPathCastNodeSetToString'xmlChar *
d )
d ns value like(xmlNodeSetPtr)
d xmlXPathCastToString...
d pr * extproc('xmlXPathCastToString') xmlChar *
d val value like(xmlXPathObjectPtr)
d xmlXPathConvertBoolean...
d pr extproc('xmlXPathConvertBoolean')
d like(xmlXPathObjectPtr)
d val value like(xmlXPathObjectPtr)
d xmlXPathConvertNumber...
d pr extproc('xmlXPathConvertNumber')
d like(xmlXPathObjectPtr)
d val value like(xmlXPathObjectPtr)
d xmlXPathConvertString...
d pr extproc('xmlXPathConvertString')
d like(xmlXPathObjectPtr)
d val value like(xmlXPathObjectPtr)
* Context handling.
d xmlXPathNewContext...
d pr extproc('xmlXPathNewContext')
d like(xmlXPathContextPtr)
d doc value like(xmlDocPtr)
d xmlXPathFreeContext...
d pr extproc('xmlXPathFreeContext')
d ctxt value like(xmlXPathContextPtr)
d xmlXPathContextSetCache...
d pr 10i 0 extproc('xmlXPathContextSetCache')
d ctxt value like(xmlXPathContextPtr)
d active 10i 0 value
d value 10i 0 value
d options 10i 0 value
* Evaluation functions.
d xmlXPathOrderDocElems...
d pr 20i 0 extproc('xmlXPathOrderDocElems')
d doc value like(xmlDocPtr)
d xmlXPathSetContextNode...
d pr 10i 0 extproc('xmlXPathSetContextNode')
d node value like(xmlNodePtr)
d ctx value like(xmlXPathContextPtr)
d xmlXPathNodeEval...
d pr extproc('xmlXPathNodeEval')
d like(xmlXPathObjectPtr)
d node value like(xmlNodePtr)
d str * value options(*string) const xmlChar *
d ctx value like(xmlXPathContextPtr)
d xmlXPathEval pr extproc('xmlXPathEval')
d like(xmlXPathObjectPtr)
d str * value options(*string) const xmlChar *
d ctx value like(xmlXPathContextPtr)
d xmlXPathEvalExpression...
d pr extproc('xmlXPathEvalExpression')
d like(xmlXPathObjectPtr)
d str * value options(*string) const xmlChar *
d ctxt value like(xmlXPathContextPtr)
d xmlXPathEvalPredicate...
d pr 10i 0 extproc('xmlXPathEvalPredicate')
d ctxt value like(xmlXPathContextPtr)
d res value like(xmlXPathObjectPtr)
* Separate compilation/evaluation entry points.
d xmlXPathCompile...
d pr extproc('xmlXPathCompile')
d like(xmlXPathCompExprPtr)
d str * value options(*string) const xmlChar *
d xmlXPathCtxtCompile...
d pr extproc('xmlXPathCtxtCompile')
d like(xmlXPathCompExprPtr)
d ctxt value like(xmlXPathContextPtr)
d str * value options(*string) const xmlChar *
d xmlXPathCompiledEval...
d pr extproc('xmlXPathCompiledEval')
d like(xmlXPathObjectPtr)
d comp value like(xmlXPathCompExprPtr)
d ctx value like(xmlXPathContextPtr)
d xmlXPathCompiledEvalToBoolean...
d pr 10i 0 extproc(
d 'xmlXPathCompiledEvalToBoolean')
d comp value like(xmlXPathCompExprPtr)
d ctxt value like(xmlXPathContextPtr)
d xmlXPathFreeCompExpr...
d pr extproc('xmlXPathFreeCompExpr')
d comp value like(xmlXPathCompExprPtr)
/endif LIBXML_XPATH_ENABLED
/undefine XML_TESTVAL
/if defined(LIBXML_XPATH_ENABLED)
/define XML_TESTVAL
/elseif defined(LIBXML_SCHEMAS_ENABLED)
/define XML_TESTVAL
/endif
/if defined(XML_TESTVAL)
d xmlXPathInit pr extproc('xmlXPathInit')
d xmlXPathIsNaN pr 10i 0 extproc('xmlXPathIsNaN')
d val 8f value
d xmlXPathIsInf pr 10i 0 extproc('xmlXPathIsInf')
d val 8f value
/undefine XML_TESTVAL
/endif
/endif XML_XPATH_H__

View File

@@ -0,0 +1,672 @@
* Summary: internal interfaces for XML Path Language implementation
* Description: internal interfaces for XML Path Language implementation
* used to build new modules on top of XPath like XPointer and
* XSLT
*
* Copy: See Copyright for the status of this software.
*
* Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_XPATH_INTERNALS_H__)
/define XML_XPATH_INTERNALS_H__
/include "libxmlrpg/xmlversion"
/include "libxmlrpg/xpath"
/if defined(LIBXML_XPATH_ENABLED)
************************************************************************
* *
* Helpers *
* *
************************************************************************
* Many of these macros may later turn into functions. They
* shouldn't be used in #ifdef's preprocessor instructions.
d xmlXPathPopBoolean...
d pr 10i 0 extproc('xmlXPathPopBoolean')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathPopNumber...
d pr 8f extproc('xmlXPathPopNumber')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathPopString...
d pr * extproc('xmlXPathPopString') xmlChar *
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathPopNodeSet...
d pr extproc('xmlXPathPopNodeSet')
d like(xmlNodeSetPtr)
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathPopExternal...
d pr * extproc('xmlXPathPopExternal') void *
d ctxt value like(xmlXPathParserContextPtr)
* Variable Lookup forwarding.
d xmlXPathRegisterVariableLookup...
d pr extproc(
d 'xmlXPathRegisterVariableLookup')
d ctxt value like(xmlXPathContextPtr)
d f value
d like(xmlXPathVariableLookupFunc)
d data * value void *
* Function Lookup forwarding.
d xmlXPathRegisterFuncLookup...
d pr extproc('xmlXPathRegisterFuncLookup')
d ctxt value like(xmlXPathContextPtr)
d f value like(xmlXPathFuncLookupFunc)
d funcCtxt * value void *
* Error reporting.
* Note this procedure is renamed in RPG to avoid character case clash with
* data type xmlXPathError.
d xmlXPathReportError...
d pr extproc('xmlXPatherror')
d ctxt value like(xmlXPathParserContextPtr)
d file * value options(*string) const char *
d line 10i 0 value
d no 10i 0 value
d xmlXPathErr pr extproc('xmlXPathErr')
d ctxt value like(xmlXPathParserContextPtr)
d error 10i 0 value
/if defined(LIBXML_DEBUG_ENABLED)
d xmlXPathDebugDumpObject...
d pr extproc('xmlXPathDebugDumpObject')
d output * value FILE *
d cur value like(xmlXPathObjectPtr)
d depth 10i 0 value
d xmlXPathDebugDumpCompExpr...
d pr extproc('xmlXPathDebugDumpCompExpr')
d output * value FILE *
d comp value like(xmlXPathCompExprPtr)
d depth 10i 0 value
/endif
* NodeSet handling.
d xmlXPathNodeSetContains...
d pr 10i 0 extproc('xmlXPathNodeSetContains')
d cur value like(xmlNodeSetPtr)
d val value like(xmlNodePtr)
d xmlXPathDifference...
d pr extproc('xmlXPathDifference')
d like(xmlNodeSetPtr)
d nodes1 value like(xmlNodeSetPtr)
d nodes2 value like(xmlNodeSetPtr)
d xmlXPathIntersection...
d pr extproc('xmlXPathIntersection')
d like(xmlNodeSetPtr)
d nodes1 value like(xmlNodeSetPtr)
d nodes2 value like(xmlNodeSetPtr)
d xmlXPathDistinctSorted...
d pr extproc('xmlXPathDistinctSorted')
d like(xmlNodeSetPtr)
d nodes value like(xmlNodeSetPtr)
d xmlXPathDistinct...
d pr extproc('xmlXPathDistinct')
d like(xmlNodeSetPtr)
d nodes value like(xmlNodeSetPtr)
d xmlXPathHasSameNodes...
d pr 10i 0 extproc('xmlXPathHasSameNodes')
d nodes1 value like(xmlNodeSetPtr)
d nodes2 value like(xmlNodeSetPtr)
d xmlXPathNodeLeadingSorted...
d pr extproc('xmlXPathNodeLeadingSorted')
d like(xmlNodeSetPtr)
d nodes value like(xmlNodeSetPtr)
d node value like(xmlNodePtr)
d xmlXPathLeadingSorted...
d pr extproc('xmlXPathLeadingSorted')
d like(xmlNodeSetPtr)
d nodes1 value like(xmlNodeSetPtr)
d nodes2 value like(xmlNodeSetPtr)
d xmlXPathNodeLeading...
d pr extproc('xmlXPathNodeLeading')
d like(xmlNodeSetPtr)
d nodes value like(xmlNodeSetPtr)
d node value like(xmlNodePtr)
d xmlXPathLeading...
d pr extproc('xmlXPathLeading')
d like(xmlNodeSetPtr)
d nodes1 value like(xmlNodeSetPtr)
d nodes2 value like(xmlNodeSetPtr)
d xmlXPathNodeTrailingSorted...
d pr extproc('xmlXPathNodeTrailingSorted')
d like(xmlNodeSetPtr)
d nodes value like(xmlNodeSetPtr)
d node value like(xmlNodePtr)
d xmlXPathTrailingSorted...
d pr extproc('xmlXPathTrailingSorted')
d like(xmlNodeSetPtr)
d nodes1 value like(xmlNodeSetPtr)
d nodes2 value like(xmlNodeSetPtr)
d xmlXPathNodeTrailing...
d pr extproc('xmlXPathNodeTrailing')
d like(xmlNodeSetPtr)
d nodes value like(xmlNodeSetPtr)
d node value like(xmlNodePtr)
d xmlXPathTrailing...
d pr extproc('xmlXPathTrailing')
d like(xmlNodeSetPtr)
d nodes1 value like(xmlNodeSetPtr)
d nodes2 value like(xmlNodeSetPtr)
* Extending a context.
d xmlXPathRegisterNs...
d pr 10i 0 extproc('xmlXPathRegisterNs')
d ctxt value like(xmlXPathContextPtr)
d prefix * value options(*string) const xmlChar *
d ns_uri * value options(*string) const xmlChar *
d xmlXPathNsLookup...
d pr * extproc('xmlXPathNsLookup') const xmlChar *
d ctxt value like(xmlXPathContextPtr)
d prefix * value options(*string) const xmlChar *
d xmlXPathRegisteredNsCleanup...
d pr extproc(
d 'xmlXPathRegisteredNsCleanup')
d ctxt value like(xmlXPathContextPtr)
d xmlXPathRegisterFunc...
d pr 10i 0 extproc('xmlXPathRegisterFunc')
d ctxt value like(xmlXPathContextPtr)
d name * value options(*string) const xmlChar *
d f value like(xmlXPathFunction)
d xmlXPathRegisterFuncNS...
d pr 10i 0 extproc('xmlXPathRegisterFuncNS')
d ctxt value like(xmlXPathContextPtr)
d name * value options(*string) const xmlChar *
d ns_uri * value options(*string) const xmlChar *
d f value like(xmlXPathFunction)
d xmlXPathRegisterVariable...
d pr 10i 0 extproc('xmlXPathRegisterVariable')
d ctxt value like(xmlXPathContextPtr)
d name * value options(*string) const xmlChar *
d value value like(xmlXPathObjectPtr)
d xmlXPathRegisterVariableNS...
d pr 10i 0 extproc('xmlXPathRegisterVariableNS')
d ctxt value like(xmlXPathContextPtr)
d name * value options(*string) const xmlChar *
d ns_uri * value options(*string) const xmlChar *
d value value like(xmlXPathObjectPtr)
d xmlXPathFunctionLookup...
d pr extproc('xmlXPathFunctionLookup')
d like(xmlXPathFunction)
d ctxt value like(xmlXPathContextPtr)
d name * value options(*string) const xmlChar *
d xmlXPathFunctionLookupNS...
d pr extproc('xmlXPathFunctionLookupNS')
d like(xmlXPathFunction)
d ctxt value like(xmlXPathContextPtr)
d name * value options(*string) const xmlChar *
d ns_uri * value options(*string) const xmlChar *
d xmlXPathRegisteredFuncsCleanup...
d pr extproc(
d 'xmlXPathRegisteredFuncsCleanup')
d ctxt value like(xmlXPathContextPtr)
d xmlXPathVariableLookup...
d pr extproc('xmlXPathVariableLookup')
d like(xmlXPathObjectPtr)
d ctxt value like(xmlXPathContextPtr)
d name * value options(*string) const xmlChar *
d xmlXPathVariableLookupNS...
d pr extproc('xmlXPathVariableLookupNS')
d like(xmlXPathObjectPtr)
d ctxt value like(xmlXPathContextPtr)
d name * value options(*string) const xmlChar *
d ns_uri * value options(*string) const xmlChar *
d xmlXPathRegisteredVariablesCleanup...
d pr extproc(
d 'xmlXPathRegisteredVariablesCleanup')
d ctxt value like(xmlXPathContextPtr)
* Utilities to extend XPath.
d xmlXPathNewParserContext...
d pr extproc('xmlXPathNewParserContext')
d like(xmlXPathParserContextPtr)
d str * value options(*string) const xmlChar *
d ctxt value like(xmlXPathContextPtr)
d xmlXPathFreeParserContext...
d pr extproc('xmlXPathFreeParserContext')
d ctxt value like(xmlXPathParserContextPtr)
* TODO: remap to xmlXPathValuePop and Push.
d valuePop pr extproc('valuePop')
d like(xmlXPathObjectPtr)
d ctxt value like(xmlXPathParserContextPtr)
d valuePush pr 10i 0 extproc('valuePush')
d ctxt value like(xmlXPathParserContextPtr)
d value value like(xmlXPathObjectPtr)
d xmlXPathNewString...
d pr extproc('xmlXPathNewString')
d like(xmlXPathObjectPtr)
d val * value options(*string) const xmlChar *
d xmlXPathNewCString...
d pr extproc('xmlXPathNewCString')
d like(xmlXPathObjectPtr)
d val * value options(*string) const char *
d xmlXPathWrapString...
d pr extproc('xmlXPathWrapString')
d like(xmlXPathObjectPtr)
d val * value options(*string) xmlChar *
d xmlXPathWrapCString...
d pr extproc('xmlXPathWrapCString')
d like(xmlXPathObjectPtr)
d val * value options(*string) char *
d xmlXPathNewFloat...
d pr extproc('xmlXPathNewFloat')
d like(xmlXPathObjectPtr)
d val 8f value
d xmlXPathNewBoolean...
d pr extproc('xmlXPathNewBoolean')
d like(xmlXPathObjectPtr)
d val 10i 0 value
d xmlXPathNewNodeSet...
d pr extproc('xmlXPathNewNodeSet')
d like(xmlXPathObjectPtr)
d val value like(xmlNodePtr)
d xmlXPathNewValueTree...
d pr extproc('xmlXPathNewValueTree')
d like(xmlXPathObjectPtr)
d val value like(xmlNodePtr)
d xmlXPathNodeSetAdd...
d pr 10i 0 extproc('xmlXPathNodeSetAdd')
d cur value like(xmlNodeSetPtr)
d val value like(xmlNodePtr)
d xmlXPathNodeSetAddUnique...
d pr 10i 0 extproc('xmlXPathNodeSetAddUnique')
d cur value like(xmlNodeSetPtr)
d val value like(xmlNodePtr)
d xmlXPathNodeSetAddNs...
d pr 10i 0 extproc('xmlXPathNodeSetAddNs')
d cur value like(xmlNodeSetPtr)
d node value like(xmlNodePtr)
d ns value like(xmlNsPtr)
d xmlXPathNodeSetSort...
d pr extproc('xmlXPathNodeSetSort')
d set value like(xmlNodeSetPtr)
d xmlXPathRoot pr extproc('xmlXPathRoot')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathEvalExpr...
d pr extproc('xmlXPathEvalExpr')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathParseName...
d pr * extproc('xmlXPathParseName') xmlChar *
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathParseNCName...
d pr * extproc('xmlXPathParseNCName') xmlChar *
d ctxt value like(xmlXPathParserContextPtr)
* Existing functions.
d xmlXPathStringEvalNumber...
d pr 8f extproc('xmlXPathStringEvalNumber')
d str * value options(*string) const xmlChar *
d xmlXPathEvaluatePredicateResult...
d pr 10i 0 extproc(
d 'xmlXPathEvaluatePredicateResult')
d ctxt value like(xmlXPathParserContextPtr)
d res value like(xmlXPathObjectPtr)
d xmlXPathRegisterAllFunctions...
d pr extproc(
d 'xmlXPathRegisterAllFunctions')
d ctxt value like(xmlXPathContextPtr)
d xmlXPathNodeSetMerge...
d pr extproc('xmlXPathNodeSetMerge')
d like(xmlNodeSetPtr)
d val1 value like(xmlNodeSetPtr)
d val2 value like(xmlNodeSetPtr)
d xmlXPathNodeSetDel...
d pr extproc('xmlXPathNodeSetDel')
d cur value like(xmlNodeSetPtr)
d val value like(xmlNodePtr)
d xmlXPathNodeSetRemove...
d pr extproc('xmlXPathNodeSetRemove')
d cur value like(xmlNodeSetPtr)
d val 10i 0 value
d xmlXPathNewNodeSetList...
d pr extproc('xmlXPathNewNodeSetList')
d like(xmlXPathObjectPtr)
d val value like(xmlNodeSetPtr)
d xmlXPathWrapNodeSet...
d pr extproc('xmlXPathWrapNodeSet')
d like(xmlXPathObjectPtr)
d val value like(xmlNodeSetPtr)
d xmlXPathWrapExternal...
d pr extproc('xmlXPathWrapExternal')
d like(xmlXPathObjectPtr)
d val * value void *
d xmlXPathEqualValues...
d pr 10i 0 extproc('xmlXPathEqualValues')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathNotEqualValues...
d pr 10i 0 extproc('xmlXPathNotEqualValues')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathCompareValues...
d pr 10i 0 extproc('xmlXPathCompareValues')
d ctxt value like(xmlXPathParserContextPtr)
d inf 10i 0 value
d strict 10i 0 value
d xmlXPathValueFlipSign...
d pr extproc('xmlXPathValueFlipSign')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathAddValues...
d pr extproc('xmlXPathAddValues')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathSubValues...
d pr extproc('xmlXPathSubValues')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathMultValues...
d pr extproc('xmlXPathMultValues')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathDivValues...
d pr extproc('xmlXPathDivValues')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathModValues...
d pr extproc('xmlXPathModValues')
d ctxt value like(xmlXPathParserContextPtr)
d xmlXPathIsNodeType...
d pr 10i 0 extproc('xmlXPathIsNodeType')
d name * value options(*string) const xmlChar *
* Some of the axis navigation routines.
d xmlXPathNextSelf...
d pr extproc('xmlXPathNextSelf')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextChild...
d pr extproc('xmlXPathNextChild')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextDescendant...
d pr extproc('xmlXPathNextDescendant')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextDescendantOrSelf...
d pr extproc(
d 'xmlXPathNextDescendantOrSelf')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextParent...
d pr extproc('xmlXPathNextParent')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextAncestorOrSelf...
d pr extproc('xmlXPathNextAncestorOrSelf')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextFollowingSibling...
d pr extproc(
d 'xmlXPathNextFollowingSibling')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextFollowing...
d pr extproc('xmlXPathNextFollowing')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextNamespace...
d pr extproc('xmlXPathNextNamespace')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextAttribute...
d pr extproc('xmlXPathNextAttribute')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextPreceding...
d pr extproc('xmlXPathNextPreceding')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextAncestor...
d pr extproc('xmlXPathNextAncestor')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
d xmlXPathNextPrecedingSibling...
d pr extproc(
d 'xmlXPathNextPrecedingSibling')
d like(xmlNodePtr)
d ctxt value like(xmlXPathParserContextPtr)
d cur value like(xmlNodePtr)
* The official core of XPath functions.
d xmlXPathLastFunction...
d pr extproc('xmlXPathLastFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathPositionFunction...
d pr extproc('xmlXPathPositionFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathCountFunction...
d pr extproc('xmlXPathCountFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathIdFunction...
d pr extproc('xmlXPathIdFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathLocalNameFunction...
d pr extproc('xmlXPathLocalNameFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathNamespaceURIFunction...
d pr extproc(
d 'xmlXPathNamespaceURIFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathStringFunction...
d pr extproc('xmlXPathStringFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathStringLengthFunction...
d pr extproc(
d 'xmlXPathStringLengthFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathConcatFunction...
d pr extproc('xmlXPathConcatFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathContainsFunction...
d pr extproc('xmlXPathContainsFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathStartsWithFunction...
d pr extproc('xmlXPathStartsWithFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathSubstringFunction...
d pr extproc('xmlXPathSubstringFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathSubstringBeforeFunction...
d pr extproc(
d 'xmlXPathSubstringBeforeFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathSubstringAfterFunction...
d pr extproc(
d 'xmlXPathSubstringAfterFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathNormalizeFunction...
d pr extproc('xmlXPathNormalizeFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathTranslateFunction...
d pr extproc('xmlXPathTranslateFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathNotFunction...
d pr extproc('xmlXPathNotFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathTrueFunction...
d pr extproc('xmlXPathTrueFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathFalseFunction...
d pr extproc('xmlXPathFalseFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathLangFunction...
d pr extproc('xmlXPathLangFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathNumberFunction...
d pr extproc('xmlXPathNumberFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathSumFunction...
d pr extproc('xmlXPathSumFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathFloorFunction...
d pr extproc('xmlXPathFloorFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathCeilingFunction...
d pr extproc('xmlXPathCeilingFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathRoundFunction...
d pr extproc('xmlXPathRoundFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
d xmlXPathBooleanFunction...
d pr extproc('xmlXPathBooleanFunction')
d ctxt value like(xmlXPathParserContextPtr)
d nargs 10i 0 value
* Really internal functions
d xmlXPathNodeSetFreeNs...
d pr extproc('xmlXPathNodeSetFreeNs')
d ns value like(xmlNsPtr)
/endif LIBXML_XPATH_ENABLED
/endif XPATH_INTERNALS_H__

View File

@@ -0,0 +1,157 @@
* 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 <pm@datasphere.ch>, DATASPHERE S.A.
/if not defined(XML_XPTR_H__)
/define XML_XPTR_H__
/include "libxmlrpg/xmlversion"
/if defined(LIBXML_XPTR_ENABLED)
/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 10i 0 # locations in set
d locMax 10i 0 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 10i 0 value
d end value like(xmlNodePtr)
d endindex 10i 0 value
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 10i 0 value
* 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 10i 0 value
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__