このドキュメントは

Web Ontology Language (OWL) Abstract Syntax and Semantics

http://www.w3.org/TR/2002/WD-owl-semantics-20021108/

の一部の和訳です。この文書には和訳上の誤りがありえます。

内容の保証はいたしかねますので、必ずW3C Webサイトの正式版文書を参照して下さい。

Web Ontology Language (OWL) Abstract Syntax and Semantics

ウェブ・オントロジ言語(OWL)の抽象構文と意味論

W3C Working Draft 8 November 2002

このバージョン: http://www.w3.org/TR/2002/WD-owl-semantics-20021108/

最新のバージョン: http://www.w3.org/TR/owl-semantics/

前のバージョン: http://www.w3.org/TR/2002/WD-owl-absyn-20020729/

Editors:Peter F. Patel-Schneider, ベル研究所  Patrick Hayes, IHMC、西フロリダ大学 

Ian Horrocks, マンチェスター大学 電子計算機科学科

Frank van Harmelen, フリー大学アムステルダム人工知能学科

 


概要

OWLウェブ・オントロジ言語は、DAML+OILウェブ・オントロジ言語の修正としてW3Cウェブ・オントロジ・ワーキンググループによって設計されている。 OWLのこの記述は、OWLOWL Lite (OWLの部分集合)の両方のためのハイ・レベルの抽象構文を含んでいる。 モデル理論的な意味論は、抽象構文の中で書かれたOWLオントロジ(あるいは知識ベース)に形式的な意味を与えるために提案する。n-tripleで書かれたOWLオントロジに形式的意味を与えるために、RDFSモデル理論に対する拡張の形をしているモデル理論的な意味論も提案する。n-tripleにする抽象構文からの写像は与え、また、2つのモデル理論は、抽象構文の中で書くことができるOWLオントロジの上で、同じ結果を持っていることを示す。

 

このドキュメントの状態

