- Home
- Download
- News
- Documentation

- FAQ
- Tutorial
- API reference
- Examples

- XML Digital Signature

- Online Verifier

- XML Encryption
- XML Canonicalization
- Reporting Bugs
- Mailing list
- Related
- Authors

XML Security Library Reference Manual
<<< Previous Page | Home | Up | Next Page >>>

# xmltree

## Name

xmltree --

## Synopsis

    #define     xmlSecNodeGetName               (node)
    const xmlChar* xmlSecGetNodeNsHref          (const xmlNodePtr cur);
    int         xmlSecCheckNodeName             (const xmlNodePtr cur,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);
    xmlNodePtr  xmlSecGetNextElementNode        (xmlNodePtr cur);
    xmlNodePtr  xmlSecFindChild                 (const xmlNodePtr parent,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);
    xmlNodePtr  xmlSecFindParent                (const xmlNodePtr cur,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);
    xmlNodePtr  xmlSecFindNode                  (const xmlNodePtr parent,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);
    xmlNodePtr  xmlSecAddChild                  (xmlNodePtr parent,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);
    xmlNodePtr  xmlSecAddNextSibling            (xmlNodePtr node,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);
    xmlNodePtr  xmlSecAddPrevSibling            (xmlNodePtr node,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);
    int         xmlSecReplaceNode               (xmlNodePtr node,
                                                 xmlNodePtr newNode);
    int         xmlSecReplaceContent            (xmlNodePtr node,
                                                 xmlNodePtr newNode);
    int         xmlSecReplaceNodeBuffer         (xmlNodePtr node,
                                                 const xmlSecByte *buffer,
                                                 xmlSecSize size);
    void        xmlSecAddIDs                    (xmlDocPtr doc,
                                                 xmlNodePtr cur,
                                                 const xmlChar **ids);
    xmlDocPtr   xmlSecCreateTree                (const xmlChar *rootNodeName,
                                                 const xmlChar *rootNodeNs);
    int         xmlSecIsEmptyNode               (xmlNodePtr node);
    int         xmlSecIsEmptyString             (const xmlChar *str);
    #define     xmlSecIsHex                     (c)
    #define     xmlSecGetHex                    (c)

## Description

## Details

### xmlSecNodeGetName()

    #define     xmlSecNodeGetName(node)

Macro. Returns node's name.

`node` : | the pointer to node.

### xmlSecGetNodeNsHref ()

    const xmlChar* xmlSecGetNodeNsHref          (const xmlNodePtr cur);

Get's node's namespace href.

`cur` : | the pointer to node.
Returns : | node's namespace href.

### xmlSecCheckNodeName ()

    int         xmlSecCheckNodeName             (const xmlNodePtr cur,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);

Checks that the node has a given name and a given namespace href.

`cur` : | the pointer to an XML node.
`name` : | the name,
`ns` : | the namespace href.
Returns : | 1 if the node matches or 0 otherwise.

### xmlSecGetNextElementNode ()

    xmlNodePtr  xmlSecGetNextElementNode        (xmlNodePtr cur);

Seraches for the next element node.

`cur` : | the pointer to an XML node.
Returns : | the pointer to next element node or NULL if it is not found.

### xmlSecFindChild ()

    xmlNodePtr  xmlSecFindChild                 (const xmlNodePtr parent,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);

Searches a direct child of the `parent` node having given name and namespace href.

`parent` : | the pointer to XML node.
`name` : | the name.
`ns` : | the namespace href (may be NULL).
Returns : | the pointer to the found node or NULL if an error occurs or node is not found.

### xmlSecFindParent ()

    xmlNodePtr  xmlSecFindParent                (const xmlNodePtr cur,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);

Searches the ancestors axis of the `cur` node for a node having given name and namespace href.

`cur` : | the pointer to an XML node.
`name` : | the name.
`ns` : | the namespace href (may be NULL).
Returns : | the pointer to the found node or NULL if an error occurs or node is not found.

### xmlSecFindNode ()

    xmlNodePtr  xmlSecFindNode                  (const xmlNodePtr parent,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);

Searches all children of the `parent` node having given name and namespace href.

