e-xml-utils

e-xml-utils

Functions

Description

Functions

e_xml_initialize_in_main ()

void
e_xml_initialize_in_main (void);

Initializes libxml library global memory. This should be called in the main thread. The function does nothing, when it had been called already.

[skip]

Since: 3.28


e_xml_parse_file ()

xmlDoc *
e_xml_parse_file (const gchar *filename);

Reads a local XML file and parses the contents into an XML document structure. If the XML file cannot be read or its contents are malformed, the function returns NULL.

[skip]

Parameters

filename

path to an XML file

 

Returns

an XML document structure, or NULL.

[transfer full]


e_xml_save_file ()

gint
e_xml_save_file (const gchar *filename,
                 xmlDoc *doc);

Writes the given XML document structure to the file given by filename . If an error occurs while saving, the function returns -1 and sets errno.

Parameters

filename

path to a file to save to

 

doc

an XML document structure

 

Returns

0 on success, -1 on failure


e_xml_get_child_by_name ()

xmlNode *
e_xml_get_child_by_name (const xmlNode *parent,
                         const xmlChar *child_name);

Attempts to find a child element of parent named child_name . If no such child exists, the function returns NULL.

[skip]

Parameters

parent

an XML node structure

 

child_name

element name of a child node

 

Returns

a child XML node structure, or NULL.

[nullable]


e_xml_parse_data ()

xmlDoc *
e_xml_parse_data (gconstpointer data,
                  gsize length);

Parses XML data into an xmlDocPtr. Free returned pointer with xmlFreeDoc(), when no longer needed.

[skip]

Parameters

data

an XML data.

[array length=length][element-type guint8]

length

length of data, should be greated than zero

 

Returns

a new xmlDocPtr with parsed data , or NULL on error.

[nullable][transfer full]

Since: 3.26


e_xml_new_xpath_context_with_namespaces ()

xmlXPathContext *
e_xml_new_xpath_context_with_namespaces
                               (xmlDoc *doc,
                                ...);

Creates a new xmlXPathContextPtr on doc with preregistered namespaces. The namepsaces are pair of (prefix, href), terminated by NULL.

[skip]

Parameters

doc

an xmlDocPtr

 

...

NULL-terminated list of pairs (prefix, href) with namespaces

 

Returns

a new xmlXPathContextPtr. Free the returned pointer with xmlXPathFreeContext() when no longer needed.

[transfer full]

Since: 3.26


e_xml_xpath_context_register_namespaces ()

void
e_xml_xpath_context_register_namespaces
                               (xmlXPathContext *xpath_ctx,
                                const gchar *prefix,
                                const gchar *href,
                                ...);

Registers one or more additional namespaces. It's a caller's error to try to register a namespace with the same prefix again, unless the prefix uses the same namespace href.

[skip]

Parameters

xpath_ctx

an xmlXPathContextPtr

 

prefix

namespace prefix

 

href

namespace href

 

...

NULL-terminated list of pairs (prefix, href) with additional namespaces

 

Since: 3.26


e_xml_xpath_eval ()

xmlXPathObject *
e_xml_xpath_eval (xmlXPathContext *xpath_ctx,
                  const gchar *format,
                  ...);

Evaluates path specified by format and returns its xmlXPathObjectPtr, in case the path evaluates to a non-empty node set. See also e_xml_xpath_eval_as_string() which evaluates the path to string.

[skip]

Parameters

xpath_ctx

an xmlXPathContextPtr

 

format

printf-like format specifier of path to evaluate

 

...

arguments for the format

 

Returns

a new xmlXPathObjectPtr which references given path, or NULL if path cannot be found or when it evaluates to an empty nodeset. Free returned pointer with xmlXPathFreeObject(), when no longer needed.

[nullable][transfer full]

Since: 3.26


e_xml_xpath_eval_as_string ()

gchar *
e_xml_xpath_eval_as_string (xmlXPathContext *xpath_ctx,
                            const gchar *format,
                            ...);

Evaluates path specified by format and returns its result as string, in case the path evaluates to a non-empty node set. See also e_xml_xpath_eval() which evaluates the path to an xmlXPathObjectPtr.

[skip]

Parameters

xpath_ctx

an xmlXPathContextPtr

 

format

printf-like format specifier of path to evaluate

 

...

arguments for the format

 

Returns

a new string which contains value of the given path, or NULL if path cannot be found or when it evaluates to an empty nodeset. Free returned pointer with g_free(), when no longer needed.

[nullable][transfer full]

Since: 3.26


e_xml_xpath_eval_exists ()

gboolean
e_xml_xpath_eval_exists (xmlXPathContext *xpath_ctx,
                         const gchar *format,
                         ...);

Evaluates path specified by format and returns whether it exists.

[skip]

Parameters

xpath_ctx

an xmlXPathContextPtr

 

format

printf-like format specifier of path to evaluate

 

...

arguments for the format

 

Returns

TRUE, when the given XPath exists, FALSE otherwise.

Since: 3.26