It extends Jaxen to wrap around a given EClass. But unfortunately it loses all concept of attributes, so ns:root[@ns:name=’foo’] has to become ns:root[ns:name=’foo’].
Accessing types in Ecliptical XPath
If you are trying to access the type of an EMF node, you could expect something like this to work:
EMFXPath xpath = new EMFXPath("//iaml:children[contains(xsi:type, 'SyncWire')]"); xpath.addNamespace("iaml", ModelPackage.eNS_URI); xpath.addNamespace("xsi", "http://www.w3.org/2001/XMLSchema-instance"); return xpath.selectNodes(root);
EMFXPath xpath = new EMFXPath("//iaml:children[contains(eClass(), 'SyncWire')]");
This additional function is provided to Jaxen as ca.ecliptical.emf.internal.xpath.EClassFunction.