`parent` : | the pointer to XML node.
`name` : | the name.
`ns` : | the namespace href (may be NULL).
Returns : | the pointer to the found node or NULL if an error occurs or node is not found.

### xmlSecAddChild ()

    xmlNodePtr  xmlSecAddChild                  (xmlNodePtr parent,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);

Adds a child to the node `parent` with given `name` and namespace `ns`.

`parent` : | the pointer to an XML node.
`name` : | the new node name.
`ns` : | the new node namespace.
Returns : | pointer to the new node or NULL if an error occurs.

### xmlSecAddNextSibling ()

    xmlNodePtr  xmlSecAddNextSibling            (xmlNodePtr node,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);

Adds next sibling to the node `node` with given `name` and namespace `ns`.

`node` : | the pointer to an XML node.
`name` : | the new node name.
`ns` : | the new node namespace.
Returns : | pointer to the new node or NULL if an error occurs.

### xmlSecAddPrevSibling ()

    xmlNodePtr  xmlSecAddPrevSibling            (xmlNodePtr node,
                                                 const xmlChar *name,
                                                 const xmlChar *ns);

Adds prev sibling to the node `node` with given `name` and namespace `ns`.

`node` : | the pointer to an XML node.
`name` : | the new node name.
`ns` : | the new node namespace.
Returns : | pointer to the new node or NULL if an error occurs.

### xmlSecReplaceNode ()

    int         xmlSecReplaceNode               (xmlNodePtr node,
                                                 xmlNodePtr newNode);

Swaps the `node` and `newNode` in the XML tree.

`node` : | the current node.
`newNode` : | the new node.
Returns : | 0 on success or a negative value if an error occurs.

### xmlSecReplaceContent ()

    int         xmlSecReplaceContent            (xmlNodePtr node,
                                                 xmlNodePtr newNode);

Swaps the content of `node` and `newNode`.

`node` : | the current node.
`newNode` : | the new node.
Returns : | 0 on success or a negative value if an error occurs.

### xmlSecReplaceNodeBuffer ()

    int         xmlSecReplaceNodeBuffer         (xmlNodePtr node,
                                                 const xmlSecByte *buffer,
                                                 xmlSecSize size);

Swaps the `node` and the parsed XML data from the `buffer` in the XML tree.

`node` : | the current node.
`buffer` : | the XML data.
`size` : | the XML data size.
Returns : | 0 on success or a negative value if an error occurs.

### xmlSecAddIDs ()

    void        xmlSecAddIDs                    (xmlDocPtr doc,
                                                 xmlNodePtr cur,
                                                 const xmlChar **ids);

Walks thru all children of the `cur` node and adds all attributes from the `ids` list to the `doc` document IDs attributes hash.

`doc` : | the pointer to an XML document.
`cur` : | the pointer to an XML node.
`ids` : | the pointer to a NULL terminated list of ID attributes.

### xmlSecCreateTree ()

    xmlDocPtr   xmlSecCreateTree                (const xmlChar *rootNodeName,
                                                 const xmlChar *rootNodeNs);

Creates a new XML tree with one root node `rootNodeName`.

`rootNodeName` : | the root node name.
`rootNodeNs` : | the root node namespace (otpional).
Returns : | pointer to the newly created tree or NULL if an error occurs.

### xmlSecIsEmptyNode ()

    int         xmlSecIsEmptyNode               (xmlNodePtr node);

Checks whethere the `node` is empty (i.e. has only whitespaces children).

`node` : | the node to check
Returns : | 1 if `node` is empty, 0 otherwise or a negative value if an error occurs.

### xmlSecIsEmptyString ()

    int         xmlSecIsEmptyString             (const xmlChar *str);

Checks whethere the `str` is empty (i.e. has only whitespaces children).

`str` : | the string to check
Returns : | 1 if `str` is empty, 0 otherwise or a negative value if an error occurs.

### xmlSecIsHex()

    #define     xmlSecIsHex(c)

Macro. Returns 1 if `c` is a hex digit or 0 other wise.

`c` : | the character.

### xmlSecGetHex()

    #define     xmlSecGetHex(c)

Macro. Returns the hex value of the `c`.

`c` : | the character,

<<< Previous Page | Home | Up | Next Page >>>
xmlsec | x509

Aleksey Sanin