net.sf.saxon.trans

Class KeyDefinitionSet

public class KeyDefinitionSet extends Object implements Serializable

A set of xsl:key definitions in a stylesheet that share the same name
Field Summary
booleanbackwardsCompatible
StringcollationName
List<KeyDefinition>keyDefinitions
StructuredQNamekeyName
intkeySetNumber
Constructor Summary
KeyDefinitionSet(StructuredQName keyName, int keySetNumber)
Create a key definition set for keys sharing a given name
Method Summary
voidaddKeyDefinition(KeyDefinition keyDef)
Add a key definition to this set of key definitions.
List<KeyDefinition>getKeyDefinitions()
Get the key definitions in this set
StructuredQNamegetKeyName()
Get the name of the key definitions in this set (they all share the same name)
intgetKeySetNumber()
Get the KeySet number.
booleanisBackwardsCompatible()
Determine if the keys are to be evaluated in backwards compatible mode

Field Detail

backwardsCompatible

boolean backwardsCompatible

collationName

String collationName

keyDefinitions

List<KeyDefinition> keyDefinitions

keyName

StructuredQName keyName

keySetNumber

int keySetNumber

Constructor Detail

KeyDefinitionSet

public KeyDefinitionSet(StructuredQName keyName, int keySetNumber)
Create a key definition set for keys sharing a given name

Parameters: keyName the name of the key definitions in this set keySetNumber a unique number identifying this key definition set

Method Detail

addKeyDefinition

public void addKeyDefinition(KeyDefinition keyDef)
Add a key definition to this set of key definitions. The caller is responsible for ensuring that all key definitions in a key definition set have the same name

Parameters: keyDef the key definition to be added

Throws: XPathException if the key definition uses a different collation from others in the set

getKeyDefinitions

public List<KeyDefinition> getKeyDefinitions()
Get the key definitions in this set

Returns: the key definitions in this set

getKeyName

public StructuredQName getKeyName()
Get the name of the key definitions in this set (they all share the same name)

Returns: the name of these key definitions

getKeySetNumber

public int getKeySetNumber()
Get the KeySet number. This uniquely identifies the KeyDefinitionSet within a KeyManager

Returns: the unique number

isBackwardsCompatible

public boolean isBackwardsCompatible()
Determine if the keys are to be evaluated in backwards compatible mode

Returns: true if backwards compatibility is in force for at least one of the keys in the set