Merge branch 'tizen_base' into tizen
[platform/upstream/libxslt.git] / libxslt / namespaces.h
1 /*
2  * Summary: interface for the XSLT namespace handling
3  * Description: set of function easing the processing and generation
4  *              of namespace nodes in XSLT.
5  *
6  * Copy: See Copyright for the status of this software.
7  *
8  * Author: Daniel Veillard
9  */
10
11 #ifndef __XML_XSLT_NAMESPACES_H__
12 #define __XML_XSLT_NAMESPACES_H__
13
14 #include <libxml/tree.h>
15 #include "xsltexports.h"
16
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20
21 /*
22  * Used within nsAliases hashtable when the default namespace is required
23  * but it's not been explicitly defined
24  */
25 /**
26  * UNDEFINED_DEFAULT_NS:
27  *
28  * Special value for undefined namespace, internal
29  */
30 #define UNDEFINED_DEFAULT_NS    (const xmlChar *) -1L
31
32 XSLTPUBFUN void XSLTCALL
33                 xsltNamespaceAlias      (xsltStylesheetPtr style,
34                                          xmlNodePtr node);
35 XSLTPUBFUN xmlNsPtr XSLTCALL
36                 xsltGetNamespace        (xsltTransformContextPtr ctxt,
37                                          xmlNodePtr cur,
38                                          xmlNsPtr ns,
39                                          xmlNodePtr out);
40 XSLTPUBFUN xmlNsPtr XSLTCALL
41                 xsltGetPlainNamespace   (xsltTransformContextPtr ctxt,
42                                          xmlNodePtr cur,
43                                          xmlNsPtr ns,
44                                          xmlNodePtr out);
45 XSLTPUBFUN xmlNsPtr XSLTCALL
46                 xsltGetSpecialNamespace (xsltTransformContextPtr ctxt,
47                                          xmlNodePtr cur,
48                                          const xmlChar *URI,
49                                          const xmlChar *prefix,
50                                          xmlNodePtr out);
51 XSLTPUBFUN xmlNsPtr XSLTCALL
52                 xsltCopyNamespace       (xsltTransformContextPtr ctxt,
53                                          xmlNodePtr elem,
54                                          xmlNsPtr ns);
55 XSLTPUBFUN xmlNsPtr XSLTCALL
56                 xsltCopyNamespaceList   (xsltTransformContextPtr ctxt,
57                                          xmlNodePtr node,
58                                          xmlNsPtr cur);
59 XSLTPUBFUN void XSLTCALL
60                 xsltFreeNamespaceAliasHashes
61                                         (xsltStylesheetPtr style);
62
63 #ifdef __cplusplus
64 }
65 #endif
66
67 #endif /* __XML_XSLT_NAMESPACES_H__ */
68