# The XSLT C library for GNOME ## Module keys from libxslt

API Menu
Main Menu Developer Menu API Menu ChangeLog
Related links
Mail archive XML libxml2 FTP Windows binaries Solaris binaries MacOsX binaries Bug Tracker XSLT with PHP Apache module Pascal bindings Xsldbg Debugger
API Indexes
Alphabetic Constructors Functions/Types Modules Symbols
implementation of the key mechanims. ## Table of Contents
    #define NODE_IS_KEYED
    int	xsltAddKey			(xsltStylesheetPtr style,
    					 const xmlChar * name,
    					 const xmlChar * nameURI,
    					 const xmlChar * match,
    					 const xmlChar * use,
    					 xmlNodePtr inst)
    void	xsltFreeDocumentKeys		(xsltDocumentPtr idoc)
    void	xsltFreeKeys			(xsltStylesheetPtr style)
    xmlNodeSetPtr	xsltGetKey		(xsltTransformContextPtr ctxt,
    					 const xmlChar * name,
    					 const xmlChar * nameURI,
    					 const xmlChar * value)
    void	xsltInitCtxtKeys		(xsltTransformContextPtr ctxt,
    					 xsltDocumentPtr idoc)
## Description ### Macro: NODE_IS_KEYED
    #define NODE_IS_KEYED
### Function: xsltAddKey
    int	xsltAddKey			(xsltStylesheetPtr style,
    					 const xmlChar * name,
    					 const xmlChar * nameURI,
    					 const xmlChar * match,
    					 const xmlChar * use,
    					 xmlNodePtr inst)
add a key definition to a stylesheet
`style`: | an XSLT stylesheet
`name`: | the key name or NULL
`nameURI`: | the name URI or NULL
`match`: | the match value
`use`: | the use value
`inst`: | the key instruction
`Returns`: | 0 in case of success, and -1 in case of failure.
### Function: xsltFreeDocumentKeys
    void	xsltFreeDocumentKeys		(xsltDocumentPtr idoc)
Free the keys associated to a document
`idoc`: |
### Function: xsltFreeKeys
    void	xsltFreeKeys			(xsltStylesheetPtr style)
Free up the memory used by XSLT keys in a stylesheet
`style`: | an XSLT stylesheet
### Function: xsltGetKey
    xmlNodeSetPtr	xsltGetKey		(xsltTransformContextPtr ctxt,
    					 const xmlChar * name,
    					 const xmlChar * nameURI,
    					 const xmlChar * value)
Looks up a key of the in current source doc (the document info on @ctxt->document). Computes the key if not already done for the current source doc.
`ctxt`: | an XSLT transformation context
`name`: | the key name or NULL
`nameURI`: | the name URI or NULL
`value`: | the key value to look for
`Returns`: | the nodeset resulting from the query or NULL
### Function: xsltInitCtxtKeys
    void	xsltInitCtxtKeys		(xsltTransformContextPtr ctxt,
    					 xsltDocumentPtr idoc)
Computes all the keys tables for the current input document. Should be done before global varibales are initialized. NOTE: Not used anymore in the refactored code.
`ctxt`: | an XSLT transformation context
`idoc`: | a document info
Daniel Veillard