org.apache.xalan.transformer

Class KeyTable


public class KeyTable
extends java.lang.Object

Table of element keys, keyed by document node. An instance of this class is keyed by a Document node that should be matched with the root of the current context.

Constructor Summary

KeyTable(int doc, PrefixResolver nscontext, QName name, Vector keyDeclarations, XPathContext xctxt)
Build a keys table.

Method Summary

int
getDocKey()
Get the document root matching this key.
QName
getKeyTableName()
Get Key Name for this KeyTable
XNodeSet
getNodeSetDTMByKey(QName name, XMLString ref)
Given a valid element key, return the corresponding node list.

Constructor Details

KeyTable

public KeyTable(int doc,
                PrefixResolver nscontext,
                QName name,
                Vector keyDeclarations,
                XPathContext xctxt)
            throws TransformerException
Build a keys table.
Parameters:
doc - The owner document key.
nscontext - The stylesheet's namespace context.
name - The key name
keyDeclarations - The stylesheet's xsl:key declarations.

Method Details

getDocKey

public int getDocKey()
Get the document root matching this key.
Returns:
the document root matching this key

getKeyTableName

public QName getKeyTableName()
Get Key Name for this KeyTable
Returns:
Key name

getNodeSetDTMByKey

public XNodeSet getNodeSetDTMByKey(QName name,
                                   XMLString ref)
Given a valid element key, return the corresponding node list.
Parameters:
name - The name of the key, which must match the 'name' attribute on xsl:key.
ref - The value that must match the value found by the 'match' attribute on xsl:key.
Returns:
a set of nodes referenced by the key named name and the reference ref. If no node is referenced by this key, an empty node set is returned.

Copyright B) 2004 Apache XML Project. All Rights Reserved.