WCSemantic Web Activity( Activity Statement)の一環として2002118日に作成されたW3C Web Ontology Working Group の作業ドラフト(Working Draft であり、 OWLウェブ・オントロジ言語を設計する際にワーキンググループによって下された決定をまとめたものである。このドキュメントはフィードバックとコメントを促進するためにW3Cメンバーおよび他の興味ある人によるレビューのために公表されている。執筆時点においては、本件に関係する特許の開示はありません。

これはW3Cで公開された作業ドラフトであり、いつでも更新されるかもしれないし、他のドキュメントと取り替えられるかもしれないし、obsoletedされるかもしれない。 参照資料としてW3C作業ドラフトを使用したり、「進行中の仕事」として以外に引用したりすることは不適当である。

現在のW3C勧告(Recommendation)および他の技術文書(technical document)のリストで見つけることができる。  http://www.w3.org/TR/.

 

このドキュメントに関するコメントは歓迎するので、以下の公のメーリング・リストに送ってください。  public-webont-comments@w3.org.

コメントのアーカイブはhttp://lists.w3.org/Archives/Public/public-webont-comments/ . で利用可能である、  


 


目次

·       1.導入

o        1.1 DAML+OILとの違い

o        1.2 OWLの課題への考え方(Stances Taken on Open OWL Issues)

·       2. 抽象構文(Abstract Syntax)

o        2.1 オントロジ

o        2.2  事実(Facts

o        2.3  公理(Axioms

§         2.3.1  OWL Liteの公理(Axiom)

§         2.3.1.1  OWL Lite のクラス公理

§         2.3.1.2  OWL Lite の制限(Restriction)

§         2.3.1.3  OWL Lite のプロパティ公理

§         2.3.2  OWL の公理(Axiom)

§         2.3.2.1  OWL のクラス公理

§         2.3.2.2  OWL の記述(Descriptions

§         2.3.2.3  OWL の制限(Restrictions

§         2.3.2.4  OWL のプロパティ公理

·       3.  直接的なモデル論的意味論

o        3.1  語彙と解釈(Vocabularies and Interpretations)

o        3.2  埋め込み要素(Embedded Constructs)の解釈

o        3.3  公理と事実の解釈

o        3.4  オントロジの解釈

·       4.  RDF 構文への写像(Mapping)

o        4.1  N-Triple 形式のOWL/DLオントロジの定義

·       5.  RDFS互換のモデル論的意味論

o        5.1  OWL RDFS universes

§         5.1.1  修飾された名前(Qualified Names) URI参照

o        5.2  OWL の解釈

o        5.3  OWL/DL

§         5.3.1  OWL/DL (伴意)Entailment

§         5.3.2  直接的意味論との対応

o        5.4  OWL/Full

 

 

·       付録A.  証明(参考)   (本資料では省略)

o        A.1  抽象構文と OWL/DLとの対応

§         A.1.1  Lemma 1

§         A.1.2  Lemma 2

§         A.1.3  Lemma 3

§         A.1.4  Lemma 4

§         A.1.5  Correspondence Theorem

o        A.2  OWL/DL OWL/Full との対応

 

·       付録B   (参考)

o        B.1  抽象構文からN-Triplesへの変換の例

o        B.2  OWL/DL OWL/FullEntailmentの例



1. 導入

W3Cウェブ・オントロジグループ(WebOnt)は、XMLRDFおよびRDF Schemaの範囲を広げるウェブ・オントロジ言語を生成の仕事を課されている。OWLと呼ばれるこの言語は、DAML+OILウェブ・オントロジ言語[DAML+OIL].に基づく

このドキュメントは、いくつかのスタイルのOWLのいくつかの相互関係があった仕様を含んでいる。 まず、2章(Section 2)では、OWL[ OWL Features ]の部分集合であるOWL Liteと、よりFull StyleOWLを使用するOWL/DLと呼ぶものの両方のためのハイレベルの抽象構文を与えている。しかしながら、このドキュメントでは、OWLのためのプレゼンテーション構文(Presentation Syntax)も交換構文(Exchange Syntax)も定義しない。 OWLのための公式交換構文はRDF/XMLである; OWLをコード化するためにRDFがどのように使用されるかはOWLリファレンス・ドキュメントの主題である[ OWL Reference]しかしながら、抽象構文からn-triple[ RDF Tests]へのマッピングについては4章(Section 4.)で与えられる。

このドキュメントは、OWLのための2つの形式的意味論を含んでいる。 ひとつは、3章(Section 3)で定義される、抽象構文で書かれたOWLオントロジ用の直接的で標準的なモデル論的な意味論である。もうひとつは、5章(Section 5)で与えられる、n-tripleからスタートするRDFSモデル論的な意味論の拡張で、公式のOWL交換構文で書かれたOWLオントロジ用の意味論を提供する。2番目の意味論については、より直接的な意味論に近いものと、クラスを個体(individual)としても見なす必要のある場合に使われるものの2つのバージョンがある。これら2つのバージョンは、対象領域(domain of discourse)をどのように分割するかの違いだけで、実際には殆ど同じである。

Appendix A contains a proof that the two different semantics have the same consequences on OWL ontologies that correspond to abstract OWL ontologies that separate OWL individuals, OWL classes, OWL properties, and the RDF, RDFS, and OWL structural vocabulary. For such OWL ontologies the direct model theory is authoritative and the RDFS-compatible model theory is secondary

付録AAppendix A)は、2つの異なる意味論が、OWL個体、OWLクラス、OWLプロパティに分けられる抽象OWLオントロジと、RDFRDFSおよびOWLの構造の語彙(vocabulary)に、対応するOWLオントロジの上で、同じ結果を持っていることの証明を含んでいる。そのようなOWLオントロジについては、直接のモデル理論がauthoritativeであり、RDFS互換のモデル理論はsecondaryである。最後に、付録BAppendix B.)に、ドキュメントに定義された様々な概念のいくつかの例が示される。

.  

1.1. DAML+OILとの違い

このドキュメントに記述された言語は、DAML+OILに非常に似ている。 OWL参照ドキュメントの定義[OWL Reference]に示すように OWLのための交換構文は、DAML+OILからの変更はごくわずかである。 抽象構文はDAML+OILのための抽象構文として見ることもできる。OWLDAML+OILからの唯一の本質的な変更は、

·       WebOntの決定により、限量制限(qualified number restrictions)の除去;

·       WebOntの決定により、プロパティの対称性(symmetric)に対する直接的に記述する能力; そして

·       いくつかの異常なDAML+OIL構成子(Constracts)に対する抽象構文の欠如、特に特殊なコンポーネントを伴う制限(restriction)およびそれらの差演算。

OWL参照記述[OWL Reference]の付録Aで言及されるように、さらに様々な構成子の名前の変更を含む、OWLおよびDAML+ OILの間の小さな差がある。これらの変更は、OWLのための具体的な構文の好ましい名への潜在的な変更を示すかもしれない。しかし、WebOntの意図は合理的な最大の程度までDAML+OIL名を維持することである。

 

1.2. OWLの課題(Open Issues)に対する考え方

一部を以下にいくつか示したワーキンググループの課題(open issuesに対し、このドキュメントでは、以下に示したスタンスをとる。ワーキンググループ課題のすべては、課題リストドキュメントで議論される[OWL Issues]

 

·       ドキュメントは、(抽象構文の中で)オントロジの任意の注釈、多くの種類の公理および事実を許可する。n-triple構文およびRDFS互換の意味論は、クラス、プロパティあるいは個体(individual)上でRDFプロパティを使用することにより、クラス、プロパティおよび個体の注釈を、ドキュメントURI上でRDFプロパティを使用することにより、オントロジの注釈を許可する。 これはissue 4.4 および issue 5.14 に対する単純な解決である。

·       このドキュメントは、リスト(List)構成子の十分なアカウントを提供し、問題5.5に対する決意を示す。リストは抽象構文には出現しない。 n-triple構文では、リストは、rdf:List, rdf:firstrdf:restおよび rdf:nilを用いて形成する。 RDFS互換の意味論では、解釈でOWL構文の存在を支援するために、十分なリストがすべての解釈に存在する。しかし、リスト用の一般的な理解原理はない。また、リストがwell formedであるべきという要求はない。

·       このドキュメントは、抽象構文のImport指令(directive)を提供し、Import 閉包(closure)の観点でそれに意味を与える。RDFS互換の意味論の中で、その主題(Subject)が空の相対(relative) URIであるinport tripleは、同じ結果を備えた輸入を示す役目をする。これはissue 5.6の潜在的な解決である

·       このドキュメントは、issue 5.8 RDF datatypingを用いたOWLを使って解決されるだろうと仮定して、RDFモデル理論の中でdatatypingするRDFemerging treatmentに近いdatatypingのための方法を使用する。RDFモデル理論の中でdatatypingの扱いもまだ定まっていないので、このドキュメントは完全には現状のRDF datatypingの扱いに対応している訳ではない。


謝辞

Joint US/EU ad hoc Agent Markup Language Committee OWLの直接の先駆者であるDAMLOILを開発した。 OWLに引き継がれた、DAM+OILの中多くのアイディアはOntology Inference Layer (OIL).にも現れていた。

Many of the other members of the W3C Web Ontology Working Group have had substantial input into this document.

W3Cウェブ・オントロジ・ワーキンググループのメンバーの諸氏は、このドキュメントへ本質的なインプットを行っていた。

参考文献

[DAML+OIL]

 

DAML+OIL (March 2001) Reference Description. 

Dan Connolly, Frank van Harmelen, Ian Horrocks, Deborah L. McGuinness, Peter F. Patel-Schneider, and Lynn Andrea Stein. W3C Note 18 December 2001.
最新のバージョンはhttp://www.w3.org/TR/daml+oil-referenceで利用可能である、

.

[OWL Features]

Feature Synopsis for OWL Lite and OWL.

Deborah L. McGuinness and Frank van Harmelen. W3C Working Draft 29 July 2002.

最新のバージョンはhttp://www.w3.org/TR/owl-features/で利用可能である。

 

[OWL Issues]

Web Ontology Issue Status.

Michael K. Smith編集 10 July 2002.

http://www.w3.org/2001/sw/WebOnt/webont-issues.html

 

[OWL Reference]

OWL Web Ontology Language 1.0 Reference.

Mike Dean, Dan Connolly, Frank van Harmelen, James Hendler, Ian Horrocks, Deborah L. McGuinness, Peter F. Patel-Schneider, and Lynn Andrea Stein.

W3C Working Draft 29 July 2002.

最新のバージョンはhttp://www.w3.org/TR/owl-ref/で利用可能である。

 

[RDFMS]

Resource Description Framework (RDF) Model and Syntax Specification.

Ora Lassila and Ralph R. Swick, 編集  W3C Recommendation 22 February 1999.

最新のバージョンはhttp://www.w3.org/TR/REC-rdf-syntax/ で利用可能である。

 

[RDF MT]

RDF Model Theory.

Patrick Hayes, 編集 W3C Working Draft 29 April 2002.

最新のバージョンはhttp://www.w3.org/TR/rdf-mt/ で利用可能である。

.

[RDF Tests]

RDF Test Cases.

Jan Grant and Dave Beckett, 編集  W3C Working Draft 29 April 2002.

最新のバージョンはhttp://www.w3.org/TR/rdf-testcases/ 利用可能である。


2. 抽象構文

ここでは、OWLの記述を具体的な構文から抽象化する、従って言語の評価や記述を容易にする。ハイ・レベルの構文は言語の特徴を解り易くするために使用される。

クラスあるいはプロパティに関する情報のコレクションが一つの大きな構文的構成要素(syntactic constract)に与えられる場合、ここで導入する特別な構文は、(多くのDescription Logicが行うように)原子的(atomic)なチャンクに分解するのではなく、ましてや(DAMLOILのように)n-tripleまで分解するのではなく、読みやすさのために、フレーム風のスタイル(frame-like style)を持っている。

 The syntax used here is rather informal, even for an abstract syntax - in general the arguments of a construct should be considered to be unordered wherever the order would not affect the meaning of the construct.

ここに使用される構文は、抽象構文としてもやや非公式である―一般に、構成子(construct)の引数は、順序がconstructの意味に影響しないところならどこでも、順序が無いと考えられるべきである。

This syntax does not have to worry about any of the problems induced by the RDF triple model, including non-closed and ill-formed lists and restrictions. No parsetype extensions are needed for readability, and many issues of coordination with the RDF Core WG are not relevant at this level of syntax.

この構文は、閉じていないincludingや、ill-formedlistや制限(restriction)などRDF tripleモデルによって引き起こされた問題のうちのどれに関しても配慮していない。parsetype拡張は読みやすさのために必要ではない。また、RDFコアWGでの調整の多くの問題はこのレベルの構文では適切ではない。層状化問題(Layering issues)も安全に無視することができる。 さらに、名前空間(namespace)問題も多少無視することができる;この構文では、予約語には、どんな名前空間限定子(namespace qualification)も与えられない。

抽象構文は、ここでは、拡張BNFによって明記される。 BNFのこのバージョンでは、終端記号(terminal)は引用符を付けない。非終端記号は先の尖ったブラケット(<>)で囲まれる。また、選択肢は垂直の棒(|)によって分離されるか、別の生成規則として与えられる。一回以上生じる要素は角括弧で囲まれる([]); 何回も(0を含んで)生じることができる要素は締め金({})で囲まれる。 OWL抽象構文の構成要素(Construct)の各々の意味は、それが導入される時に記述する。 これら構成要素(Construct)の形式上の意味は3(Section 3)で、モデル論的意味論により与えられる。  

While it is widely appreciated that all of the features in expressive languages such as OWL (and DAML+OIL) are important to some users, it is also understood that such languages may be daunting to some groups who are trying to support a tool suite for the entire language. This smaller language attempts to capture many of the commonly used features of OWL. It also attempts to describe a useful language that provides more than RDF Schema with the goal of adding functionality that is important in order to support web applications.

OWL(またDAML+OIL)のような表現力のある言語の機能(feature)がすべて、何人かのユーザにとって重要であることが、広く認識されている一方、そのような言語が言語のツールスーツを支援しようとしている何人かのグループの気力をくじくかもしれないことも理解される。 より多くの人々にアプローチできるように、現在OWL Liteと呼ばれている、小さな言語が定義された[ OWL Features]このより小さな言語は、OWLの一般に用いられている機能(feature)の多くを取り込もうとしている。さらに、それは、RDF Schema以上にウェブアプリケーションを支援するために重要な機能を加えるという目標を持つ有用な言語について記述することを試みる。
 
抽象構文は、このより小さな言語のためにもよりフルスタイルのOWLのためにも使われる。ここでの抽象構文は、OWLのための交換構文ほど、一般的ではない。 特に、自己参照(self-referential)の構文要素(syntactic construct)を許していない。さらに、クラス、プロパティおよび個体が、互いに素(disjoint)な集合(collection)であることを意図している。

これらはラフに言えば、記述論理(Description Logic)のパラダイムにOWLを合わせるのに必要な制限であり、だから、この抽象構文は、5.3.1節で定義されるようなOWL/DLのための構文と考えられるべきものである。

 

2.1. オントロジ

抽象構文のOWLオントロジは、他のオントロジ(それらはオントロジに含まれると考えられる)への包含参照(inclusion reference)を含めて、公理と事実のシーケンスである。 オントロジは、さらに原作者を記録するために使用することができる論理記述でない(non-logical)注釈、およびオントロジに関連した他の論理記述でない(non-logical)情報を持つことができる。 OWLオントロジはウェブドキュメントで、URIによって参照に付けることができる。

 

<ontology> ::= Ontology ( {<directive>} )
 
<directive> ::= Annotation ( <URI reference> <URI reference> )
<directive> ::= Annotation ( <URI reference> <lexical-form> )
<directive> ::= Imports ( <URI> )
<directive> ::= <axiom>
<directive> ::= <fact> 

 

オントロジは、各々はURI参照であるIDを持つことができるクラス、プロパティ、およびその個体(individual)に関する情報を組込む。  (RDFの中で行われるように、URI参照の代りに、可能なところならどこでも、修飾された名前(QNames)を使用するのが便利である。) オントロジは、さらに、datatypeのためのURI参照によって、ビルトインのXML Schema datatypesを参照することができる。

 

<datatypeID>                 ::= <URI reference>
<classID>                    ::= <URI reference>
<individualID>               ::= <URI reference>
<datavaluedPropertyID>       ::= <URI reference>
<individualvaluedPropertyID> ::= <URI reference>
 

If a URI reference is a datatype, i.e., if there is a datatype definition retrievable using the URI reference, then that URI reference cannot be used as the ID for a class. However, a URI reference can be the ID of a class or datatype as well as the ID of a property as well as the ID of an individual. Individual IDs are used to refer to resources, and typed data literals are used to refer to the XML Schema data values.

URI参照がdatatypeである場合、つまり、URI参照で検索可能なdatatype定義が存在している場合、そのURI参照はクラスのためのIDとしては使用することができない。しかしながら、URI参照は個体のID同様、プロパティのID、クラスかdatatypeIDとなりうる。個体のIDは通常、資源を参照するために使用され、型付データ・リテラルは、通常XMLSchemaデータ値(data value)を参照するために使用される。

In OWL a datatype denotes the set of XML Schema data values that is the value space for the datatype. Properties relate individuals to other information, and are divided into two disjoint groups, data-valued properties and individual-valued properties.

OWLでは、datatypeは、そのdatatypeの採る値の空間であるXML Shemaデータ値(data value)の集合(Set)を表わし、クラスは、個体の集合(Set)を表す。 プロパティは個体を他の情報に関連づけて、データを値に採るプロパティと個体を値に採るプロパティの2の(互いに素な)グループに分割される。 1のグループのプロパティ要素は個体にデータ値を関連づける、第2のグループの要素は個体に他の個体を関連づける。

There are two built-in classes in OWL, they both use URI references in the as-yet-to-be-determined OWL URI, for which the namespace name owl is used here. The class with ID owl:Thing is the class of all individuals, and is part of OWL Lite. The class with ID owl:Nothing is the empty class. Many OWL constructs use annotations, which, just like annotation directives, are used to record non-logical information associated with some portion of the construct

OWL2つのbuilt-inのクラスがあり、それらは両方ともまだ決定していないOWL URI(ここでは名前空間名owlはそれのために使用される)URI参照を用いる。ID owl:Thingを備えたクラスは、すべての個体のクラスで、OWL Liteの一部である。 ID owl:Nothingを備えたクラスは空のクラスである。多くのOWLの要素(construct)は、注釈指令(directive)のように、要素(construct)のある部分に関連したnon-logicalな情報を記録するために使用される注釈を用いる。

 

   <annotation> ::= annotation ( <URI reference> <URI reference> )
<annotation> ::= annotation ( <URI reference> <lexical-form> )
 

2.2. Facts(事実)

OWL抽象構文には二種類のfactがある。一種類目の事実(Fact)は、特定の個体(Individual)に関する情報を、その属するクラスの形で、その個体のプロパティおよびその値を加えて記述する。個体は、その個体を表示し、その個体に言及するために使用することができるindividualIDを与えることができる。Such individuals are anonymous (blank in RDF terms) and cannot be directly referred to elsewhere. The syntax here is set up to mirror the normal RDF/XML syntax.

しかしながら、個体はindividualIDを与えられなくてもよい。そのような個体は匿名(RDF用語ではブランク)と呼ばれ、直接他のところに引用することができない。ここで用いる構文は正常なRDF/XML構文を反映する形で設定する。

 

<fact> ::= <individual>
<individual> ::= Individual( [<individualID>] {<annotation>}
                              {type(<type>)} {<propertyValue>} )
<propertyValue> ::= value( <individualvaluedPropertyID>  <individualID> )
                  | value( <individualvaluedPropertyID>  <individual> )
                  | value( <datavaluedPropertyID>  <dataLiteral> )
 

factはとりうる型(Type)の違いを除いて、OWL LiteFullな抽象構文ライトも同じである。 OWL Liteでは、型としては、classIDs OWL Lite restrictions をとり得る。

 

<type> ::= <classID>
         | <restriction>
 

Fullな抽象構文タイプでは、classIDsOWL Lite restrictionを含むより一般的な descriptionをとる。

 

<type> ::= <description>
 

抽象構文では、データ・リテラルは、datatypeとそのdatatypeのデータ値の語彙的表現(lexival representation)から成る(型付データ・リテラル)

 

<dataLiteral> ::= <typedDataLiteral>
<typedDataLiteral> ::= <datatypeID>  <lexical-form>

 

抽象構文では、その他、individual IDが同値であるか、それぞれ異なることを示すための事実(fact)宣言もある。

 

<fact> ::= SameIndividual( <individualID> {<individualID>} )
<fact> ::= DifferentIndividuals( <individualID> {<individualID>} )
 

2.3. 公理(Axioms

OWL LiteFullの抽象構文の間の最大の差異は、クラスとプロパティ(Property)に関する情報を提供するために使用される公理である。まず、より小さな言語であるOWL Lite の公理を与え、次に、Fullの抽象構文をそれに追加する形で与える。

Axioms are used to associate class and property IDs with either partial or complete specifications of their characteristics, and to give other logical information about classes and properties.

公理は、それらの部分的あるいは完全な仕様にクラスとプロパティのIDを関連させて、かつクラスとプロパティに関する他の論理的な情報を与えるために使用される。 公理はかつては定義と呼ばれた。しかし、WGの中でいくつかの議論に明らかになったように、それらは定義と呼ぶに相応しくない。したがって、より中立の名前は選ばれた。

The syntax used here is meant to look somewhat like the syntax used in some frame systems. Each class axiom in OWL Lite contains a collection of more-general classes and a collection of local property restrictions in the form of restriction constructs. The restriction construct gives the local range of a property, how many values are permitted, and/or a collection of required values. The class is made either equivalent to or a subset of the intersection of these more-general classes and restrictions. In the full abstract syntax a class axiom contains a collection of descriptions, which can be more-general classes, restrictions, sets of individuals, and of descriptions. Classes can also be specified by enumeration or be made the same or disjoint.

ここに使用される構文は、多少いくつかのフレームシステムの中で使用される構文に似ている。OWL Liteの中の各クラス公理は、より一般的なクラスの集まり(Collection)やローカル・プロパティの制限の集まりを制限要素(restriction construct)の形で含んでいる。制限要素は、何個の値を取る事が許されるか、かつ/または 取りうる値の集まり(collection)などのプロパティのローカルな範囲(local range)を与える。クラスは、これらのより一般的なクラスや制約の共通部分(intersection)と等価あるいは部分集として作ることできる。Fullな抽象構文では、クラス公理は、記述(description)の集まりを含めることができる;記述は、より一般的なクラス、制限、個体の集合(Set)およびそれらのブール式(boolean combination)として書ける。 クラスは、列挙による指定や、同じとか互いに素であることを指定することもできる。

プロパティは、他の要素と等価やサブプロパティになることができる;関数的(値が一つ)、逆関数、対象、推移的になることもできる。そして、グローバル領域および範囲を与えることができる。 しかしながら、プロパティに関するほとんどの情報は、普通は、ローカルの範囲および数量情報が指定されることを可能にする制限(restriction)で表現される。

オントロジの中で使用される各クラスが必ず一つ公理を持つ必要はない。実際、各クラスは、一つも持たない場合も含み、幾つ公理を持っても良い。ただ、抽象構文オントロジの中で使用されるプロパティはデータ値を採るか個体値を採るかで、分類しなければならないので、少なくともこのための公理が必要となる。オントロジで用いられるクラスやプロパティに高々1つの公理しか書けないという要求はない。 特別のクラス(あるいはプロパティ)IDのための各公理は、そのクラス(あるいはプロパティ)の意味に寄与する。

 

2.3.1. OWL Lite の公理(Axioms

2.3.1.1. OWL Lite のクラスの公理(Class Axioms

In OWL Lite class axioms are used to state that a class is exactly equivalent to, for the modality complete, or a subclass of, for the modality partial, the conjunction of a collection of superclasses and OWL Lite Restrictions.

OWL Liteでは、クラスが、スーパークラスとOWL Lite制限(Restriction)の論理積(conjunction)と、正確に等価(copleteモード)、あるいはそのサブクラス(partialモード)であることを宣言するためにクラス公理が用いられる。

.

<axiom> ::= Class( <classID> <modality> {<annotation>} {<super>} )
<modality> ::= complete | partial
<super> ::= <classID> | <restriction>
 

OWL Liteでは、2つのクラスが同じであると述べることが可能である。

 

<axiom> ::= EquivalentClasses( <classID> {<classID>} )
 
2.3.1.2. OWL Liteの制限(Restriction

クラスでのプロパティ上のローカルの制約を提供するために、制限(Restriction)OWL Liteのクラス公理の中で使用される。 制限の各allValuesFrom部分は、クラスでのオブジェクトのプロパティの値がすべて、指定されたクラスかdatatypeに属するように強制する。 someValuesFrom部分は、プロパティの値のうち少なくとも一つが、そこで指定されたクラスかdatatypeに属するように強制する。 cardinality部分は、クラスの各個体のプロパティがどれだけの別個の値を採るかを言う。 但し、OWL Liteではで、許可された値の数は01でだけある。

There is a side condition in OWL Lite that properties that are transitive or that have transitive sub-properties may not have cardinality conditions expressed on them in restrictions.

推移的(transitive)か、推移的なサブプロパティを持っているプロパティは制限でそれらの上でcardinality条件を示さないかもしれないという周辺条件(side condition)が、OWL Liteには付けられる。

 

<restriction> ::= restriction( <datavaluedPropertyID> {allValuesFrom(<datatypeID>)}
                               {someValuesFrom(<datatypeID>)} [<cardinality>] )
<restriction> ::= restriction( <individualvaluedPropertyID> {allValuesFrom(<classID>)}
                               {someValuesFrom(<classID>)} [<cardinality>] )
<cardinality> ::= minCardinality(0) | minCardinality(1) |
                | maxCardinality(0) | maxCardinality(1)
2.3.1.3. OWL Lite プロパティの公理(Property Axiom

プロパティもフレーム風の構文(a frame-like syntax)を使用して指定される。 プロパティは、個体を整数のようなデータ値と関連付けるデータ値(data-valued)プロパティと、個体を他の個体と関連付ける個体値(individual-valued)プロパティとに分割される。 プロパティは、スーパープロパティを与えて、プロパティ階層を構築することができる。 これは、個体プロパティがデータプロパティのスーパープロパティになれることを意味しないし、その逆も意味しない。

プロパティも定義域(domain)と値域(range)を与えることができる。 プロパティ用の定義域は、ちょうどRDFでのように、どの個体がプロパティを動詞としてを持っている文の潜在的な主題になるか明示する。 OWL Liteでは、プロパティの定義域がクラスである。 プロパティは多数の定義域を持つことができ、それら定義域のすべてに属する個体だけが潜在的な主題である。 プロパティのための値域は、どの個体あるいはデータ値がプロパティの対象でありえるか明示する。 やはり、プロパティは値域も多数持つことができ、値域のすべてに属する個体あるいはデータ値だけが、潜在的な対象である。 OWL Liteでは、個体値のプロパティのための値域はクラスである; データ値のプロパティのための値域はdatatypesである。

データ値のプロパティは(部分)関数的(functional)であると明示することができる、つまり、個体が与えられると、プロパティにその個体に対する高々1つのデータ値との関係を採りえる。 個体値プロパティは別の個体値プロパティの逆(inverse)であると明示することができる。

個体値プロパティは、関数的、逆関数的,推移的と同様に対称的であると明示することもできる。推移的(transitive)、または推移的なサブプロパティを持っている個体値プロパティは、制限(restriction)や関数的、逆関数的といった指定によるcardinality条件を持ってはならない。これは言語の決定可能性(decidability)を維持するために必要である。

 

<axiom> ::= DatatypeProperty ( <datavaluedPropertyID> {<annotation>} {super(<datavaluedPropertyID>)}
                           {domain(<classID>)} {range(<datatypeID>)}
                           [Functional] )
 
<axiom> ::= ObjectProperty ( <individualvaluedPropertyID> {<annotation>} {super(<individualvaluedPropertyID>)}
          {domain(<classID>)} {range(<classID>)} 
          [inverseOf(<individualvaluedPropertyID>)] [Symmetric] 
          [Functional | InverseFunctional | Functional InverseFunctional | Transitive] )
 

次の公理はいくつかのプロパティが同じであることや、あるいは1つのプロパティを別のもののサブプロパティであることを指定するものである。

 

<axiom> ::= EquivalentProperties( <datavaluedPropertyID>  {<datavaluedPropertyID>} )
<axiom> ::= SubPropertyOf( <datavaluedPropertyID>  <datavaluedPropertyID> )
<axiom> ::= EquivalentProperties( <individualvaluedPropertyID>  {<individualvaluedPropertyID>} )
<axiom> ::= SubPropertyOf( <individualvaluedPropertyID>  <individualvaluedPropertyID> )
 

2.3.2. OWLの公理(Axiom

2.3.2.1. OWL クラスの公理(Axiom

スーパークラス、より一般的な制限およびブール式(boolean combinations)等が許可される、Fullの抽象構文のクラス公理は、OWL Liteクラスの公理のより一般的なバージョンになっている。 これら要素(construct)は、あわせて、記述(descriptions)呼ばれる。

 

<axiom> ::= Class( <classID> <modality> {<annotation>} {<description>} )
<modality> ::= complete | partial
 

Fullな抽象構文では、以下のように個体の集合を指定してクラスを正確に作ることが可能である。

 

<axiom> ::= EnumeratedClass( <classID> {<annotation>} {<individualID>} )
 

最後に、Fullな抽象構文では、記述のコレクションがペア毎に互いに素であることや、同じ要素をもつ事や、一つの記述が他の記述のサブクラスであることを要求することが可能である。

 Note that the last two of these axioms generalize the first kind of class axiom just above.

これらの公理の最後の2つは、ちょうど上にあげた、最初のクラス公理を一般化したものであることに注意。

 

<axiom> ::= DisjointClasses( <description> {<description>} )
<axiom> ::= EquivalentClasses( <description> {<description>} 
<axiom> ::= SubClassOf( <description> <description> )
 
2.3.2.2. OWL 記述(Descriptions

Fullな抽象構文の記述(description)はクラスIDと制限要素(restriction constructor)を含んでいる。 記述はさらに他の記述のブール式および個体の集合(set)でありえる。

 

<description> ::= <classID>
                | <restriction>
                | unionOf( {<description>} )
                | intersectionOf( {<description>} )
                | complementOf( <description> )
                | oneOf({<individualID>} )
 
2.3.2.3. OWL 制限(Restrictions

Restrictions in the full abstract syntax generalize OWL Lite restrictions by allowing descriptions where classes are allowed in OWL Lite and allowing sets of data values as well as datatypes.

Fullな抽象構文の制限は、OWL Liteの中でクラスの記述が許される場所に、制限の記述を許し、その記述では、datatypesと同様にデータ値の集合を許すことにより、OWL Lite制限を一般化している。 datatypesコンビネーションおよびデータ値の集合はデータ範囲(range)と呼ばれる。 In the full abstract syntax, values can also be given for properties in classes.Fullな抽象構文では、クラスでのプロパティのために値も与えることができる。 同様に、cardinality0および1だけに制限されない。

 

<restriction> ::= restriction( <datavaluedPropertyID> {allValuesFrom(<dataRange>)}
                               {someValuesFrom(<dataRange>)} {value(<dataLiteral>)}
                               {<cardinality>} )
<restriction> ::= restriction( <individualvaluedPropertyID> {allValuesFrom(<description>)}
                               {someValuesFrom(<description>)} {value(<individualID>)}
                               {<cardinality>} )
<cardinality> ::= minCardinality(<non-negative-integer> )
                | maxCardinality(<non-negative-integer>)
                | cardinality(<non-negative-integer>)
 

Fullな抽象構文の中で、データ値のプロパティの値域(range)として、あるいは他の場所に使用されるdataRangeは、datatypeあるいはデータ値の集合のいずれかである。

 

<dataRange> ::= <datatypeID>
<dataRange> ::= oneOf({<typedDataLiteral>} )
 

OWL Liteでは、周辺条件(side condition)があるので、推移的か、推移的なサブプロパティを持っているそのプロパティは、制限(restriction)としてcardinality条件をすことができない。

 

2.3.2.4. OWL Property (公理)Axioms

Fullな抽象構文のプロパティ公理はクラスの代わりに記述を、定義域と値域でのdatatypesの代わりにdata rangeを許すことよりOWL Liteのプロパティ公理を一般化する。

 

<axiom> ::= DatatypeProperty ( <datavaluedPropertyID> {<annotation>} {super(<datavaluedPropertyID>)}
                           {domain(<description>)} {range(<dataRange>)}
                           [Functional] )
<axiom> ::= ObjectProperty
        ( <individualvaluedPropertyID> {<annotation>} {super(<individualvaluedPropertyID>)}
          {domain(<description>)} {range(<description>)} 
          [inverseOf(<individualvaluedPropertyID>)] [Symmetric] 
          [Functional | InverseFunctional | Functional InverseFunctional | Transitive] )
 

3. 直接的なモデル論的意味論  

OWLのためのこのモデル論的意味論は、抽象構文のオントロジから直接的に標準のモデル理論へ展開する。 それはOWL知識ベースをn-triples形式で扱う、RDFSモデル理論の拡張である5章(Section 5)での意味論よりはるかに単純である。

3.1. 語彙 (Vocabularies) と解釈 (Interpretations)

ここでの意味論は、語彙(それは、知識ベースにある興味のあるURI参照(reference)と見なすことができる)の概念から始める。しかしながら、語彙は、知識ベースのURI参照からのみ成る必要はない。 OWLの語彙Vは、owl:Thing, owl:Nothing, and rdfs:Literalを含むURI参照の集合である。OWL語彙は、さらにXMLSchemaのリストを除くbuilt-inの単純なdatatypesの各々のためのURI参照を含んでいる。 意味論では、LVはこれらdatatypes(互いに素とは限らない)値空間(value space)の結合(union)である。 語彙Vを持つ抽象的OWLの解釈Iとは形式の4つ組みである: I = <R, S, EC, ER>

ここで

·       Rは資源(resource)の空でないの集合である、LVとは互いに素。  

·       S: V R

·       EC : V 2^R 2^LV

·       ER : V 2^(R×R) 2^(R×LV)

SOWL個体を表示するために使用されるURI参照に意味を与えている、一方、ECERは、OWLクラスおよびOWLプロパティとして使用されるURI参照にそれぞれ意味を与えている。 抽象的なOWL解釈は、datatypesと関係する下記条件を持っている:

 

1.    もし、dXML Schemaのリストでないbuilt-inの単純なdatatypeのためのURI参照である場合、EC(d)はこのdatatypeの値空間である。

2.    もし、cが任意のXML Schmaのリストでないbuilt-inの単純なdatatypeのためのURI参照でない場合、EC(c)Rの部分集合である。  

3.    dldatatypeとリテラルのペアの時、D(dl)XML Schemadatatype dの中のlに対するデータ値である。

3.2. 埋め込み要素 (Embedded Constructs) の解釈 (Interpreting)

ECは、以下のように<description><dataRange><individual>および<propertyValue>などの構文要素(syntactic construct)にまで拡張される:

 

構文-S

EC(S)

owl:Thing

R

owl:Nothing

{ }

rdfs:Literal

LV

complementOf(c)

R - EC(c)

unionOf(c1 … cn)

EC(c1) EC(cn)

intersectionOf(c1 … cn)

EC(c1) EC(cn)

oneOf(i1 … in)

{S(i1), …, S(in)}

oneOf(d1,l1 … dn,ln)

{D(d1,l1), …, D(dn,ln)}

restriction(p x1 … xn)

EC(restriction(p x1))∩…∩EC(restriction(p xn))

restriction(p allValuesFrom(r))

{x R | <x,y> ER(p) y EC(r)}

restriction(p someValuesFrom(e))

{x R | <x,y> ER(p) y EC(e)}

restriction(p value(i))

{x R | <x,S(i)> ER(p)}

restriction(p value(d,l))

{x R | <x,D(d,l)> ER(p)}

restriction(p minCardinality(n))

{x R | card({y : <x,y> ER(p)}) ≤ n}

restriction(p maxCardinality(n))

{x R | card({y : <x,y> ER(p)}) ≥ n}

restriction(p cardinality(n))

{x R | card({y : <x,y> ER(p)}) = n}

Individual(annotation(…) … annotation(…) type(c1) … type(cm) pv1 … pvn)

EC(c1)∩…∩EC(cm)EC(pv(pv1))∩…∩EC(pv(pvn))

Individual(i annotation(…) … annotation(…) type(c1) … type(cm) pv1 … pvn)

{S(i)}EC(c)∩…∩EC(cm)EC(pv(pv1))∩…∩ EC(pv(pvn))

pv(p Individual(…))

{x R | yEC(Individual()) : <x,y> ER(p)}

pv(p id), for id an individualID

{x R | <x,S(id)> ER(p) }

pv(p d,l)

{x R | <x,D(d,l)> ER(p) }

 

3.3. 公理と事実の解釈

抽象的なOWLの解釈IOWL公理および事実の解釈は、下の表のように与えられる。表では、公理と事実のオプションの部分が角括弧([])の中で与えられ、対応するオプションの条件も角括弧の中で与えられる。

 

指令 (Directive)

解釈に関する条件

Class(c complete annotation(…) … annotation(…) descr1 … descrn)

EC(c) = EC(descr1) ∩…∩ EC(descrn)

Class(c partial annotation(…) … annotation(…) descr1 … descrn)

EC(c) EC(descr1) ∩…∩ EC(descrn)

EnumeratedClass(c annotation(…) … annotation(…) i1 … in)

EC(c) = { S(i1), …, S(in) }

DisjointClasses(d1 … dn)

EC(di) EC(dj) = { } for 1 ≤ i < j ≤ n

EquivalentClasses(d1 … dn)

EC(di) = EC(dj) for 1 ≤ i < j ≤ n

SubClassOf(d1 d2)

EC(d1) EC(d2)

DataProperty(p annotation(…) … annotation(…) super(s1) … super(sn)

    domain(d1) … domain(dn) range(r1) … range(rn)

    [Functional])

ER(p) ER(s1) ∩…∩ ER(sn)

       EC(d1)×LV ∩…∩ EC(dn)×LV R×EC(r1) ∩…∩ R×EC(rn)

 

[ER(p) is functional]

IndividualProperty(p annotation(…) … annotation(…)

    super(s1) … super(sn)

    domain(d1) … domain(dn) range(r1) … range(rn)

    [inverse(i)] [Symmetric]

    [Functional] [InverseFunctional]

    [Transitive])

ER(p) ER(s1) ∩…∩ ER(sn)

      

  EC(d1)×R ∩…∩ EC(dn)×R R×EC(r1) ∩…∩ R×EC(rn)

[ER(p) is the inverse of ER(i)] [ER(p) is symmetric]

[ER(p) is functional] [ER(p) is inverse functional]

 

[ER(p) is transitive]

EquivalentProperties(p1 … pn)

ER(pi) = ER(pj) for 1 ≤ i < j ≤ n

SubPropertyOf(p1 p2)

ER(p1) ER(p2)

SameIndividual(i1 … in)

S(ij) = S(ik) for 1 ≤ j < k ≤ n

DifferentIndividuals(i1 … in)

S(ij) S(ik) for 1 ≤ j < k ≤ n

Individual([i] annotation(…) … annotation(…)

    type(c1) … type(cm) pv1 … pvn)

EC(Individual([i] type(c1) … type(cm) pv1 … pvn)) is nonempty

 

 

3.4. オントロジの解釈

2章で示したように、抽象構文のOWLオントロジは公理、事実、importおよび注釈のシーケンスである。import要素の効果は、現在のオントロジへ別のOWLオントロジの内容を輸入することである。Importするオントロジは、Import要素の引数であるURIにあるドキュメントにアクセスすることにより見つけられるものである。OWLオントロジのimport閉包(imports closure)は、そのときのオントロジへimportするオントロジの内容を加えた結果である。これらの内容がさらにimport要素を含んでいる場合、そのプロセスを必要なだけ繰り返す。このプロセスで特定のオントロジが二度以上importされることはないので、ループを扱うことができる。注釈は抽象構文の中でOWLオントロジの意味論上、効果を持たない。

抽象的なOWLの解釈Iは、Iが、Oimport閉包の各公理および事実の解釈であるとき、かつその時のみ、OWLオントロジOの解釈である。抽象的なOWLオントロジが、あるOWL公理(または事実)をentailするとは、オントロジのすべての解釈がそのOWL公理(または事実)の解釈になっている場合である。

同様に、もし、ある抽象的なOWLオントロジの各解釈が別の抽象的なオントロジの解釈である場合、前者のオントロジは後者のオントロジをentailする。ここでは、あるオントロジのimport閉包をとれとは言ってないことに注意−伴意(entailment)を正しく決定するどんな方法でも許されている。

 


4.  RDF N-Triplesへの写像 (mapping)

OWLリファレンス・ドキュメント[OWL Reference]で指定されるように、OWLのための交換構文はRDF/XMLである.さらに、RDF/XMLに基づくOWLドキュメントの意味は、RDF/XMLドキュメントのRDF解析の結果のn-triple[RDF Tests]からのみ与えられる。したがって、抽象構文の形のOWLオントロジを交換構文に翻訳する一つの方法は、収集へ各指令(Directive)n-tripleに展開する変換(transformation)を与える方法である。

ここに使用されるn-triple構文は、QNameを許すタイプのRDFモデル理論[RDF MT].の中で使用される構文である この構文を標準のものに変えるためには、QNameをただ明白なURI参照に変えれば良い。この変換の中で使用されている接頭辞(prefix)rdfrdfsxsdおよびowlだけで、それぞれ、http://www.w3.org/1999/02/22-rdf-syntax-ns#,
http://www.w3.org/2000/01/rdf-schema#,
http://www.w3.org/2001/XMLSchema#, and
http://www.w3.org/2002/07/owl# に展開すればよい。

OWL Lite要素(construct)は、すべてFullな抽象構文の特殊(Special)な場合になっているので、変換はFullなバージョンに対してだけ考えれば十分である。

Each type of directive is translated via one of the transformation rules below.

各タイプの指令(directive)は、以下の変形規則の1つによって翻訳される。 変形規則では、非ターミナルが鍵括弧で囲まれる。非ターミナルの繰り返しは、<description1> … <descriptionn>のようなリスト形式で省略する;(この形式だと、0を含むn個の値の変形が書きやすいので)。抽象構文の(角括弧で囲まれた)オプションの部分は変換の(角括弧によって示された)オプションの部分に対応している。

The left column gives a piece of syntax (S), the center column gives its transformation (T(S)), and the right column gives a node identifier that is the main node of the transformation (M(T(S))), but only for syntactic constructs that can occur as pieces of directives.

下記のテーブルは、抽象構文をOWL交換構文へ変形する変形規則を与える。 左のカラムは構文(S)を与える、真中のカラムはその変換(T(S))、右カラムには、変換の主要なノードのノード識別子(identifier)を与える(M(T(S)))、ただし、指令に現れる構文要素のみである。表中のいくつかは、指令に対する変換である。他の変換は指令の部分のためにある。最後の変形は、シーケンス(抽象構文の一部でない)のためにある。この最後の変形は、他のよりコンパクトで読みやすい変換を作るために使用される。

For many directives these transformation rules call for the transformation of components of the directive using other transformation rules. When the transformation of a component is used in a node position of a triple, the transformation of the construct is part of the production (but only once per production) and the main node of that transformation should be used for that node of the triple. Bnode identifiers here must be taken as local to each transformation, i.e., different identifiers should be used for each invocation of a transformation rule.

多くの指令については、これらの変形規則が、他の変形規則を使用して、指令のコンポーネントの変形を要求する。コンポーネントの変換がtripleのノード位置の中で使用される場合、constructの変形は生産(一度だけ1つの生産当たり)の一部である。また、その変形の主要なノードはtripleのそのノードのために使用されるべきである。

各変形に対してローカルのものとして、Bnode確認者はここに得られるに違いない、つまり、異なる確認者は変形規則の各祈願のために使用されるべきである。

 

抽象構文(およびシーケンス) - S

変換 - T(S)

主要ノード- M(T(S))

<datatypeID>

<datatypeID> rdf:type owl:Datatype .
<datatypeID> rdf:subClassOf rdfs:Literal .

<datatypeID>

<classID>

<classID> rdf:type owl:Class .
<classID> rdf:subClassOf owl:Thing .

<classID>

<individualID>

<individualID> rdf:type owl:Thing .

<individualID>

<datavaluedPropertyID>

<datavaluedPropertyID> rdf:type owl:DatatypeProperty .
<datavaluedPropertyID> rdfs:domain owl:Thing .
<datavaluedPropertyID> rdfs:range rdfs:Literal .

<datavaluedPropertyID>

<individualvaluedPropertyID>

<individualvaluedPropertyID> rdf:type owl:ObjectProperty .
<individualvaluedPropertyID> rdfs:domain owl:Thing .
<individualvaluedPropertyID> rdfs:range owl:Thing .

<individualvalued-
PropertyID>

<datatypeID> <literal>

<datatypeID>:<literal> [[To be fixed.]]

<datatypeID>:<literal>

Annotation( <URI reference> <URI reference> )

# <URI reference> <URI reference> .

 

Annotation( <URI reference> <lexical-form> )

# <URI reference> <lexical-form> .

 

Imports(<URI>)

# owl:imports <URI> .

 

Individual(<iID>
   <annotation1> … <annotationn>
   type(<type1>)…type(<typen>)
   (<pID1> <value1>) … (<pIDn> <valuen>))

<iID> rdf:type T(owl:Thing) .
<iID> T(<annotation1>) . … <iID> T(<annotationn>) .
<iID> rdf:type T(<type1>) . … <iID> rdf:type T(<typen>) .
<iID> <pID1> T(<value1>) . … <iID> <pIDn> T(<valuen>) .

<iID>

Individual(
   <annotation1> … <annotationn>
   type(<type1>)…type(<typen>)
   (<pID1> <value1>) … (<pIDn> <valuen>))

_:x rdf:type T(owl:Thing) .
_:x T(<annotation1>) . … _:x T(<annotationn>) .
_:x rdf:type T(<type1>) . … _:x rdf:type T(<typen>) .
_:x <pID1> T(<value1>) . … _:x <pIDn> T(<valuen>) .

_:x

SameIndividual( <individualID1> … <individualIDn>)

<individualIDi> owl:sameAs <individualIDj> . 1≤i<j≤n

 

DifferentIndividuals(<individualID1> … <individualIDn>)

<individualIDi> owl:differentFrom <individualIDj> . 1≤i<j≤n

 

Class(<classID>
      [partial | complete]
      <annotation1> … <annotationn>)
      <description1> … <descriptionn>)

<classID> rdf:type owl:Class .
<classID> [ rdfs:subClassOf | owl:sameClassAs ] _:x .
_:x T(<annotation1>) . … _:x T(<annotationn>) .
_:x owl:intersectionOf T(SEQ <description1>…<descriptionn>) .

 

EnumeratedClass(<classID>
      <annotation1> … <annotationn>)
      <individualID1> … <individualIDn>)

<classID> rdf:type owl:Class .
<classID> owl:sameClassAs _:x .
_:x T(<annotation1>) . … _:x T(<annotationn>) .
_:x owl:oneOf T(SEQ <individualID1>…<individualIDn>) .

 

DisjointClasses( <description1> … <descriptionn> )

T(<descriptioni>) owl:disjointWith T(<descriptionj>) . 1≤i<j≤n

 

EquivalentClasses( <description1> … <descriptionn>)

T(<descriptioni>) owl:sameClassAs T(<descriptionj>) . 1≤i<j≤n

 

SubClassOf( <description1> <description2>)

T(<description1>) rdfs:subClassOf T(<description2>) .

 

unionOf( <description1> … <descriptionn>)

_:x owl:unionOf T(SEQ <description1>…<descriptionn>) .

_:x

intersectionOf( <description1> … <descriptionn>)

_:x owl:intersectionOf T(SEQ <description1>…<descriptionn>) .

_:x

complementOf(<description>)

_:x owl:complementOf T(<description>) .

_:x

oneOf( <individualID1> … <individualIDn>)

_:x rdf:type owl:Class .
_:x owl:oneOf T(SEQ <individualID1>…<individualIDn>) .

_:x

oneOf( <datatypeID1> <value1> … <datatypeIDn> <valuen>)

_:x rdf:type owl:Datatype .
_:x owl:oneOf
T(SEQ <datatypeID1> <value1>… <datatypeIDn> <valuen>) .

_:x

restriction( <ID> <component1> … <componentn>)

_:x owl:intersectionOf
  T(SEQ(restriction(<ID> <component1>)…
   restriction(<ID> <componentn>))) .

_:x

restriction( <ID> allValuesFrom(<range>))

_:x rdf:type owl:Restriction .
_:x owl:onProperty T(<ID>) .
_:x owl:allValuesFrom T(<range>) .

_:x

restriction( <ID> someValuesFrom(<required>))

_:x rdf:type owl:Restriction .
_:x owl:onProperty T(<ID>) .
_:x owl:someValuesFrom T(<required>) .

_:x

restriction( <ID> value(<value>))

_:x rdf:type owl:Restriction .
_:x owl:onProperty T(<ID>) .
_:x owl:hasValue T(<value>) .

_:x

restriction( <ID> minCardinality(<min>))

_:x rdf:type owl:Restriction .
_:x owl:onProperty T(<ID>) .
_:x owl:minCardinality xsd:decimal"<min>" .

_:x

restriction( <ID> maxCardinality(<max>))

_:x rdf:type owl:Restriction .
_:x owl:onProperty T(<ID>) .
_:x owl:maxCardinality xsd:decimal"<max>" .

_:x

restriction( <ID> cardinality(<card>))

_:x rdf:type owl:Restriction .
_:x owl:onProperty T(<ID>) .
_:x owl:cardinality xsd:decimal"<card>" .

_:x

DatatypeProperty( <name>
   <annotation1> … <annotationn>)
   super(<super1>)…super(<supern>)
   domain(<domain1>)…domain(<domainn>)
   range(<range1>)…range(<rangen>)
   [Functional])

<name> rdf:type owl:DatatypeProperty .
<name> rdfs:domain owl:Thing .
<name> rdfs:range rdfs:Literal .
<name> T(<annotation1>) . … <name> T(<annotationn>) .
<name> rdfs:subPropertyOf T(<super1>) . …
<name> rdfs:subPropertyOf T(<supern>) .
<name> rdfs:domain T(<domain1>) . …
<name> rdfs:domain T(<domainn>) .
<name> rdfs:range T(<range1>) . …
<name> rdfs:range T(<rangen>) .
[<name> rdf:type owl:FunctionalProperty . ]

 

ObjectProperty( <name>
      <annotation1> … <annotationn>)
      super(<super1>)…
      super(<supern>)
      domain(<domain1>)…
      domain(<domainn>)
      range(<range1>)…
      range(<rangen>)
      [inverseOf(<inverse>)]
      [Symmetric]
      [Functional |
       InverseFunctional |
       Transitive])

<name> rdf:type owl:ObjectProperty .
<name> rdfs:domain owl:Thing .
<name> rdfs:range owl:Thing .
<name> T(<annotation1>) . … <name> T(<annotationn>) .
<name> rdfs:subPropertyOf T(<super1>) . …
<name> rdfs:subPropertyOf T(<supern>) .
<name> rdfs:domain T(<domain1>) . …
<name> rdfs:domain T(<domainn>) .
<name> rdfs:range T(<range1>) . …
<name> rdfs:range T(<rangen>) .
[<name> owl:inverseOf T(<inverse>) .]
[<name> rdf:type owl:SymmetricProperty . ]
[<name> rdf:type owl:FunctionalProperty . ]
[<name> rdf:type owl:InverseFunctionalProperty . ]
[<name> rdf:type owl:TransitiveProperty . ]

 

EquivalentProperties( <datavaluedPropertyID1> … <datavaluedPropertyIDn>)

T(<datavaluedPropertyIDi>) owl:samePropertyAs T(<datavaluedPropertyIDj>) . 1≤i<j≤n

 

SubPropertyOf( <datavaluedPropertyID1> <datavaluedPropertyID2>)

T(<datavaluedPropertyID1>) rdfs:subPropertyOf T(<datavaluedPropertyID2>) .

 

EquivalentProperties( <individualvaluedPropertyID1> … <individualvaluedPropertyIDn>)

T(<individualvaluedPropertyIDi>) owl:samePropertyAs T(<individualvaluedPropertyIDj>) . 1≤i<j≤n

 

SubPropertyOf( <individualvaluedPropertyID1> <individualvaluedPropertyID2>)

T(<individualvaluedPropertyID1>) rdfs:subPropertyOf T(<individualvaluedPropertyID2>) .

 

annotation ( <URI reference> <URI reference> )

<URI reference> <URI reference>

 

annotation ( <URI reference> <lexical-form> )

<URI reference> "<lexical-form>"

 

SEQ <item1>…<itemn>

_:l1 rdf:type rdf:List .
_:l1 rdf:first T(<item1>) . _:l1 rdf:rest _:l2 .

_:ln rdf:type rdf:List .
_:ln rdf:first T(<itemn>) . _:ln rdf:rest rdf:nil .

_:l1

 

 

 

 

4.1. N-triple形式のOWL/DLオントロジの定義

A collection of n-triples is an OWL/DL ontology in n-triple form if it is the result of the above transformation of an OWL ontology in abstract syntax form and, moreover,

抽象構文形式のOWLオントロジの上記の変換の結果であるn-tripleの集合(collection)は、n-tripleの形式でのOWL/DLオントロジである、そして、さらに、

1.    the abstract syntax form does not use any URI reference as more than one of a classID, a datatypeID, an individualID, a datavaluedPropertyID, or an individualvaluedPropertyID;
抽象構文形式はclassIDdatatypeIDindividualIDdatavaluedPropertyIDあるいはindividualvaluedPropertyIDのうちの1つ以上にURI参照を使用しない;

2.    the abstract syntax form does not use the URI of the document itself as a URI reference;
抽象構文形式は、URI参照としてドキュメント自体のURIを使用しない;

3.    the abstract syntax form does not use any URI reference that is the first or second argument of an Annotation directive or an annotation portion of a directive as a classID, a datatypeID, an individualID, or a datavaluedPropertyID, nor does it use any URI reference that is the first argument of an Annotation directive or an annotation portion of a directive as an individualvaluedPropertyID;
抽象構文形式は、注釈指令の最初または第2の引数あるいはclassIDdatatypeIDindividualIDあるいはdatavaluedPropertyIDとしての指令の注釈部分でURI参照を使用しない。また、それも、注釈指令の最初の引数あるいはindividualvaluedPropertyIDとして指令の注釈部分でURI参照を使用しない;そして  

4.    the abstract syntax form does not mention any of the URI references from the RDF, RDFS, or OWL namespaces except. rdf:Literal, owl:Thing, and owl:Nothing
抽象構文形式は、rdf:Literal, owl:Thing, and owl:Nothingを除き、RDFRDFSあるいはOWL 名前空間のどのURI参照にも言及しない

This transformation is not injective, as several OWL abstract ontologies that do not use the above reserved vocabulary can map into the same collection of triples. However, the only cases where this can happen is with constructs that have the same meaning, such as several DisjointClasses axioms having the same effect as one larger one.

同じtripleの集合へ写像することができる上記の予約の語彙を使用しないOWL抽象的なオントロジがいくつかあるので、この変換は単射(injective)ではない。 しかしながら、これが起こるかもしれないただ一つの場合は、ある要素(construct)が、DisjointClasses公理のような同じ効果があるより大きい表現を持っている場合である。もし望むなら、標準(canonical)の逆変換を定義することは可能だろう。

 


5.  RDF互換のモデル論的意味論

OWLのためのこのモデル論的意味論は、RDFモデル理論[RDF MT].に定義されるようなRDFS意味論に対し上方互換性をもつ

5.1. OWLRDFS universe

All of the OWL vocabulary is defined on the 'OWL universe', which is a collection of RDFS classes that are intended to circumscribe the domain of application of the OWL vocabulary: The RDFS class extension of owl:Thing comprises the individuals of the OWL universe. The RDFS class extension of comprises the classes of the OWL universe. The RDFS class extension of comprises the properties of the OWL universe.

OWL語彙はすべて、「OWL universe(それはOWL語彙: owl:Thing, owl:Class and owl:Propertyの適用領域を限定するように意図されるRDFSクラスの集合である)上で定義されるowl:ThingRDFSクラス拡張は、OWL universeに個体を含む。owl:ClassRDFSクラス拡張は、OWL universeのクラスを含む。 owl:PropertyRDFSクラス拡張は、OWL universeのプロパティを含む。

There are two different styles of using OWL. In the more free-wheeling style, called OWL/Full here, these three classes are identified with their RDFS counterparts. In OWL/Full, as in RDFS, resources can be both an individual and a class, or, in fact, even an individual, a class, and a property. In the more restrictive style, called OWL/DL here, these three classes are different from their RDFS counterparts and, moreover, pairwise disjoint.

2つの異なるスタイルのOWLの使用い方がある。ここでOWL/Fullと呼ぶ、もっと規則に捕らわれないスタイルの中では、これらの3つのクラスはそれらのRDFS相当物(counterparts)と同一視される。OWL/Fullでは、資源(resource)RDFSでは個体にもクラスにもなれるし、事実(Fact)宣言の中では、個体、クラスおよびプロパティにさえなれる。ここでOWL/DLと呼ばれるより限定的なスタイルでは、これらの3つのクラスがそれらのRDFS相当物とは異なり、さらに、互いに素である。

OWL/DLスタイルは、ある表現力を犠牲にして、伴意(Entailment)の決定可能性(decidability)を得ている。さらに、効率的なDL推論機構により、OWL/DLを処理することができる。両方のスタイルのOWLは、DAML+OILモデル理的意味論からRDFS意味論への素朴な翻訳において欠落していた伴意(Entailment)を提供する。

The chief differences in practice between the two styles lie in the care that is required to ensure that URI references are actually in the appropriate OWL universe. In OWL/Full, no care is needed, as the OWL universe is the same as the RDFS universe. In OWL/DL, typing information must be provided for many of the URI references used. These localizing assumptions are all trivially true in OWL/Full, and can also be ignored when one uses the OWL abstract syntax. But when writing OWL/DL in n-triples close attention must be paid to which parts of the vocabulary can be 'legally' used to refer to things in the OWL universe.

2つのスタイル間の主な実際上の差は、URI参照が適切なOWL universeで現実にあることを保証するために要求される気配りにある。 OWL/Fullでは、OWL universeRDFS universeと同じであるので、そのような配慮はない。OWL/DLでは、URI参照の多くに型(type)情報が供給されるに違いない。 OWL/Fullでは、このようなローカライズの仮定はすべて自明の真実であるし、OWL抽象構文を使用する場合、無視することができる。しかし、OWL/DLn-tripleを書く時には、語彙のどの部分がOWL universeに照らして「合法」に使われているか細心の注意を払わなければならない。

 

5.1.1. 修飾された名前(Qualified Names)およびURI参照(References)

Throughout this section qualified names are used as shorthand for URI references. The namespace identifiers used in such names, namely rdf, rdfs, xsd, and owl, should be used as if they are given their usual definitions. Throughout this section VRDFS is the RDF and RDFS built-in vocabulary, i.e., rdf:type, rdf:Property, rdfs:Class, rdfs:subClassOf, …, minus rdfs:Literal; and VOWL is the OWL built-in vocabulary, i.e., owl:Class, owl:onProperty, …, minus owl:Thing and owl:Nothing

この章の全体にわたって、修飾された名前(Qualified Name)URI参照のために略記(shorthand)として使用される あたかもそれらが通常の定義を与えられるかのように、そのような名前(すなわちrdfrdfsxsdowl)の中で使用される名前空間(namespace)識別子が使用されるべきである。この章の全体にわたって、VRDFSRDFおよびRDFSbuilt-inの語彙(つまりrdf:type, rdf:Property, rdfs:Class, rdfs:subClassOf, …, minus rdfs:Literal)VOWLOWLbuilt-inの語彙(つまりowl:Class, owl:onProperty, …, minus owl:Thing and owl:Nothing)を表す。

Throughout this section D will be a datatyping scheme, i.e., a set of URI references, the datatypes of D, that have class extensions that are subsets of LV and mappings from literal strings to elements of their class extension. A typed literal string is a pair, d,s, consisting of a datatype and a literal string. For d,s a typed literal string, D(d,s) is the element of LV that is the literal value for string s in datatype d.

この章の全体にわたって、Ddatatyping schemeつまり、URI参照の集合、Ddatatypes、それ、クラス拡張を行っている、それ、文字列からクラス拡張の要素までの写像とLVの部分集合である。 型付けられた文字列(typed literal string)は、ds、のペアで、datatypeと文字列から成る。型付けられた文字列ds、に対し、D(ds)datatype dの中の文字列sに見合う値(Literal Value)であるLVの要素である。

 

5.2. OWLの解釈

The semantics of OWL/DL and OWL/Full are very similar. The common portion of their semantics is thus given first, and the differences left until later.

OWL/DLOWL/FULLの意味論は、非常に類似している。それらの意味論の共通部分を最初に述べ、そして違いについてはその後述べる。

From the RDF model theory [RDF MT] for V a set of URI references containing the RDF and RDFS vocabulary, an RDFS interpretation over V is a triple I = < RI, EXTI, SI > Here RI is the domain of discourse or universe, i.e., a set that contains the denotations of URI references. EXTI is used to give meaning to properties, and is a mapping from RI to sets of pairs over RI × (RILV). Finally, SI is a mapping from V to RI that takes a URI reference to its denotation. CEXTI is then defined as CEXTI(c) = { xRI | <x,c>EXTI(SI(rdf:type)) }. RDFS interpretations must meet several conditions, as detailed in the RDFS model theory. For example, SI(rdfs:subClassOf) must be a transitive relation.

RDFモデル理論 [RDF MT] からRDFおよびRDFS語彙を含んでいるURI参照の集合Vに対し、V上のRDFS解釈I3つ組みI=<RIEXTISI>である。ここで、RIは談話の領域(domain of discourse)あるいはiniverse(つまりURI参照の外延(denotation)を含んでいる集合(set))である。EXTIはプロパティに意味を与えるために使用され、RIからRI×(RILV)上のペアの集合への写像である。 最後に、SIは、Vからその外延(denotation)へのURI参照をとるRIへ写像である。このとき、CEXTICEXTI(c) = { xRI | <x,c>EXTI(SI(rdf:type)) }と定義される。RDFSモデル理論の中で詳述されるように、RDFS解釈はいくつかの条件を満たすに違いない。例えば、SI(rdfs:subClassOf)は推移的な関係であるに違いない。

An OWL interpretation, I = < RI, EXTI, SI >, over a vocabulary V, where V includes VRDFS, rdfs:Literal, VOWL, owl:Thing, and owl:Nothing, is an RDFS interpretation over V that satisfies the following conditions:

VVRDFS, rdfs:Literal, VOWL, owl:Thing, owl:Nothingを含んでいるとき、V上のOWL解釈、I = < RI, EXTI, SI >は、以下の条件を満足する、V上のRDFS解釈である:

 

OWLクラス間の関係 (Relationships between OWL classes)

E

(If E is)

CEXTI(SI(E))

(then CEXTI(SI(E))=)

条件

(with)

owl:Thing

IOT

IOTRI

owl:Nothing

{}

 

rdfs:Literal

LV

 

owl:Class

IOC

IOCCEXTI(SI(rdfs:Class))

owl:Restriction

IOR

IORIOC

owl:Datatype

IDC

IDCCEXTI(SI(rdfs:Class))

owl:Property

IOP

IOPCEXTI(SI(rdf:Property))

owl:ObjectProperty

IOOP

IOOPIOP

owl:DataTypeProperty

IODP

IODPIOP

rdf:List

IL

ILRI

 

OWLクラスのメンバーシップMembership in OWL classes

E

(If E is)

SI(E)は以下の要素
(then SI(E)
)

owl:Thing

IOC

owl:Nothing

IOC

rdfs:Literal

IDC

a datatype of D

IDC

rdf:nil

IL

 

OWLクラスのメンバーの条件(Characteristic) Characteristics of members of OWL classes

E

(If E is)

eCEXTI(SI(E))に対し
(then if e
CEXTI(SI(E)) then)

owl:Class

CEXTI(e)IOT

owl:Datatype

CEXTI(e)LV

owl:ObjectProperty

EXTI(e)IOT×IOT

owl:DatatypeProperty

EXTI(e)IOT×LV

The next constraints are IFF, which may be harder to deal with in OWL/DL, as they extend the various categories of properties to all of owl:Property. However, in OWL/DL ontologies you can neither state that an owl:DatatypeProperty is inverse functional nor ask whether it is, so there should be not adverse consequences.

さまざまなプロパティのカテゴリーをowl:Propertyに拡張するので、OWL/DLで扱うのはより困難かもしれないが、次の制約は必要十分条件(IFF)で与えている。しかしながら、OWL/DLオントロジでは、owl:DatatypePropertyは逆関数的であると宣言することも、それがそうかどうか、尋ねることもできない、したがって、そこに、逆方向はあってはならない。

 

If E is

then cCEXTI(SI(E)) iff cIOP and

owl:SymmetricProperty

<x,y> EXTI(c) <y, x>EXTI(c)

owl:FunctionalProperty

<x,y1> and <x,y2> EXTI(c) y1 = y2

owl:InverseFunctionalProperty

<x1,y>EXTI(c) <x2,y>EXTI(c) x1 = x2

owl:TransitiveProperty

<x,y>EXTI(c) <y,z>EXTI(c) <x,z>EXTI(c)

 

RDFS domains and ranges are strengthened to if-and-only-if over the OWL universe.

RDFS領域(domain)および範囲(range)は、OWL universe上の必要十分条件により強化される(strengthened)

 

If E is

then for

<x,y>CEXTI(SI(E)) iff

rdfs:domain

xIOP,yIOC

<z,w>EXTI(x) zCEXTI(y)

rdfs:range

xIOP,yIOCIDC

<w,z>EXTI(x) zCEXTI(y)

 

いくつかのOWLプロパティのiff条件 (Some OWL properties have iff characterizations) 

 

If E is

then <x,y>EXTI(SI(E)) iff

owl:sameClassAs

x,yIOC CEXTI(x)=CEXTI(y)

owl:disjointWith

x,yIOC CEXTI(x)CEXTI(y)={}

owl:samePropertyAs

x,yIOP EXTI(x) = EXTI(y)

owl:inverseOf

x,yIOOP <u,v>EXTI(x) iff <v,u>EXTI(y)

owl:sameIndividualAs

x = y

owl:sameAs

x = y

owl:differentFrom

x y

 

いくつかのOWLプロパティのonly-if条件

 

C上のシーケンス y1,…,yn l1とするとき iff n=0 and l1=SI(rdf:nil) or n>0 and l1IL and l2, …, ln IL such that <l1,y1>EXTI(SI(rdf:EXTI(SI(rdf:))  first)), y1CEXTI(C), <l1,l2>EXTI(SI(rdf:rest)), …,

<ln,yn>EXTI(SI(rdf:first)), ynCEXTI(C), and <ln,SI(rdf:nil)>EXTI(SI(rdf:rest)).

 

If E is

then if <x,y>EXTI(SI(E)) then

owl:complementOf

x,y IOC and CEXTI(x)=IOT-CEXTI(y)

 

If E is

then if <x,l>EXTI(SI(E)) then

owl:unionOf

xIOC and l is a sequence of y1,…yn over IOC and CEXTI(x) = CEXTI(y1)∪…∪CEXTI(yn)

owl:intersectionOf

xIOC and l is a sequence of y1,…yn over IOC and CEXTI(x) = CEXTI(y1)∩…∩CEXTI(yn)

owl:oneOf

xCEXTI(rdfs:Class) and l is a sequence of y1,…yn over RILV and CEXTI(x) = {y1,..., yn}

 

If E is

and

then if <x,l>EXTI(SI(E)) then

owl:oneOf

l is a sequence of y1,…yn over LV

xIDC and CEXTI(x) = {y1,..., yn}

owl:oneOf

l is a sequence of y1,…yn over IOT

xIOC and CEXTI(x) = {y1,..., yn}

 

If

then xIOR, yIOC, pIOP, and CEXTI(x) =

<x,y>EXTI(SI(owl:allValuesFrom)))

<x,p>EXTI(SI(owl:onProperty)))

{uIOT | <u,v>EXTI(p) vCEXTI(y) }

<x,y>EXTI(SI(owl:someValuesFrom)))

<x,p>EXTI(SI(owl:onProperty)))

{uIOT | <u,v>EXTI(p) vCEXTI(y) }

<x,y>EXTI(SI(owl:hasValue)))

<x,p>EXTI(SI(owl:onProperty)))

{uIOT | <u, y>EXTI(p) }

If

then xIOR, yLV, y is a non-negative integer, pIOP, and CEXTI(x) =

<x,y>EXTI(SI(owl:minCardinality)))

<x,p>EXTI(SI(owl:onProperty)))

{uIOT | card({v : <u,v>EXTI(p)}) ≥ y }

<x,y>EXTI(SI(owl:maxCardinality)))
<x,p>
EXTI(SI(owl:onProperty)))

