有哪些选择,最好是在 Java 中?
我见过将 XPath 扩展到对象的JXPath 。还有别的事吗?
编辑:通过树查询语言,我的意思是一种可以创建匹配已组织成树的对象(通过任何属性)的表达式的语言。
编辑2:示例:
假设我有这些对象的树:
public interface Node {
String getName();
int getValue();
String getSomeOtherAttribute();
List<Node> getChildren();
Node getParent();
}
现在想象一下这些的层次结构。我正在寻找的是可以在这棵树中查询实例的东西。例如“给我所有名称为“bar”、值小于 100 且父节点为“foo”且父节点的父节点为“joe”的 Node 实例。所有这些都使用了简洁的语言。
正如我所说,JXPath是一种选择。寻找他人。我还没有找到。
顺便说一句,我认为 JXPath 查询看起来像“//joe/foo/bar[@value < 100]”(或类似的东西)
someroot
|
joe
/ | \
c d foo
/ \
f bar,99