protected void loadAttr() {
try {
XML.Attributes a = getAttributes();
+ // FIXME: questionable abuse of XML namespaces here
+ boolean xturi = "http://xt.ibex.org/".equals(getUri());
for(int i=0; i < a.attrSize(); i++) {
- if (!"http://xt.ibex.org/".equals(a.getUri(i))) continue;
+ if (!xturi && !"http://xt.ibex.org/".equals(a.getUri(i))) continue;
declare(a.getKey(i));
put(a.getKey(i), eval(a.getVal(i)));
}
XML.Attributes a = e.getAttributes();
for (int i=0; i < a.attrSize(); i++) {
- if ("if".equals(a.getKey(i)) &&
- "http://xt.ibex.org/".equals(a.getUri(i))) {
+ // FIXME: questionable abuse of XML namespaces here
+ if ("if".equals(a.getKey(i)) && (
+ "http://xt.ibex.org/".equals(e.getUri()) ||
+ "http://xt.ibex.org/".equals(a.getUri(i)))) {
e = new Template.IfWrap(e);
}
}
try {
Object varIf = get("if"); if (varIf != null) undeclare("if");
- if (varIf != null && !Boolean.getBoolean((String)varIf)) return;
+ if (varIf != null && !"true".equals(varIf)) return;
} catch (JSExn e) { throw new RuntimeException(e); }
wrapped.out(w);