Kunal Chauhan
2012-05-04 09:46:50 UTC
Hi
How can I pass two filter in a transform method ??
suppose my document is like below.
<product>
<main-prod id='01'>Stationary </main-prod>
...
...
<sub-prod category='01'>Pen</sub-prod>
<sub-prod category='01'>Pencil</sub-prod>
</product>
Here is my transform method
path is set as : product/*:*
public Nodes transform(Element subtree) {
Nodes results = XQueryUtil.xquery(subtree, ".[@id]");
for (int i=0; i < results.size(); i++) {
Element ele = (Element)((Node) results.get(i));
String id = ele.getAttributeValue("id");
Nodes results1 = XQueryUtil.xquery(subtree, ".[@id='"+id+"' or
@category='"+id+"']");
for (int j=0; j < results1.size(); j++) {
System.out.println("result: " + " : " +
results1.get(j).toXML());
}
}
return NONE;
}
};
Expected result is : <main-prod id='01'>Stationary </main-prod>
<sub-prod category='01'>Pen</sub-prod>
<sub-prod category='01'>Pencil</sub-prod>
Thanks,
How can I pass two filter in a transform method ??
suppose my document is like below.
<product>
<main-prod id='01'>Stationary </main-prod>
...
...
<sub-prod category='01'>Pen</sub-prod>
<sub-prod category='01'>Pencil</sub-prod>
</product>
Here is my transform method
path is set as : product/*:*
public Nodes transform(Element subtree) {
Nodes results = XQueryUtil.xquery(subtree, ".[@id]");
for (int i=0; i < results.size(); i++) {
Element ele = (Element)((Node) results.get(i));
String id = ele.getAttributeValue("id");
Nodes results1 = XQueryUtil.xquery(subtree, ".[@id='"+id+"' or
@category='"+id+"']");
for (int j=0; j < results1.size(); j++) {
System.out.println("result: " + " : " +
results1.get(j).toXML());
}
}
return NONE;
}
};
Expected result is : <main-prod id='01'>Stationary </main-prod>
<sub-prod category='01'>Pen</sub-prod>
<sub-prod category='01'>Pencil</sub-prod>
Thanks,
--
*Kunal Chauhan*
mail4ck at gmail.com
[+918655517141]
[+919904983614]
*Kunal Chauhan*
mail4ck at gmail.com
[+918655517141]
[+919904983614]