00001
00002
00003
00004
00005
00006
00007
00008
00009
00018 #ifndef _LIBSGML_SGMLEXTENSIONXML_H
00019 #define _LIBSGML_SGMLEXTENSIONXML_H
00020
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024
00025 #include "DomDocument.h"
00026 #include "DomElement.h"
00027 #include "DomText.h"
00028 #include "DomComment.h"
00029
00030 typedef struct _sgml_extension_xml {
00031
00032 DOM_DOCUMENT *document;
00033 DOM_ELEMENT *currElement;
00034
00035 } SGML_EXTENSION_XML;
00036
00037 SGML_EXTENSION_XML *sgmlExtensionXmlNew(SGML_PARSER *parser);
00038 void sgmlExtensionXmlDestroy(SGML_PARSER *parser, SGML_EXTENSION_XML *ext);
00039
00040 void sgmlExtensionXmlInitialize(SGML_PARSER *parser, void *userContext);
00041 void sgmlExtensionXmlElementBegin(SGML_PARSER *parser, void *userContext, const char *elementName);
00042 void sgmlExtensionXmlElementEnd(SGML_PARSER *parser, void *userContext, const char *elementName);
00043 void sgmlExtensionXmlAttributeNew(SGML_PARSER *parser, void *userContext, const char *attributeName, const char *attributeValue);
00044 void sgmlExtensionXmlTextNew(SGML_PARSER *parser, void *userContext, const char *text);
00045 void sgmlExtensionXmlCommentNew(SGML_PARSER *parser, void *userContext, const char *comment);
00046 void sgmlExtensionXmlDeinitialize(SGML_PARSER *parser, void *userContext);
00047
00057 void sgmlExtensionXmlSetParam(SGML_PARSER *parser, void *extensionContext, unsigned long param, void *value);
00061 void sgmlExtensionXmlGetParam(SGML_PARSER *parser, void *extensionContext, unsigned long param, void *value);
00062
00066 DOM_DOCUMENT *sgmlExtensionXmlGetDocument(SGML_PARSER *parser);
00067
00072 #ifdef __cplusplus
00073 }
00074 #endif
00075
00076 #endif