10 #ifndef __XML_XLINK_H__
11 #define __XML_XLINK_H__
13 #include <libxml/xmlversion.h>
14 #include <libxml/tree.h>
16 #ifdef LIBXML_XPTR_ENABLED
32 typedef xmlChar *xlinkHRef;
33 typedef xmlChar *xlinkRole;
34 typedef xmlChar *xlinkTitle;
40 XLINK_TYPE_EXTENDED_SET
51 XLINK_ACTUATE_NONE = 0,
53 XLINK_ACTUATE_ONREQUEST
64 typedef void (*xlinkNodeDetectFunc) (
void *ctx, xmlNodePtr node);
82 (*xlinkSimpleLinkFunk) (
void *ctx,
86 const xlinkTitle title);
107 (*xlinkExtendedLinkFunk)(
void *ctx,
110 const xlinkHRef *hrefs,
111 const xlinkRole *roles,
113 const xlinkRole *from,
116 xlinkActuate *actuate,
118 const xlinkTitle *titles,
119 const xmlChar **langs);
135 (*xlinkExtendedLinkSetFunk) (
void *ctx,
138 const xlinkHRef *hrefs,
139 const xlinkRole *roles,
141 const xlinkTitle *titles,
142 const xmlChar **langs);
150 typedef struct _xlinkHandler xlinkHandler;
151 typedef xlinkHandler *xlinkHandlerPtr;
152 struct _xlinkHandler {
153 xlinkSimpleLinkFunk simple;
154 xlinkExtendedLinkFunk extended;
155 xlinkExtendedLinkSetFunk set;
163 XMLPUBFUN xlinkNodeDetectFunc XMLCALL
164 xlinkGetDefaultDetect (
void);
165 XMLPUBFUN
void XMLCALL
166 xlinkSetDefaultDetect (xlinkNodeDetectFunc func);
171 XMLPUBFUN xlinkHandlerPtr XMLCALL
172 xlinkGetDefaultHandler (
void);
173 XMLPUBFUN
void XMLCALL
174 xlinkSetDefaultHandler (xlinkHandlerPtr handler);
179 XMLPUBFUN xlinkType XMLCALL
180 xlinkIsLink (xmlDocPtr doc,