java - 获取语​​义属性的字符串值

标签 java jena protege

在我的本体中,我有一个名为“festival”的类,它具有名为“CRISTMAS”的属性值。这是一个字符串类型的值。如何使用 Jena OWL API 获取该值?

最佳答案

我猜你在类中有一个实例,并且该实例的属性值是一个字符串。

如果是这样,请执行以下步骤:

  1. 创建 OntModel 并读取文件。

    OntModel ontModel = ModelFactory.createOntologyModel( OntModelSpec.XXX);
    ontModel.read(file:xxx);
    
  2. 获取类和属性:

    OntClass iClass =ontModel.getOntClass(className);
    OntProperty iProperty= ontModel.getOntProperty(propertyName);
    
  3. 获取实例并输出字符串:

    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());
    }   
    

关于java - 获取语​​义属性的字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3013115/

相关文章:

java - 组合框的 ActionListener 仅适用于声明后的第一列

jena - 我们可以在单个 TDB 目录中创建多个数据集吗

character-encoding - 如何让Protege 4.3正确显示汉字?

java - Java 中存在错误的合并排序

java - 用 C++ (libhdfs) 在 hdfs 中写入文件

java - 无法识别vscode中的导入javax.servlet

sparql - Virtuoso 中的属性函数

java - 在耶拿使用 ARQ (SPARQL) 进行 RDFS 推理

java - 使用 OWL-API 和 Hermit 打印披萨本体的父类(super class)

syntax - 如何定义rdfs :range target in a list of possibilities?