This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
知識表現、特にセマンティックウェブにおいて、メタクラスとは、そのインスタンス自体がクラスとなることができるクラスです。プログラミング言語におけるメタクラスの役割と同様に、オントロジー言語におけるメタクラスは、概念階層に分類できるという同じクラスの能力を維持しながら、本来は個体にのみ適用可能なプロパティを持つことができます。これにより、メタクラスで記述されたステートメントを用いて、セマンティック推論システムがメタクラスのインスタンスに関する知識を推論することが可能になります。このように、メタクラスは、ユーザーにとって直感的な方法で知識表現の表現力を高めます。
クラスは個体の集団を表現するのに適しているが、メタクラスはその機能の1つとして、オントロジーの概念的次元を表現するのに使用できる。[1]メタクラスは、 Webオントロジー言語(OWL)とデータモデリング語彙RDFS でサポートされる。メタクラスは、rdf:typeとrdfs:subClassOf(一般にインスタンスおよびサブクラスと呼ばれる組み込みプロパティ)を含む主張の目的語として設定することでモデル化されることが多い。 インスタンスは、主張の 主語がインスタンス、つまりクラスのメンバーである個体であることを含意する。サブクラスは、主語がクラスであることを含意する。インスタンスおよびサブクラスのコンテキストでは、メタクラスと通常のクラスの主な違いは、メタクラスはクラスで使用されるインスタンスの主張の目的語であるのに対し、通常のクラスはそのような主張の目的語ではないという点である。 (たとえば、クレームでは、Bob は主語でありインスタンスですが、オブジェクトである Human は通常のクラスです。ただし、さらにクレームによって、「動物種」はクラスでもあるメンバー「Human」を持つため、メタクラスになります)。
Bob instance of HumanHuman instance of Animal species
OWL 2 DLは、パンニング[2]と呼ばれる機能によってメタクラスをサポートしています。パンニングでは、1つのエンティティが、その構文コンテキストに応じてクラスと個体という2つの異なる種類のものとして解釈されます。例えば、パンニングによって、オントロジーは、、、といった概念階層を持つことができます。この場合、パンニングされたエンティティは、クラス(2番目のクレーム)とインスタンス(3番目のクレーム)として表現されるため、イヌワシとなります。一方、メタクラスは、クラスであるインスタンスを持つため、種となります。パンニングにより、通常のインスタンスにのみ適用される他のプロパティを、クラスに直接適用することもできます。例えば、「イヌワシの保全状況最も懸念が低い」などです。[3]Harry the eagle instance of golden eaglegolden eagle subclass of birdgolden eagle instance of species
セマンティック ウェブ言語は知識表現、記述論理、形式オントロジーの分野から生まれたため、 JavaやPythonなどの従来のプログラミング言語よりも哲学的オントロジーと密接な関係があります。したがって、メタクラスの本質は抽象オブジェクト、抽象と具象、型とトークンの区別などの哲学的概念によって決まります。メタクラスにより、概念を他の概念のトークンとして解釈することが可能になりますが、同時にオントロジー上のステータスは型として保持されます。これにより、型を列挙しながらも、型から継承する機能も保持されます。たとえば、メタクラスを使用すると、機械推論エンジンは人間にわかりやすいオントロジーから周期表にいくつの元素があるか、または陽子の数が化学元素の特性であり同位体が元素のサブクラスである場合に、同位体水素 2にいくつの陽子が存在するかを推論できます。
メタクラスは、単純な型理論[4]と同様に、レベル別に編成されることがあります。型理論[4]では、メタクラスではないクラスは第1レベルに割り当てられ、第1レベルのクラスのクラスは第2レベルに割り当てられ、第2レベルのクラスのクラスは次のレベルに割り当てられ、というように続きます。[5]
例
タイプとトークンの区別に従って、エイブラハム・リンカーンや火星などの現実世界のオブジェクトは、類似のオブジェクトのクラスに再グループ化されます。エイブラハム・リンカーンは人間のインスタンス、火星は惑星のインスタンスであると言われています。これは一種のis-a関係です。メタクラスはクラスのクラスであり、たとえば核種の概念があります。化学では、原子は元素、より具体的には同位体に分類されることがよくあります。最後に飲んだコップの水には多くの水素原子があり、それぞれが水素のインスタンス です。 原子のクラスである水素自体は、核種のインスタンスです。核種はクラスのクラスであるため、メタクラスです。
実装
RDFとRDFS
RDFでは、rdf:typeプロパティは、リソースがクラスのインスタンスであることを示すために使用されます。[6]これにより、rdf:typeを連鎖的に 使用することで、メタクラスを簡単に作成できます。 [要出典] [疑わしい-議論]例えば、次の2つのトリプルでは、
ハリー・ザ・イーグル rdf:type イヌワシ イヌワシ rdf:type 種
リソースspeciesはメタクラスです。[疑わしい–議論する]なぜなら、最初のステートメントではgolden eagleがクラスとして使用されており、2 番目のステートメントではクラスgolden eagle がクラスspeciesのインスタンスであると言われているからです。
RDFは、組み込み語彙で定義されているプロパティ以外のプロパティを作成する手段として、rdf:Propertyも提供しています。プロパティはメタクラスで直接使用できます。例えば、「 species quantity 8.7 million [ broken anchor ]」のように、quantityはrdf:Propertyで定義されたプロパティであり、speciesは前述の例のメタクラスです。
RDFの拡張であるRDFSは、rdfs:Classとrdfs:subClassOfを導入し、語彙による概念の分類方法を拡充しました。[7] [8] rdf:typeは語彙でインスタンス化を表すことができるの に対し、rdfs:subClassOfプロパティは語彙で包含を表すことを可能にします。したがって、RDFSは語彙で分類法(包含階層または概念階層とも呼ばれる)を表すことを可能にし、これはRDFによって可能になった 型とトークンの区別への重要な追加です。
注目すべきは、リソースrdfs:Classがそれ自身のインスタンスであることです[7]。これは、言語の内部実装におけるメタクラスの使用とrdf:typeの反射的な使用の両方を示しています。RDFSはそれ自身のメタモデルです[9]
フクロウ
OWL1 -DLのような一部のOWLフレーバーでは、実体はクラスまたはインスタンスのいずれかであり、両方であることはできません。この制限により、メタクラスとメタモデリングは禁止されています。[10]これはOWL1の完全版には当てはまりませんが、これによりモデルは計算的に決定不能になります。 [11] OWL2 では、メタクラスはパンニング、つまりクラスを個体のように扱う方法で実装できます。 [2]オントロジーのプロパティをメタレベルで検証するために、他のアプローチも提案され、使用されています。 [12]
駄洒落
OWL 2は、パンニングと呼ばれる機能を通じてメタクラスをサポートしています。パンニングによって実装されたメタクラスでは、同じ主語が、その構文コンテキストに応じて、クラスと個体という根本的に異なる2つの種類のものとして解釈されます。これは、自然言語におけるパンニングに似ています。自然言語では、同じ単語の異なる意味を強調することで、要点を明確にします。自然言語では、パンニングは一般的にユーモアや修辞効果を目的として使用されますが、セマンティックウェブ技術におけるパンニングの主な目的は、概念をより簡単に表現し、日常会話や学術文献での議論に近いものにすることです。
OWL 2では同じシンボルが異なる役割を担うことを許可していますが、その標準的な意味論(直接意味論として知られています)では、シンボルが個体、クラス、プロパティのいずれとして使用されるかによって、シンボルの解釈が異なります。[13] [14]
プロテジェ
オントロジーエディタProtégéでは、メタクラスはインスタンスとなる他のクラスのテンプレートです。[15]
分類