{uIOT | card({v : <u,v>EXTI(p)}) ≤ y }

<x,y>EXTI(SI(owl:cardinality)))
<x,p>
EXTI(SI(owl:onProperty)))

{uIOT | card({v : <u,v>EXTI(p)}) = y }

RI contains elements corresponding to all possible OWL descriptions and data ranges

RIはあらゆるOWL記述(description)やデータ領域(data range)に対応する要素を含んでいる。

 

The first three conditions require the existence of the finite sequences that are used in some OWL constructs. The remaining conditions require the existence of the OWL descriptions and data ranges

最初の3つの条件は、あるOWLの要素で使用される有限のシーケンスの存在を要求する。残りの条件は、OWL記述(description)やデータ領域(data range)の存在を要求する。

 

もし以下が存在すれば

l1、…、lnILが存在して

x1, …, xn IOC

<l1,x1> EXTI(SI(rdf:first)), <l1,l2> EXTI(SI(rdf:rest)), …

<ln,xn> EXTI(SI(rdf:first)), <ln,SI(rdf:nil)> EXTI(SI(rdf:rest))

x1, …, xn IOTLV

<l1,x1> EXTI(SI(rdf:first)), <l1,l2> EXTI(SI(rdf:rest)), …

<ln,xn> EXTI(SI(rdf:first)), <ln,SI(rdf:nil)> EXTI(SI(rdf:rest))

 

