| Top |  |  |  |  | 
| int | (*xmlSecNodeSetWalkCallback) () | 
| xmlSecNodeSetPtr | xmlSecNodeSetCreate () | 
| void | xmlSecNodeSetDestroy () | 
| void | xmlSecNodeSetDocDestroy () | 
| int | xmlSecNodeSetContains () | 
| xmlSecNodeSetPtr | xmlSecNodeSetAdd () | 
| xmlSecNodeSetPtr | xmlSecNodeSetAddList () | 
| xmlSecNodeSetPtr | xmlSecNodeSetGetChildren () | 
| int | xmlSecNodeSetWalk () | 
| int | xmlSecNodeSetDumpTextNodes () | 
| void | xmlSecNodeSetDebugDump () | 
int (*xmlSecNodeSetWalkCallback) (xmlSecNodeSetPtr nset,xmlNodePtr cur,xmlNodePtr parent,void *data);
The callback function called once per each node in the nodes set.
| nset | the pointer to xmlSecNodeSet structure. | |
| cur | the pointer current XML node. | |
| parent | the pointer to the  | |
| data | the pointer to application specific data. | 
xmlSecNodeSetPtr xmlSecNodeSetCreate (xmlDocPtr doc,xmlNodeSetPtr nodes,xmlSecNodeSetType type);
Creates new nodes set. Caller is responsible for freeing returned object by calling xmlSecNodeSetDestroy function.
void
xmlSecNodeSetDestroy (xmlSecNodeSetPtr nset);
Destroys the nodes set created with xmlSecNodeSetCreate function.
void
xmlSecNodeSetDocDestroy (xmlSecNodeSetPtr nset);
Instructs node set to destroy nodes parent doc when node set is destroyed.
int xmlSecNodeSetContains (xmlSecNodeSetPtr nset,xmlNodePtr node,xmlNodePtr parent);
Checks whether the node
 is in the nodes set or not.
xmlSecNodeSetPtr xmlSecNodeSetAdd (xmlSecNodeSetPtr nset,xmlSecNodeSetPtr newNSet,xmlSecNodeSetOp op);
Adds newNSet
 to the nset
 using operation op
.
xmlSecNodeSetPtr xmlSecNodeSetAddList (xmlSecNodeSetPtr nset,xmlSecNodeSetPtr newNSet,xmlSecNodeSetOp op);
Adds newNSet
 to the nset
 as child using operation op
.
xmlSecNodeSetPtr xmlSecNodeSetGetChildren (xmlDocPtr doc,const xmlNodePtr parent,int withComments,int invert);
Creates a new nodes set that contains:
if withComments
 is not 0 and invert
 is 0:
all nodes in the parent
 subtree;
if withComments
 is 0 and invert
 is 0:
all nodes in the parent
 subtree except comment nodes;
if withComments
 is not 0 and invert
 not is 0:
all nodes in the doc
 except nodes in the parent
 subtree;
if withComments
 is 0 and invert
 is 0:
all nodes in the doc
 except nodes in the parent
 subtree
and comment nodes.
int xmlSecNodeSetWalk (xmlSecNodeSetPtr nset,xmlSecNodeSetWalkCallback walkFunc,void *data);
Calls the function walkFunc
 once per each node in the nodes set nset
.
If the walkFunc
 returns a negative value, then the walk procedure
is interrupted.
int xmlSecNodeSetDumpTextNodes (xmlSecNodeSetPtr nset,xmlOutputBufferPtr out);
Dumps content of all the text nodes from nset
 to out
.
void xmlSecNodeSetDebugDump (xmlSecNodeSetPtr nset,FILE *output);
Prints information about nset
 to the output
.
The basic nodes sets types.
| nodes set = nodes in the list. | ||
| nodes set = all document nodes minus nodes in the list. | ||
| nodes set = nodes in the list and all their subtress. | ||
| nodes set = nodes in the list and all their subtress but no comment nodes. | ||
| nodes set = all document nodes minus nodes in the list and all their subtress. | ||
| nodes set = all document nodes minus (nodes in the list and all their subtress plus all comment nodes). | ||
| nodes set = all nodes in the children list of nodes sets. | 
struct xmlSecNodeSet {
    xmlNodeSetPtr       nodes;
    xmlDocPtr           doc;
    int                 destroyDoc;
    xmlSecNodeSetType   type;
    xmlSecNodeSetOp     op;
    xmlSecNodeSetPtr    next;
    xmlSecNodeSetPtr    prev;
    xmlSecNodeSetPtr    children;
};
The enchanced nodes set.
| the nodes list. | ||
| the parent XML document. | ||
| the flag: if set to 1 then  | ||
| xmlSecNodeSetType  | the nodes set type. | |
| xmlSecNodeSetOp  | the operation type. | |
| xmlSecNodeSetPtr  | the next nodes set. | |
| xmlSecNodeSetPtr  | the previous nodes set. | |
| xmlSecNodeSetPtr  | the children list (valid only if type equal to xmlSecNodeSetList). |