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 © 2006 Apache XML Project. All Rights Reserved.