もし以下が存在すれば

yが存在して

l, a sequence of x1,…,xn over IOC

yIOC, <y,l> EXTI(SI(owl:unionOf))

l, a sequence of x1,…,xn over IOC

yIOC, <y,l> EXTI(SI(owl:intersectionOf))

l, a sequence of x1,…,xn over IOTLV

yCEXTI(SI(rdfs:Class)), <y,l> EXTI(SI(owl:oneOf))

もし以下が存在すれば

yIOCが存在して

x IOC

<y,x> EXTI(SI(owl:complementOf))

もし以下が存在すれば

yIORが存在して

x IOP w IOC IDC

 

<y,x> EXTI(SI(owl:onProperty))

<y,w> EXTI(SI(owl:allValuesFrom))

x IOP w IOC IDC

<y,x> EXTI(SI(owl:onProperty))

<y,w> EXTI(SI(owl:someValuesFrom))

x IOP w IOT LV

<y,x> EXTI(SI(owl:onProperty))
<y,w>
EXTI(SI(owl:hasValue))

x IOP w LV w は非負整数

<y,x> EXTI(SI(owl:onProperty))
<y,w>
EXTI(SI(owl:minCardinality))

x IOP w LV w は非負整数

<y,x> EXTI(SI(owl:onProperty))

<y,w> EXTI(SI(owl:maxCardinality))

