2016-08-25 9 views
0
私は新しいフクロウを作成したいとD「

:このようなDatatypePropertyの:新しいowl:DatatypePropertyを作成し、それを既存のオントロジでowl apiで追加する方法は?

<owl:DatatypeProperty rdf:about="http://sisinflab.poliba.it/semanticweb/ontologies/architecturalpatterns#extensibilityRate"> 
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/> 
    <rdfs:label xml:lang="en">extensibilityRate</rdfs:label> 
    <rdfs:range> 
     <rdfs:Datatype> 
      <owl:intersectionOf rdf:parseType="Collection"> 
       <rdfs:Datatype> 
        <owl:onDatatype rdf:resource="http://www.w3.org/2001/XMLSchema#integer"/> 
        <owl:withRestrictions rdf:parseType="Collection"> 
         <rdf:Description> 
          <xsd:minInclusive rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">0</xsd:minInclusive> 
         </rdf:Description> 
        </owl:withRestrictions> 
       </rdfs:Datatype> 
       <rdfs:Datatype> 
        <owl:onDatatype rdf:resource="http://www.w3.org/2001/XMLSchema#integer"/> 
        <owl:withRestrictions rdf:parseType="Collection"> 
         <rdf:Description> 
          <xsd:maxInclusive rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">4</xsd:maxInclusive> 
         </rdf:Description> 
        </owl:withRestrictions> 
       </rdfs:Datatype> 
      </owl:intersectionOf> 
     </rdfs:Datatype> 
    </rdfs:range> 
</owl:DatatypeProperty> 

と私のOWLオントロジーに追加し、私はそれを行うことはできません。助言がありますか?

私は例here(行235)に従おうとしています。 Eclipseはコンパイルエラーまたは実行エラーを表示しませんが、オントロジーは更新されません。

+0

私はリンク[link](https://github.com/owlcs/owlapi/blob/version4/contract/src/test/java)のドキュメントの例に従おうとしています。 /org/semanticweb/owlapi/examples/Examples.java)(行235); Eclipseはコンパイルエラーやランニングエラーを表示しませんが、私のオントロジでは何もありません。 – Salva

答えて

0

あなたがに向けた試験方法があり、以下:ここでは

manager.saveOntology(ontology, new StreamDocumentTarget(new ByteArrayOutputStream())); 

オントロジーをメモリに保持していますバイト配列に書き込まれているので、変更はファイルに保存されません。元のファイルが変更されるために、あなたは(あなたの代わりに、実際のファイル出力ストリームを渡す必要があります、第二引数を削除し、オントロジーをコードから作成され、以前に保存されていなかった場合は、単に

manager.saveOntology(ontology); 

を使用する必要があります

関連する問題