00001 00011 #ifndef __XML_URI_H__ 00012 #define __XML_URI_H__ 00013 00014 #include <libxml/xmlversion.h> 00015 #include <libxml/tree.h> 00016 00017 #ifdef __cplusplus 00018 extern "C" { 00019 #endif 00020 00027 typedef struct _xmlURI xmlURI; 00028 typedef xmlURI *xmlURIPtr; 00029 struct _xmlURI { 00030 char *scheme; /* the URI scheme */ 00031 char *opaque; /* opaque part */ 00032 char *authority; /* the authority part */ 00033 char *server; /* the server part */ 00034 char *user; /* the user part */ 00035 int port; /* the port number */ 00036 char *path; /* the path string */ 00037 char *query; /* the query string */ 00038 char *fragment; /* the fragment identifier */ 00039 int cleanup; /* parsing potentially unclean URI */ 00040 }; 00041 00042 /* 00043 * This function is in tree.h: 00044 * xmlChar * xmlNodeGetBase (xmlDocPtr doc, 00045 * xmlNodePtr cur); 00046 */ 00047 XMLPUBFUN xmlURIPtr XMLCALL 00048 xmlCreateURI (void); 00049 XMLPUBFUN xmlChar * XMLCALL 00050 xmlBuildURI (const xmlChar *URI, 00051 const xmlChar *base); 00052 XMLPUBFUN xmlChar * XMLCALL 00053 xmlBuildRelativeURI (const xmlChar *URI, 00054 const xmlChar *base); 00055 XMLPUBFUN xmlURIPtr XMLCALL 00056 xmlParseURI (const char *str); 00057 XMLPUBFUN xmlURIPtr XMLCALL 00058 xmlParseURIRaw (const char *str, 00059 int raw); 00060 XMLPUBFUN int XMLCALL 00061 xmlParseURIReference (xmlURIPtr uri, 00062 const char *str); 00063 XMLPUBFUN xmlChar * XMLCALL 00064 xmlSaveUri (xmlURIPtr uri); 00065 XMLPUBFUN void XMLCALL 00066 xmlPrintURI (FILE *stream, 00067 xmlURIPtr uri); 00068 XMLPUBFUN xmlChar * XMLCALL 00069 xmlURIEscapeStr (const xmlChar *str, 00070 const xmlChar *list); 00071 XMLPUBFUN char * XMLCALL 00072 xmlURIUnescapeString (const char *str, 00073 int len, 00074 char *target); 00075 XMLPUBFUN int XMLCALL 00076 xmlNormalizeURIPath (char *path); 00077 XMLPUBFUN xmlChar * XMLCALL 00078 xmlURIEscape (const xmlChar *str); 00079 XMLPUBFUN void XMLCALL 00080 xmlFreeURI (xmlURIPtr uri); 00081 XMLPUBFUN xmlChar* XMLCALL 00082 xmlCanonicPath (const xmlChar *path); 00083 XMLPUBFUN xmlChar* XMLCALL 00084 xmlPathToURI (const xmlChar *path); 00085 00086 #ifdef __cplusplus 00087 } 00088 #endif 00089 #endif /* __XML_URI_H__ */