x IOP w LV w は非負整数

<y,x> EXTI(SI(owl:onProperty))

<y,w> EXTI(SI(owl:cardinality))

 

5.3. OWL/DL

OWL/DL augments the above conditions with a separation of the domain of discourse into several disjoint parts.This separation has two consequences. First, the OWL portion of the domain of discourse becomes standard first-order, in that predicates (classes and properties) and objects are disjoint. Second, the OWL portion of a OWL/DL interpretation can be viewed as a Description Logic interpretation for a particular expressive Description Logic.

OWL/DLは、対象領域をいくつかの互いに素な部分に分割して、上記の条件を増やす。この分離は2つの結果を持っている。最初に、OWLの対象領域部分は、述語(クラスとプロパティ)とオブジェクトが互いに素である、標準の第1階述語論理になる。 次に、OWLOWL/DL解釈部分は、特別の表現された記述論理(Description Logic)に対する記述論理の解釈として見ることができる。

A OWL/DL interpretation over a vocabulary V', where V' includes VRDFS, rdfs:Literal, VOWL, owl:Thing, and owl:Nothing, is an OWL interpretation as above that satisfies the following conditions.

VRDFSrdfs:LiteralVOWL owl:Thing, owl:Nothingを含む、語彙V'の上のOWL/DL解釈は、上記の意味でのOWL解釈で下記条件を満たす。

 