Cyc AIプロジェクトのようないくつかのオントロジーは、クラスとメタクラスを分類します。[5]クラスは固定順序クラスと可変順序クラスに分けられます。固定順序クラスの場合、個体を見つけるために必要なトリプルの「インスタンス」の数に関して個体までの距離を測定することで、メタクラスの順序が決定されます。メタクラスではないクラスは個体のクラスなので、その順序は「1」(第一順序クラス)です。第一順序クラスのクラスであるメタクラスの順序は「2」(第二順序クラス)などです。一方、可変順序メタクラスはインスタンスを持つことができます。可変順序メタクラスの一例として、すべての固定順序クラスのクラスが挙げられます。
参照
参考文献
- ^ Alain Pirotte、David Massart (2004). 「2つの分類法の記述と実体化の統合」(PDF) . Journal of Object Technology .
- ^ ab 「OWL 2 Webオントロジー言語の新機能と根拠(第2版)」W3C 。 2015年3月7日閲覧。
- ^ Robert Stevens、Alan Rector (2011年5月13日). 「オントロジーにおける高次知識」ontogenesis.knowledgeblog.org .
- ^ ホワイトヘッド、アルフレッド・ノース;ラッセル、バートランド(1910年)『プリンキピア・マセマティカ』第1巻(第1版)、ケンブリッジ:ケンブリッジ大学出版局、JFM 41.0083.02
- ^ ab Foxvog, D. (2005). 高階クラスによるインスタンスのインスタンスモデル化. オントロジーの基礎的側面に関するワークショップ (FOnt 2005), 第28回ドイツ人工知能会議. コブレンツ, ドイツ. pp. 46– 54.
- ^ Dan Brickley; RV Guha (2004-02-10). 「RDF語彙記述言語 1.0: RDFスキーマ。セクション3.3、rdf:type」。ワールド・ワイド・ウェブ・コンソーシアム。
- ^ Dan Brickley、RV Guha (2004年2月10日). 「RDF語彙記述言語1.0:RDFスキーマ。第2.2節、rdfs:Class」。ワールド・ワイド・ウェブ・コンソーシアム。
- ^ Dan Brickley; RV Guha (2004-02-10). 「RDF語彙記述言語 1.0: RDFスキーマ。セクション3.4、rdfs:subClassOf」。ワールド・ワイド・ウェブ・コンソーシアム。
- ^ S Koide. 「OOP、MOF、RDFS、OwLにおけるメタモデリング」(PDF)。
- ^ 「OWL Webオントロジー言語リファレンス」W3C 2004年 pp. 付録E. OWL DLオントロジーの経験則. 2015年3月7日閲覧。
- ^ Boris Motik (2007). 「OWLにおけるメタモデリングの特性について」(PDF) . Journal of Logic and Computation . 17 (4): 617– 637. doi :10.1093/logcom/exm027.
- ^ OWL 2における統合メタモデリングと診断(PDF)国際セマンティックウェブ会議. 2015年3月7日閲覧。
- ^ 「OWL 2 ウェブオントロジー言語の新機能と根拠(第2版)」W3C . 2025年2月22日閲覧。OWL
2ダイレクトセマンティクスは、同じ名前の異なる用法を完全に別のものとして扱います。
- ^ Lenzerini, Maurizio; Lepore, Lorenzo; Poggi, Antonella (2021年3月). 「OWL 2 QLにおけるメタモデリングとメタクエリ」. Journal of Artificial Intelligence . 292 (103432). Elsevier. doi :10.1016/j.artint.2020.103432. hdl : 11573/1483956 .
DSは標準的な一階述語論理(FOL)の意味論の解釈の概念に依存しており、したがって、個体と同名のクラスが異なる要素であると認めることでパンニングを扱います。
- ^ Rose Dieng、Olivier Corby編「Protégé 2000の知識モデル」(PDF) . Methods, Models, and Tools Proceedings . Knowledge engineering and knowledge management . 2015年3月7日閲覧。§6.1 RDFSモデルの要約