Ich habe diese Eulen-Datei. #Indelivers ist eine Unterklasse von #ipInDelivers. Was ich herausfinden möchte ist, wie man die #isPartOfMibDef-Ressource dieser Klasse findet, in diesem Fall # IP-MIB.Zugriff auf Einschränkung von Eule-Superklasse mit Apache Jena
<owl:ObjectProperty rdf:about="#isPartOfMibDef"/>
<owl:ObjectProperty rdf:about="#hasSyntax"/>
<owl:Class rdf:about="#Counter32">
<rdfs:subClassOf rdf:resource="#SYNTAX"/>
</owl:Class>
<owl:Class rdf:about="&owl;Thing"/>
<owl:Class rdf:about="#mibObjects">
<rdfs:subClassOf rdf:resource="&owl;Thing"/>
</owl:Class>
<owl:Class rdf:about="#IP-MIB">
<rdfs:subClassOf rdf:resource="#mibDefs"/>
</owl:Class>
<owl:Class rdf:about="#ipInDelivers">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Restriction>
<owl:onProperty rdf:resource="#hasSyntax"/>
<owl:allValuesFrom rdf:resource="#Counter32"/>
</owl:Restriction>
<owl:Restriction>
<owl:onProperty rdf:resource="#isPartOfMibDef"/>
<owl:allValuesFrom rdf:resource="#IP-MIB"/>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="#mibObjects"/>
</owl:Class>
<owl:Class rdf:about="#aliases">
<rdfs:subClassOf rdf:resource="&owl;Thing"/>
</owl:Class>
<owl:Class rdf:about="#indelivers">
<rdfs:subClassOf rdf:resource="#aliases"/>
<rdfs:subClassOf rdf:resource="#ipInDelivers"/>
</owl:Class>
Der Code, den ich bisher habe, ist dies:
String NS = "http://namespace.com/owl#";
InputStream is = FileManager.get().open(this.owlPath);
OntModel ontology = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM_MICRO_RULE_INF,null);
ontology.read(is,"");
Reasoner reason = ReasonerRegistry.getOWLMicroReasoner();
InfModel info = ModelFactory.createInfModel(reason,ontology);
OntClass alias = this.ontology.getOntClass(NS+"indelivers");
OntClass superClass = alias.getSuperClass();
Ich habe versucht, die meisten get- und Listenfunktionen in der übergeordneten Klasse zugreifen, aber ich kann nicht die #isPartOfMibDef überall zu finden scheinen
Ja, ich weiß, es war nur ein Tippfehler im OP. – andersem