対象領域は、数部分に分割される。(The domain of discourse is divided up into several pieces.

LV, IOT, IOC, IDC, IOP, and IL are all pairwise disjoint.

LVIOTIOCIDCIOPおよびILは、すべてペア毎に互いに素である

There is a disjoint partition of IOP into IOOP and IODP.

IOOPIODPIOPの互いに素な分割がある。

For n VRDFSVOWL - {rdf:nil}, SI(n) RI - (LVIOTIOCIDCIOPIL).

 

5.3.1. OWL/DL 伴意(Entailment)

Now entailment in OWL/DL can be defined. Let K be an RDF graph and let V be a vocabulary that includes VRDFS, rdfs:Literal, VOWL, owl:Thing, and owl:Nothing. An OWL/DL interpretation of K is an OWL/DL interpretation over V that is also an RDFS interpretation of K. Let K be a set of n-triples. The imports closure of K is the smallest superset of K such that if the imports closure of K contains a triple of the form x owl:imports y . where x is the empty URI and y is any URI then the imports closure of K contains the n-triples resulting from the RDF parsing of the document, if any, accessible at y into n-triples.

ここで、OWL/DLの中の伴意(Entailment)は定義することができる。[1]

KRDFグラフ、VVRDFS, rdfs:Literal, VOWL, owl:Thing, and owl:Nothing.を含む語彙とする。KOWL/DL解釈は、KRDFS解釈であるVの上のOWL/DL解釈である。

Kn-tripleの集合としよう。Kinport閉包は、もし、Kinport閉包がx owl:inport y 形のtripleを含む(ここで、xは空のURIで、yが任意のURIである)なら、Kinport閉包が、yでアクセス可能なドキュメント(もしあれば)のRDF解析から生じるn-triple含むという条件での、Kの最も小さなスーパーセットである

Let K and Q be collections of n-triples and let V be a vocabulary that includes VRDFS, rdfs:Literal, VOWL, owl:Thing, and owl:Nothing. Then K OWL/DL entails Q whenever all OWL/DL interpretations of the RDF graph specified by imports closure of K are also OWL/DL interpretations of the RDF graph specified by imports closure of Q .

KQn-tripleの集合とする、またVVRDFS, rdfs:Literal, VOWL, owl:Thing, and owl:Nothingを含んでいる語彙とする。このとき、Kinport閉包によって指定されたRDFグラフのOWL/DL解釈がすべて、常にQinport閉包によって指定されたRDFグラフのOWL/DL解釈でもある場合は、KQOWL/DLとして entailする。

 

5.3.2. 直接意味論との対応

One way to automatically obtain typing information for the vocabulary is to use translations into n-triples of certain kinds of OWL ontologies in the abstract syntax, as such translations contain information on which kind of entity a URI reference denotes. This is made more formal below.

自動的に語彙のために型(type)情報を得るひとつの方法は、抽象構文のある種類のOWLオントロジのn-tripleへの変換(transration) (この変換は、URI参照がどの種類の実体を表示するかについての情報を含んでいる)を使用することである。これは以下より形式的である。

A separated OWL vocabulary, V', is a set of URI references with a disjoint partition V' = < VI, VC, VD, VOP, VDP >, where owl:Thing and owl:Nothing are in VC, rdfs:Literal is in VD, and all the elements of D are in VD. Further V' is disjoint from VRDFSVOWL.

分離されたOWL語彙 (V')は互いに素(disjoint)な分割V’=<VIVCVDVOPVDP>を備えたURI参照の集合であるである。ここで、owl:Thing, owl:Nothing VCに属し, rdfs:Literal VDに属し、Dのすべての要素は、VDに属す。さらにV' VRDFSVOWLと互いに素である。

An OWL abstract ontology with separated names over a separated OWL vocabulary V' = < VI, VC, VD, VOP, VDP > is a set of OWL axioms and facts in the abstract syntax without annotations as in Section 2 where <individualID>s are taken from VI, <classID>s are taken from VC, <datatypeID>s are taken from VD, <individualvaluedPropertyIDs> are taken from VOP, and <datavaluedPropertyID>s are taken from VDP.

分離されたOWL語彙V'=<VIVCVDVOPVDP>の上の分離された名前を持つ抽象OWLオントロジは、2章で示したような注釈のない抽象構文のOWL公理と事実の集合である。ここで、<individualID>VIから得られ、<classID>VCから得られる。<datatypeID>VDから得られる。<individualvaluedPropertyID>VOPから得られる。また、<datavaluedPropertyID>VDPから得られる。

Let T be the mapping from OWL ontologies in the abstract syntax to n-triples. Let V' = < VI, VC, VD, VOP, VDP > be a separated OWL vocabulary. Let K and Q be OWL abstract syntax ontologies with separated names over V' and let V = V' VRDFS VOWL. Then it is the case that K entails Q if and only if T(K) OWL/DL entails T(Q). The proof is contained in Appendix A.1.

Tを抽象構文のOWLオントロジからn-tripleへの写像とし、 V'=<VIVCVDVOPVDP>を分離されたOWL語彙とする。KQV'の上の分離された名前を持つOWL抽象構文オントロジとし、V=V'VRDFSVOWLとする。その時、T(K)T(Q)OWL/DL entailする場合、およびその場合のみ、KQentailする。証明は付録A.1に含まれている。

 

5.4.  OWL/Full

OWL/Full augments the common conditions with conditions that force the OWL and RDFS universes to be the same.

OWL/FULLでは、共通な条件にOWLRDFS universeが同じという条件が加わる。

A OWL/Full interpretation over a vocabulary V, where V includes VRDFS, rdfs:Literal, VOWL, owl:Thing, and owl:Nothing, is an OWL interpretation as above that satisfies the following conditions.

VRDFSrdfs:LiteralVOWLowl:Thing, owl:Nothingを含む、語彙V'の上のOWL/Full解釈は、上記の意味でのOWL解釈で下記条件を満たす。

 

IOT = RI

IOC = CEXTI(SI(rdfs:Class))

IOP = CEXTI(SI(rdf:Property))

OWL/Full entailment is defined in same manner as OWL/DL entailment.

OWL/Fullの伴意(Entailment)は、OWL/DL伴意(Entailment)と同様に定義される。

Let K,C be collections of n-triples such that each of K, C, and KC is the translation of some OWL ontology in the abstract syntax with separated vocabulary. Then K OWL/Full entails C if K OWL/DL entails C. An initial sketch of the proof is contained in Appendix A.2

KCを、各々のKCおよびKCがそ、分離された語彙を持つある抽象構文のOWLオントロジの変換(translation)結果であるn-tripleの集合とする。このとき、KCOWL/DL entailするなら、KCOWL/Full entailする。証明の初期のスケッチは付録A.2に含まれている。


付録A.  証明 (参考)

 (略)


付録B.  (参考)

This appendix gives examples of the concepts developed in the rest of the document.

この付録は、ドキュメントの残りの中で開発されていた概念の例を与える。

 

B.1 抽象構文からN-Tripleへの写像の例

4(Section 4)の変換ルールにより、

 

  DatatypeProperty(ex:name)
  ObjectProperty(ex:author)
  Individual(type(ex:Book) (ex:author (Individual (ex:name xsd:string"Fred"))))

は、

 

  [ex:name] [rdf:type] [owl:DatatypeProperty] .
  [ex:name] [rdfs:domain] [owl:Thing] .
  [ex:name] [rdfs:range] [rdfs:Literal] .
 
  [ex:author] [rdf:type] [owl:ObjectProperty] .
  [ex:author] [rdfs:domain] [owl:Thing] .
  [ex:author] [rdfs:range] [owl:Thing] .
 
  [ex:book] [rdf:type] [owl:Class] .
  [ex:book] [rdfs:subClassOf] [owl:Thing] .
 
  _:x [rdf:type] [owl:Thing] .
  _:x [rdf:type] [ex:Book] .
  _:x [ex:author] _:x1 .
  _:x1 [rdf:type] [owl:Thing] .
  _:x1 [ex:name] xsd:string"Fred" .

に変換され、そして

 

  ObjectProperty(ex:enrolledIn)
  Class(ex:Student complete ex:Person
                   restriction(ex:enrolledIn allValuesFrom(ex:School) minCardinality(1)))
 

は、以下に変換される。

 

  [ex:enrolledIn] [rdf:type] [owl:ObjectProperty] .
  [ex:enrolledIn] [rdfs:domain] [owl:Thing] .
  [ex:enrolledIn] [rdfs:range] [owl:Thing] .
 
  [ex:Person] [rdf:type] [owl:Class] .
  [ex:Person] [rdf:subClassOf] [owl:Thing] .
 
  [ex:School] [rdf:type] [owl:Class] .
  [ex:School] [rdf:subClassOf] [owl:Thing] .
 
  [ex:Student] [rdf:type] [owl:Class] .
  [ex:Student] [rdf:subClassOf] [owl:Thing] .
 
  [ex:Student] [owl:sameClassAs] _:x .
  _:x [owl:intersectionOf] _:l1 .
  _:l1 [rdf:type] [rdf:List] .
  _:l1 [rdf:first]  [ex:Person] .
 
  _:l1 [rdf:rest] [rdf:nil] .
  _:l2 [rdf:type] [rdf:List] .
  _:l2 [rdf:first]  _:lr .
  _:l2 [rdf:rest] [rdf:nil] .
  _:lr [owl:intersectionOf] _:lr1 .
  _:lr1 [rdf:type] [rdf:List] .
  _:lr1 [rdf:first] _:r1 .
 
  _:lr1 [rdf:rest] _:lr2 .
  _:lr2 [rdf:type] [rdf:List] .
  _:lr2 [rdf:first] _:r2 .
  _:lr2 [rdf:rest] [rdf:nil] .
  _:r1 [rdf:type] [owl:Restriction] .
  _:r1 [owl:onProperty] [ex:enrolledIn] .
  _:r1 [owl:allValuesFrom] [ex:School] .
 
  _:r2 [rdf:type] [owl:Restriction] .
 
  _:r2 [owl:onProperty] [ex:enrolledIn] .
  _:r2 [owl:minCardinality] xsd:decimal"1" .
 

B.2 OWL/DLOWL/Fullの含意(Entailment)の例

OWL/DL supports the entailments that one would expect, as long as the vocabulary can be shown to belong to the appropriate piece of the domain of discourse.

OWL/DLは、語彙が適切な対象領域に属すると示すことができるときに限り、人が期待するような、含意(Entailment)をサポートする。

 

例えば、

John friend Susan は 以下をOWL/DL entailしない。

John friend Susan does not OWL/DL entail

and so all this would need to be added explicitly as an antecedent in order to draw the conclusion

 

John rdf:type owl:Thing .

Susan rdf:type owl:Thing .

friend rdf:type owl:ObjectProperty .

 

したがって、これはすべて、結論を引き出すために前提として明示的に加えられる必要があるだろう。

 

John rdf:type _:x .

_:x owl:onProperty friend .

_:x owl:minCardinality 1 .

 

However, once these extra conditions are added, all natural entailments follow, except for those that involve descriptions with loops.

しかしながら、一旦これらの条件が加えられれば、記述がループを含んでいるものを除いて自然な含意(entailment)はすべてフォローされる

 For example,

例えば、  

John rdf:type owl:Thing .

friend rdf:type owl:ObjectProperty .

John rdf:type _:x .

_:x owl:onProperty friend .

_:x owl:maxCardinality 0 .

は、そのようなループする記述用の理解法則がないので、以下を含意しない。

John rdf:type _:x .

_:y owl:onProperty friend .

_:y owl:allValuesFrom _:y .

because there are no comprehension principles for such looping descriptions.

 It is precisely the lack of such comprehension principles that prevent the formation of paradoxes in OWL/DL while still retaining natural entailments.

これなどは正に、自然な伴意(Entailment)を保ちながら、OWL/DLで逆説が構成されるのを防ぐような理解法則の不足していることを示している。

 

In OWL/DL one can repair missing localizations in any separated-syntax KB by adding a particular set of localizing assertions consisting of all triples of the form

OWL/DLでは、以下のような特別のセッのtripleを付け加えることにより、分離された構文のKBの欠落したローカライズを修理することができる。

 

<individual> rdf:type owl:Thing .

<class> rdf:type owl:Class .

<oproperty> rdf:type owl:ObjectProperty .

<dtproperty> rdf:type owl:DataTypeProperty .

 

Call the result of adding all such assertions to a OWL/DL KB the localization of the KB.

OWL/DL KBにそのような主張をすべて加える結果をKBのローカライズと呼ぶ、。

 

OWL/Full supports the entailments that one would expect, and there is no need to provide typing information for the vocabulary.

OWL/十分は、人が期待するような伴意(Entailment)をサポートするのに、語彙に対してタイプ情報を提供する必要はない。 For example,

例えば、

John friend Susan .

は、以下を OWL/Full entailする。

 

John rdf:type _:x .

_:x owl:onProperty friend .

_:x owl:minCardinality 1 .

 


 



[1]参考:ある知識ベース KBが与えられたとき、もし文αが 必然的に(世界および解釈によらずに)真となるとき

KBがαを伴意するといい、 KB |= α と表す