private StringCollator collator;
public void prepareAttributes() throws XPathException {
AttributeCollection atts = getAttributeList();
String nameAtt = null; // collation name for use in expressions
String defaultAtt = null;
Properties props = new Properties();
for (int a=0; a<atts.getLength(); a++) {
int nc = atts.getNameCode(a);
String f = getNamePool().getClarkName(nc);
if (f.equals(StandardNames.NAME)) {
nameAtt = Whitespace.trim(atts.getValue(a));
} else if (f.equals(StandardNames.CLASS)) {
props.setProperty("class", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.STRENGTH)) {
props.setProperty("strength", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.DECOMPOSITION)) {
props.setProperty("decomposition", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.LANG)) {
props.setProperty("lang", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.RULES)) {
props.setProperty("rules", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.CASE_ORDER)) {
props.setProperty("case-order", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.ALPHANUMERIC)) {
props.setProperty("alphanumeric", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.IGNORE_CASE)) {
props.setProperty("ignore-case", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.IGNORE_MODIFIERS)) {
props.setProperty("ignore-modifiers", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.IGNORE_SYMBOLS)) {
props.setProperty("ignore-modifiers", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.IGNORE_WIDTH)) {
props.setProperty("ignore-width", Whitespace.trim(atts.getValue(a)) );
} else if (f.equals(StandardNames.DEFAULT)) {
defaultAtt = Whitespace.trim(atts.getValue(a)) ;
} else {
checkUnknownAttribute(nc);
}
}