在我的本体中,我有一个名为“ festival
”的类,它有一个名为“”的属性值CRISTMAS
。这是一个字符串类型的值。如何使用 Jena OWL API 获得此值?
问问题
3504 次
2 回答
1
我猜你在类中有一个实例,这个实例的属性值是一个字符串。
如果是这样,请执行以下步骤:
创建 OntModel 并读取文件。
OntModel ontModel = ModelFactory.createOntologyModel( OntModelSpec.XXX); ontModel.read(file:xxx);
获取类和属性:
OntClass iClass =ontModel.getOntClass(className); OntProperty iProperty= ontModel.getOntProperty(propertyName);
获取实例并输出字符串:
for (ExtendedIterator<? extends OntResource> it= iClass.listInstances(true);it.hasNext();) { Individual ins = (Individual) it.next(); RDFNode iValue = ins.getPropertyValue(iProperty); System.out.println(iValue.toString()); }
于 2011-07-08T01:05:25.687 回答
0
将您的本体加载到
OntModel
. 我假设你已经这样做了。使用 的
getProperty(String uri)
方法OntModel
来检索属性。使用 的
getOntClass(String uri)
方法OntModel
来检索类。它返回一个OntClass
.使用 的
getPropertyValue(Property property)
方法OntClass
获取值。它返回一个RDFNode
.要将
RDFNode
转换为字符串,请使用 simpletoString()
或 domyRDFNode.asLiteral().getString()
。
于 2010-06-10T18:39:53.357 回答