您的位置:首页 > 其它

Jena 解析本体 实体,属性,属性值

2013-12-25 09:55 405 查看
在网上找了好多Api和方法,可以解析出实体,属性,但是都无法解析出本体中的属性值。后在网上看到本体本身保存的就是三元组,每个三元组可构成一个Statement,每个statement包括subject,predicate,Object,将其分别取出来就得到你想要的实体,属性,属性值了。方法如下:

StmtIterator iter;
Property predicate;
Resource subject;
Statement stmt;
RDFNode obj;
iter = ontModel.listStatements();

HashMap<String, String> stateMap = new HashMap<String, String>();
while (iter.hasNext()) {
stmt = iter.next();
subject = stmt.getSubject();
// 关键词
String key= subject.getURI().substring(
subject.getURI().indexOf("#") + 1);
predicate = stmt.getPredicate();
// 属性
String name = predicate.getLocalName();
obj = stmt.getObject();
// 属性值
String value= obj.toString();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息