~ubuntu-branches/ubuntu/hardy/openbabel/hardy

« back to all changes in this revision

Viewing changes to windows/libxml/c14n.h

  • Committer: Bazaar Package Importer
  • Author(s): Jonathan Riddell
  • Date: 2007-08-06 17:28:40 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20070806172840-22hoqb3ve230qav1
Tags: 2.1.1-0ubuntu1
* New upstream release
* New so version 2

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * Summary: Provide Canonical XML and Exclusive XML Canonicalization
3
 
 * Description: the c14n modules provides a
4
 
 *
5
 
 * "Canonical XML" implementation 
6
 
 * http://www.w3.org/TR/xml-c14n
7
 
 * 
8
 
 * and an
9
 
 *
10
 
 * "Exclusive XML Canonicalization" implementation
11
 
 * http://www.w3.org/TR/xml-exc-c14n
12
 
 
13
 
 * Copy: See Copyright for the status of this software.
14
 
 * 
15
 
 * Author: Aleksey Sanin <aleksey@aleksey.com>
16
 
 */
17
 
#ifndef __XML_C14N_H__
18
 
#define __XML_C14N_H__    
19
 
#ifdef LIBXML_C14N_ENABLED
20
 
#ifdef LIBXML_OUTPUT_ENABLED
21
 
 
22
 
#ifdef __cplusplus
23
 
extern "C" {
24
 
#endif /* __cplusplus */ 
25
 
 
26
 
#include <libxml/xmlversion.h>
27
 
#include <libxml/tree.h>
28
 
#include <libxml/xpath.h> 
29
 
 
30
 
/*
31
 
 * XML Canonicazation
32
 
 * http://www.w3.org/TR/xml-c14n
33
 
 *
34
 
 * Exclusive XML Canonicazation
35
 
 * http://www.w3.org/TR/xml-exc-c14n
36
 
 *
37
 
 * Canonical form of an XML document could be created if and only if
38
 
 *  a) default attributes (if any) are added to all nodes
39
 
 *  b) all character and parsed entity references are resolved
40
 
 * In order to achive this in libxml2 the document MUST be loaded with 
41
 
 * following global setings:
42
 
 *    
43
 
 *    xmlLoadExtDtdDefaultValue = XML_DETECT_IDS | XML_COMPLETE_ATTRS;
44
 
 *    xmlSubstituteEntitiesDefault(1);
45
 
 *
46
 
 * or corresponding parser context setting:
47
 
 *    xmlParserCtxtPtr ctxt;
48
 
 *    
49
 
 *    ... 
50
 
 *    ctxt->loadsubset = XML_DETECT_IDS | XML_COMPLETE_ATTRS;
51
 
 *    ctxt->replaceEntities = 1;
52
 
 *    ...
53
 
 */
54
 
 
55
 
 
56
 
XMLPUBFUN int XMLCALL           
57
 
                xmlC14NDocSaveTo        (xmlDocPtr doc,
58
 
                                         xmlNodeSetPtr nodes,
59
 
                                         int exclusive,
60
 
                                         xmlChar **inclusive_ns_prefixes,
61
 
                                         int with_comments, 
62
 
                                         xmlOutputBufferPtr buf);
63
 
 
64
 
XMLPUBFUN int XMLCALL
65
 
                xmlC14NDocDumpMemory    (xmlDocPtr doc,
66
 
                                         xmlNodeSetPtr nodes,
67
 
                                         int exclusive,
68
 
                                         xmlChar **inclusive_ns_prefixes,
69
 
                                         int with_comments, 
70
 
                                         xmlChar **doc_txt_ptr);
71
 
 
72
 
XMLPUBFUN int XMLCALL
73
 
                xmlC14NDocSave          (xmlDocPtr doc,
74
 
                                         xmlNodeSetPtr nodes,
75
 
                                         int exclusive,
76
 
                                         xmlChar **inclusive_ns_prefixes,
77
 
                                         int with_comments, 
78
 
                                         const char* filename,
79
 
                                         int compression);
80
 
 
81
 
 
82
 
/**
83
 
 * This is the core C14N function
84
 
 */
85
 
typedef int (*xmlC14NIsVisibleCallback) (void* user_data, 
86
 
                                         xmlNodePtr node,
87
 
                                         xmlNodePtr parent);
88
 
 
89
 
XMLPUBFUN int XMLCALL
90
 
                xmlC14NExecute          (xmlDocPtr doc,
91
 
                                         xmlC14NIsVisibleCallback is_visible_callback,
92
 
                                         void* user_data,                                
93
 
                                         int exclusive,
94
 
                                         xmlChar **inclusive_ns_prefixes,
95
 
                                         int with_comments, 
96
 
                                         xmlOutputBufferPtr buf);
97
 
 
98
 
#ifdef __cplusplus
99
 
}
100
 
#endif /* __cplusplus */
101
 
 
102
 
#endif /* LIBXML_OUTPUT_ENABLED */
103
 
#endif /* LIBXML_C14N_ENABLED */
104
 
#endif /* __XML_C14N_H__ */
105