|
|
|
|
|
libxml2 Reference Manual |
|---|
SAX2 - SAX2 parser interface used to build the DOM tree
those are the default SAX2 interfaces used by the library when building DOM tree.
Author(s): Daniel Veillard
void xmlSAX2EndElementNs (void * ctx,
const xmlChar * localname,
const xmlChar * prefix,
const xmlChar * URI); void xmlSAX2Reference (void * ctx,
const xmlChar * name); void xmlSAX2ElementDecl (void * ctx,
const xmlChar * name,
int type,
xmlElementContentPtr content); void xmlSAX2AttributeDecl (void * ctx,
const xmlChar * elem,
const xmlChar * fullname,
int type,
int def,
const xmlChar * defaultValue,
xmlEnumerationPtr tree); void xmlSAX2Comment (void * ctx,
const xmlChar * value); int xmlSAX2GetColumnNumber (void * ctx); xmlEntityPtr xmlSAX2GetEntity (void * ctx,
const xmlChar * name); void xmlSAX2UnparsedEntityDecl (void * ctx,
const xmlChar * name,
const xmlChar * publicId,
const xmlChar * systemId,
const xmlChar * notationName); void xmlSAX2InitDocbDefaultSAXHandler (xmlSAXHandler * hdlr); int xmlSAXVersion (xmlSAXHandler * hdlr,
int version); void xmlSAX2IgnorableWhitespace (void * ctx,
const xmlChar * ch,
int len); void xmlSAX2NotationDecl (void * ctx,
const xmlChar * name,
const xmlChar * publicId,
const xmlChar * systemId); void xmlSAX2StartDocument (void * ctx); void xmlSAX2EndElement (void * ctx,
const xmlChar * name); xmlParserInputPtr xmlSAX2ResolveEntity (void * ctx,
const xmlChar * publicId,
const xmlChar * systemId); void xmlSAX2ExternalSubset (void * ctx,
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID); const xmlChar * xmlSAX2GetPublicId (void * ctx); int xmlSAX2IsStandalone (void * ctx); void xmlSAX2EndDocument (void * ctx); void xmlSAX2ProcessingInstruction (void * ctx,
const xmlChar * target,
const xmlChar * data); void xmlSAX2InternalSubset (void * ctx,
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID); void xmlSAX2Characters (void * ctx,
const xmlChar * ch,
int len); int xmlSAXDefaultVersion (int version); void xmlSAX2StartElement (void * ctx,
const xmlChar * fullname,
const xmlChar ** atts); void xmlSAX2SetDocumentLocator (void * ctx,
xmlSAXLocatorPtr loc); void xmlSAX2CDataBlock (void * ctx,
const xmlChar * value,
int len); void xmlSAX2StartElementNs (void * ctx,
const xmlChar * localname,
const xmlChar * prefix,
const xmlChar * URI,
int nb_namespaces,
const xmlChar ** namespaces,
int nb_attributes,
int nb_defaulted,
const xmlChar ** attributes); int xmlSAX2HasExternalSubset (void * ctx); void htmlDefaultSAXHandlerInit (void); int xmlSAX2GetLineNumber (void * ctx); int xmlSAX2HasInternalSubset (void * ctx); void xmlSAX2InitHtmlDefaultSAXHandler (xmlSAXHandler * hdlr); void docbDefaultSAXHandlerInit (void); void xmlDefaultSAXHandlerInit (void); void xmlSAX2InitDefaultSAXHandler (xmlSAXHandler * hdlr,
int warning); xmlEntityPtr xmlSAX2GetParameterEntity (void * ctx,
const xmlChar * name); const xmlChar * xmlSAX2GetSystemId (void * ctx); void xmlSAX2EntityDecl (void * ctx,
const xmlChar * name,
int type,
const xmlChar * publicId,
const xmlChar * systemId,
xmlChar * content);
void docbDefaultSAXHandlerInit (void)
Initialize the default SAX handler
void htmlDefaultSAXHandlerInit (void)
Initialize the default SAX handler
void xmlSAX2AttributeDecl (void * ctx,
const xmlChar * elem,
const xmlChar * fullname,
int type,
int def,
const xmlChar * defaultValue,
xmlEnumerationPtr tree)
An attribute definition has been parsed
void xmlSAX2CDataBlock (void * ctx,
const xmlChar * value,
int len)
called when a pcdata block has been parsed
| ctx: | the user data (XML parser context) |
| value: | The pcdata content |
| len: | the block length |
void xmlSAX2Characters (void * ctx,
const xmlChar * ch,
int len)
receiving some chars from the parser.
void xmlSAX2Comment (void * ctx,
const xmlChar * value)
A xmlSAX2Comment has been parsed.
| ctx: | the user data (XML parser context) |
| value: | the xmlSAX2Comment content |
void xmlSAX2ElementDecl (void * ctx,
const xmlChar * name,
int type,
xmlElementContentPtr content)
An element definition has been parsed
| ctx: | the user data (XML parser context) |
| name: | the element name |
| type: | the element type |
| content: | the element value tree |
void xmlSAX2EndDocument (void * ctx)
called when the document end has been detected.
| ctx: | the user data (XML parser context) |
void xmlSAX2EndElement (void * ctx,
const xmlChar * name)
called when the end of an element has been detected.
| ctx: | the user data (XML parser context) |
| name: | The element name |
void xmlSAX2EndElementNs (void * ctx,
const xmlChar * localname,
const xmlChar * prefix,
const xmlChar * URI)
SAX2 callback when an element end has been detected by the parser. It provides the namespace informations for the element.
| ctx: | the user data (XML parser context) |
| localname: | the local name of the element |
| prefix: | the element namespace prefix if available |
| URI: | the element namespace name if available |
void xmlSAX2EntityDecl (void * ctx,
const xmlChar * name,
int type,
const xmlChar * publicId,
const xmlChar * systemId,
xmlChar * content)
An entity definition has been parsed
| ctx: | the user data (XML parser context) |
| name: | the entity name |
| type: | the entity type |
| publicId: | The public ID of the entity |
| systemId: | The system ID of the entity |
| content: | the entity value (without processing). |
void xmlSAX2ExternalSubset (void * ctx,
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID)
Callback on external subset declaration.
| ctx: | the user data (XML parser context) |
| name: | the root element name |
| ExternalID: | the external ID |
| SystemID: | the SYSTEM ID (e.g. filename or URL) |
int xmlSAX2GetColumnNumber (void * ctx)
Provide the column number of the current parsing point.
| ctx: | the user data (XML parser context) |
| Returns: | an int |
xmlEntityPtr xmlSAX2GetEntity (void * ctx,
const xmlChar * name)
Get an entity by name
| ctx: | the user data (XML parser context) |
| name: | The entity name |
| Returns: | the xmlEntityPtr if found. |
int xmlSAX2GetLineNumber (void * ctx)
Provide the line number of the current parsing point.
| ctx: | the user data (XML parser context) |
| Returns: | an int |
xmlEntityPtr xmlSAX2GetParameterEntity (void * ctx,
const xmlChar * name)
Get a parameter entity by name
| ctx: | the user data (XML parser context) |
| name: | The entity name |
| Returns: | the xmlEntityPtr if found. |
const xmlChar * xmlSAX2GetPublicId (void * ctx)
Provides the public ID e.g. "-//SGMLSOURCE//DTD DEMO//EN"
| ctx: | the user data (XML parser context) |
| Returns: | a xmlChar * |
const xmlChar * xmlSAX2GetSystemId (void * ctx)
Provides the system ID, basically URL or filename e.g. http://www.sgmlsource.com/dtds/memo.dtd
| ctx: | the user data (XML parser context) |
| Returns: | a xmlChar * |
int xmlSAX2HasExternalSubset (void * ctx)
Does this document has an external subset
| ctx: | the user data (XML parser context) |
| Returns: | 1 if true |
int xmlSAX2HasInternalSubset (void * ctx)
Does this document has an internal subset
| ctx: | the user data (XML parser context) |
| Returns: | 1 if true |
void xmlSAX2IgnorableWhitespace (void * ctx,
const xmlChar * ch,
int len)
receiving some ignorable whitespaces from the parser. UNUSED: by default the DOM building will use xmlSAX2Characters
void xmlSAX2InitDefaultSAXHandler (xmlSAXHandler * hdlr,
int warning)
Initialize the default XML SAX2 handler
| hdlr: | the SAX handler |
| warning: | flag if non-zero sets the handler warning procedure |
void xmlSAX2InitDocbDefaultSAXHandler (xmlSAXHandler * hdlr)
Initialize the default DocBook SAX2 handler
| hdlr: | the SAX handler |
void xmlSAX2InitHtmlDefaultSAXHandler (xmlSAXHandler * hdlr)
Initialize the default HTML SAX2 handler
| hdlr: | the SAX handler |
void xmlSAX2InternalSubset (void * ctx,
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID)
Callback on internal subset declaration.
| ctx: | the user data (XML parser context) |
| name: | the root element name |
| ExternalID: | the external ID |
| SystemID: | the SYSTEM ID (e.g. filename or URL) |
int xmlSAX2IsStandalone (void * ctx)
Is this document tagged standalone ?
| ctx: | the user data (XML parser context) |
| Returns: | 1 if true |
void xmlSAX2NotationDecl (void * ctx,
const xmlChar * name,
const xmlChar * publicId,
const xmlChar * systemId)
What to do when a notation declaration has been parsed.
| ctx: | the user data (XML parser context) |
| name: | The name of the notation |
| publicId: | The public ID of the entity |
| systemId: | The system ID of the entity |
void xmlSAX2ProcessingInstruction (void * ctx,
const xmlChar * target,
const xmlChar * data)
A processing instruction has been parsed.
| ctx: | the user data (XML parser context) |
| target: | the target name |
| data: | the PI data's |
void xmlSAX2Reference (void * ctx,
const xmlChar * name)
called when an entity xmlSAX2Reference is detected.
| ctx: | the user data (XML parser context) |
| name: | The entity name |
xmlParserInputPtr xmlSAX2ResolveEntity (void * ctx,
const xmlChar * publicId,
const xmlChar * systemId)
The entity loader, to control the loading of external entities, the application can either: - override this xmlSAX2ResolveEntity() callback in the SAX block - or better use the xmlSetExternalEntityLoader() function to set up it's own entity resolution routine
| ctx: | the user data (XML parser context) |
| publicId: | The public ID of the entity |
| systemId: | The system ID of the entity |
| Returns: | the xmlParserInputPtr if inlined or NULL for DOM behaviour. |
void xmlSAX2SetDocumentLocator (void * ctx,
xmlSAXLocatorPtr loc)
Receive the document locator at startup, actually xmlDefaultSAXLocator Everything is available on the context, so this is useless in our case.
| ctx: | the user data (XML parser context) |
| loc: | A SAX Locator |
void xmlSAX2StartDocument (void * ctx)
called when the document start being processed.
| ctx: | the user data (XML parser context) |
void xmlSAX2StartElement (void * ctx,
const xmlChar * fullname,
const xmlChar ** atts)
called when an opening tag has been processed.
| ctx: | the user data (XML parser context) |
| fullname: | The element name, including namespace prefix |
| atts: | An array of name/value attributes pairs, NULL terminated |
void xmlSAX2StartElementNs (void * ctx,
const xmlChar * localname,
const xmlChar * prefix,
const xmlChar * URI,
int nb_namespaces,
const xmlChar ** namespaces,
int nb_attributes,
int nb_defaulted,
const xmlChar ** attributes)
SAX2 callback when an element start has been detected by the parser. It provides the namespace informations for the element, as well as the new namespace declarations on the element.
| ctx: | the user data (XML parser context) |
| localname: | the local name of the element |
| prefix: | the element namespace prefix if available |
| URI: | the element namespace name if available |
| nb_namespaces: | number of namespace definitions on that node |
| namespaces: | pointer to the array of prefix/URI pairs namespace definitions |
| nb_attributes: | the number of attributes on that node |
| nb_defaulted: | the number of defaulted attributes. |
| attributes: | pointer to the array of (localname/prefix/URI/value/end) attribute values. |
void xmlSAX2UnparsedEntityDecl (void * ctx,
const xmlChar * name,
const xmlChar * publicId,
const xmlChar * systemId,
const xmlChar * notationName)
What to do when an unparsed entity declaration is parsed
| ctx: | the user data (XML parser context) |
| name: | The name of the entity |
| publicId: | The public ID of the entity |
| systemId: | The system ID of the entity |
| notationName: | the name of the notation |
int xmlSAXDefaultVersion (int version)
Set the default version of SAX used globally by the library. By default, during initialization the default is set to 2. Note that it is generally a better coding style to use xmlSAXVersion() to set up the version explicitly for a given parsing context.
| version: | the version, 1 or 2 |
| Returns: | the previous value in case of success and -1 in case of error. |
int xmlSAXVersion (xmlSAXHandler * hdlr,
int version)
Initialize the default XML SAX handler according to the version
| hdlr: | the SAX handler |
| version: | the version, 1 or 2 |
| Returns: | 0 in case of success and -1 in case of error. |