1 | /* |
2 | * Summary: interface for the template processing |
3 | * Description: This set of routine encapsulates XPath calls |
4 | * and Attribute Value Templates evaluation. |
5 | * |
6 | * Copy: See Copyright for the status of this software. |
7 | * |
8 | * Author: Daniel Veillard |
9 | */ |
10 | |
11 | #ifndef __XML_XSLT_TEMPLATES_H__ |
12 | #define __XML_XSLT_TEMPLATES_H__ |
13 | |
14 | #include <libxml/xpath.h> |
15 | #include <libxml/xpathInternals.h> |
16 | #include "xsltexports.h" |
17 | #include "xsltInternals.h" |
18 | |
19 | #ifdef __cplusplus |
20 | extern "C" { |
21 | #endif |
22 | |
23 | XSLTPUBFUN int XSLTCALL |
24 | xsltEvalXPathPredicate (xsltTransformContextPtr ctxt, |
25 | xmlXPathCompExprPtr comp, |
26 | xmlNsPtr *nsList, |
27 | int nsNr); |
28 | XSLTPUBFUN xmlChar * XSLTCALL |
29 | xsltEvalTemplateString (xsltTransformContextPtr ctxt, |
30 | xmlNodePtr contextNode, |
31 | xmlNodePtr inst); |
32 | XSLTPUBFUN xmlChar * XSLTCALL |
33 | xsltEvalAttrValueTemplate (xsltTransformContextPtr ctxt, |
34 | xmlNodePtr node, |
35 | const xmlChar *name, |
36 | const xmlChar *ns); |
37 | XSLTPUBFUN const xmlChar * XSLTCALL |
38 | xsltEvalStaticAttrValueTemplate (xsltStylesheetPtr style, |
39 | xmlNodePtr node, |
40 | const xmlChar *name, |
41 | const xmlChar *ns, |
42 | int *found); |
43 | |
44 | /* TODO: this is obviously broken ... the namespaces should be passed too ! */ |
45 | XSLTPUBFUN xmlChar * XSLTCALL |
46 | xsltEvalXPathString (xsltTransformContextPtr ctxt, |
47 | xmlXPathCompExprPtr comp); |
48 | XSLTPUBFUN xmlChar * XSLTCALL |
49 | xsltEvalXPathStringNs (xsltTransformContextPtr ctxt, |
50 | xmlXPathCompExprPtr comp, |
51 | int nsNr, |
52 | xmlNsPtr *nsList); |
53 | |
54 | XSLTPUBFUN xmlNodePtr * XSLTCALL |
55 | xsltTemplateProcess (xsltTransformContextPtr ctxt, |
56 | xmlNodePtr node); |
57 | XSLTPUBFUN xmlAttrPtr XSLTCALL |
58 | xsltAttrListTemplateProcess (xsltTransformContextPtr ctxt, |
59 | xmlNodePtr target, |
60 | xmlAttrPtr cur); |
61 | XSLTPUBFUN xmlAttrPtr XSLTCALL |
62 | xsltAttrTemplateProcess (xsltTransformContextPtr ctxt, |
63 | xmlNodePtr target, |
64 | xmlAttrPtr attr); |
65 | XSLTPUBFUN xmlChar * XSLTCALL |
66 | xsltAttrTemplateValueProcess (xsltTransformContextPtr ctxt, |
67 | const xmlChar* attr); |
68 | XSLTPUBFUN xmlChar * XSLTCALL |
69 | xsltAttrTemplateValueProcessNode(xsltTransformContextPtr ctxt, |
70 | const xmlChar* str, |
71 | xmlNodePtr node); |
72 | #ifdef __cplusplus |
73 | } |
74 | #endif |
75 | |
76 | #endif /* __XML_XSLT_TEMPLATES_H__ */ |
77 | |
78 | |