aboutsummaryrefslogtreecommitdiff
Module c14n from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module c14n from libxml2

API Menu
API Indexes
Related links

the c14n modules provides a "Canonical XML" implementation

Table of Contents

Enum xmlC14NMode
int	xmlC14NDocDumpMemory		(xmlDocPtr doc, 
xmlNodeSetPtr nodes,
int mode,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlChar ** doc_txt_ptr)
int	xmlC14NDocSave			(xmlDocPtr doc, 
xmlNodeSetPtr nodes,
int mode,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
const char * filename,
int compression)
int	xmlC14NDocSaveTo		(xmlDocPtr doc, 
xmlNodeSetPtr nodes,
int mode,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlOutputBufferPtr buf)
int	xmlC14NExecute			(xmlDocPtr doc, 
xmlC14NIsVisibleCallback is_visible_callback,
void * user_data,
int mode,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlOutputBufferPtr buf)
Function type: xmlC14NIsVisibleCallback
int	xmlC14NIsVisibleCallback	(void * user_data, 
xmlNodePtr node,
xmlNodePtr parent)

Description

Enum xmlC14NMode

Enum xmlC14NMode {
    XML_C14N_1_0 = 0 : Original C14N 1.0 spec
    XML_C14N_EXCLUSIVE_1_0 = 1 : Exclusive C14N 1.0 spec
    XML_C14N_1_1 = 2 : C14N 1.1 spec
}

Function: xmlC14NDocDumpMemory

int	xmlC14NDocDumpMemory		(xmlDocPtr doc, 
xmlNodeSetPtr nodes,
int mode,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlChar ** doc_txt_ptr)

Dumps the canonized image of given XML document into memory. For details see "Canonical XML" (http://www.w3.org/TR/xml-c14n) or "Exclusive XML Canonicalization" (http://www.w3.org/TR/xml-exc-c14n)

doc:the XML document for canonization
nodes:the nodes set to be included in the canonized image or NULL if all document nodes should be included
mode:the c14n mode (see @xmlC14NMode)
inclusive_ns_prefixes:the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)
with_comments:include comments in the result (!=0) or not (==0)
doc_txt_ptr:the memory pointer for allocated canonical XML text; the caller of this functions is responsible for calling xmlFree() to free allocated memory
Returns:the number of bytes written on success or a negative value on fail

Function: xmlC14NDocSave

int	xmlC14NDocSave			(xmlDocPtr doc, 
xmlNodeSetPtr nodes,
int mode,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
const char * filename,
int compression)

Dumps the canonized image of given XML document into the file. For details see "Canonical XML" (http://www.w3.org/TR/xml-c14n) or "Exclusive XML Canonicalization" (http://www.w3.org/TR/xml-exc-c14n)

doc:the XML document for canonization
nodes:the nodes set to be included in the canonized image or NULL if all document nodes should be included
mode:the c14n mode (see @xmlC14NMode)
inclusive_ns_prefixes:the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)
with_comments:include comments in the result (!=0) or not (==0)
filename:the filename to store canonical XML image
compression:the compression level (zlib required): -1 - libxml default, 0 - uncompressed, >0 - compression level
Returns:the number of bytes written success or a negative value on fail

Function: xmlC14NDocSaveTo

int	xmlC14NDocSaveTo		(xmlDocPtr doc, 
xmlNodeSetPtr nodes,
int mode,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlOutputBufferPtr buf)

Dumps the canonized image of given XML document into the provided buffer. For details see "Canonical XML" (http://www.w3.org/TR/xml-c14n) or "Exclusive XML Canonicalization" (http://www.w3.org/TR/xml-exc-c14n)

doc:the XML document for canonization
nodes:the nodes set to be included in the canonized image or NULL if all document nodes should be included
mode:the c14n mode (see @xmlC14NMode)
inclusive_ns_prefixes:the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)
with_comments:include comments in the result (!=0) or not (==0)
buf:the output buffer to store canonical XML; this buffer MUST have encoder==NULL because C14N requires UTF-8 output
Returns:non-negative value on success or a negative value on fail

Function: xmlC14NExecute

int	xmlC14NExecute			(xmlDocPtr doc, 
xmlC14NIsVisibleCallback is_visible_callback,
void * user_data,
int mode,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlOutputBufferPtr buf)

Dumps the canonized image of given XML document into the provided buffer. For details see "Canonical XML" (http://www.w3.org/TR/xml-c14n) or "Exclusive XML Canonicalization" (http://www.w3.org/TR/xml-exc-c14n)

doc:the XML document for canonization
is_visible_callback:the function to use to determine is node visible or not
user_data:the first parameter for @is_visible_callback function (in most cases, it is nodes set)
mode:the c14n mode (see @xmlC14NMode)
inclusive_ns_prefixes:the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)
with_comments:include comments in the result (!=0) or not (==0)
buf:the output buffer to store canonical XML; this buffer MUST have encoder==NULL because C14N requires UTF-8 output
Returns:non-negative value on success or a negative value on fail

Function type: xmlC14NIsVisibleCallback

Function type: xmlC14NIsVisibleCallback
int	xmlC14NIsVisibleCallback	(void * user_data, 
xmlNodePtr node,
xmlNodePtr parent)

Signature for a C14N callback on visible nodes

user_data:user data
node:the current node
parent:the parent node
Returns:1 if the node should be included

Daniel Veillard