List 列出Jena中实例的对象属性

List 列出Jena中实例的对象属性,list,jena,object-properties,object-property,List,Jena,Object Properties,Object Property,如何列出Jena中与实例关联的所有对象属性 例如: 个人有一个名为“hasVehicle”的对象属性,该属性与类车辆关联合适的Jena方法是OntClass.listDeclaredProperties。有一些细微差别需要注意;耶拿人详细解释道 更新 好的,我已经看过你的代码示例,并阅读了你的描述,我恐怕不明白你想做什么。我所做的是重新编写您的代码示例,以便根据您在注释中的描述,它能够完成我猜您可能想要的操作: package test; import com.hp.hpl.jena.onto

如何列出Jena中与实例关联的所有对象属性

例如:
个人有一个名为“hasVehicle”的对象属性,该属性与类车辆关联

合适的Jena方法是
OntClass.listDeclaredProperties
。有一些细微差别需要注意;耶拿人详细解释道

更新

好的,我已经看过你的代码示例,并阅读了你的描述,我恐怕不明白你想做什么。我所做的是重新编写您的代码示例,以便根据您在注释中的描述,它能够完成我猜您可能想要的操作:

package test;

import com.hp.hpl.jena.ontology.*;
import com.hp.hpl.jena.rdf.model.*;
import com.hp.hpl.jena.util.FileManager;
import com.hp.hpl.jena.util.iterator.ExtendedIterator;

public class LeandroTest
{
    public static String NS = "http://www.owl-ontologies.com/TestProject.owl#";

    public static void main( String[] args ) {
        OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM, null );
        FileManager.get().readModel( m, "./src/main/resources/project-test.owl" );

        OntClass equipe = m.getOntClass( NS + "Equipe" );
        OntProperty nome = m.getOntProperty( NS + "nome" );

        for (ExtendedIterator<? extends OntResource> instances = equipe.listInstances(); instances.hasNext(); ) {
            OntResource equipeInstance = instances.next();
            System.out.println( "Equipe instance: " + equipeInstance.getProperty( nome ).getString() );

            // find out the resources that link to the instance
            for (StmtIterator stmts = m.listStatements( null, null, equipeInstance ); stmts.hasNext(); ) {
                Individual ind = stmts.next().getSubject().as( Individual.class );

                // show the properties of this individual
                System.out.println( "  " + ind.getURI() );
                for (StmtIterator j = ind.listProperties(); j.hasNext(); ) {
                    Statement s = j.next();
                    System.out.print( "    " + s.getPredicate().getLocalName() + " -> " );

                    if (s.getObject().isLiteral()) {
                        System.out.println( s.getLiteral().getLexicalForm() );
                    }
                    else {
                        System.out.println( s.getObject() );
                    }
                }
            }
        }
    }
}
一些一般性建议,特别是如果您有任何后续问题:

  • 问一些具体的问题,很难回答一个含糊不清的问题
  • 如果可能,请提供可运行的代码:您可以将我的代码放在下面,将其放入Eclipse之类的代码环境中并进行尝试
  • 提供问题中的代码和数据,而不是在pastebin上链接
  • 花点时间将代码和数据减少到显示问题所需的最小形式:您的Protégé文件超过600行

很抱歉,我是一个初学者。看看我的代码,现在我无法为我列出的任何实例获取对象属性,只列出数据类型属性及其值。你能给我看一个列表对象属性的代码吗?我只需要与中的当前实例关联的实例的名称。没有数据,我无法运行您的pastebin代码。此外,为了将来存档此问题(这是StackOverflow的目标之一),请将完整的可运行示例(包括数据)粘贴到问题中,而不是将其放在单独的粘贴箱中。Hi@Ian感谢您的回答,例如,我的存档ProjectTest.owl是look:我有一个资源“Etiene”通过名为“executor\u do\u teste”的属性与实例“Etapa Execucao 01”建立了关系,但我无法在代码中识别它。我很想念他们之间的联系。谢谢你,汉克斯·伊恩,这正是我想要的。我还有一个问题,如果我在数据库中有数据,并且希望将其转换为OWL实例,那么在Protégé上有一种自动方式,或者只创建一个类jena来转换?StackOverflow的目标之一是收集和整理编程问题的好答案,以供将来参考。因此,每一页应该只有一个问题。如果您有其他问题,请发布一个新的顶级问题。您可能会发现此其他答案作为背景有用:
Equipe instance: Erica
Equipe instance: Etiene
  http://www.owl-ontologies.com/TestProject.owl#EtapaExecucao_01
    EtapaExecucao_DataModificao -> 2010-03-29T10:54:05
    caso_de_teste -> http://www.owl-ontologies.com/TestProject.owl#CasoDeTeste_01
    EtapaExecucao_StatusTeste -> Passou
    EtapaExecucao_Reprodutibilidade -> Sempre
    type -> http://www.owl-ontologies.com/TestProject.owl#EtapaExecucao
    EtapaExecucao_VersaoDefeitoSurgiu -> Release ICAMMH_01.00
    EtapaExecucao_Severidade -> Minimo
    EtapaExecucao_VersaoDefeitoCorrigiu -> Release ICAMMH_02.00
    DataExecucao -> 2009-07-10T09:42:02
    EtapaExecucao_StatusDoDefeito -> Nao sera corrigido
    EtapaExecucao_DataSubmissao -> 2009-06-30T09:43:01
    Tipos_Fases -> http://www.owl-ontologies.com/TestProject.owl#FaseTesteExecucao
    EtapaExecucao_Resolucao -> Fechado
    executor_do_teste -> http://www.owl-ontologies.com/TestProject.owl#Etiene
    EtapaExecucao_PrioridadeCorrecao -> Normal
Equipe instance: Fabio
Equipe instance: Melis