2017-08-10 21 views
2

我是Protege/OWL中的初學者,我很難理解爲什麼最大基數正在工作而最小基數不是。 我試過隱士丸和事實reasoners。我知道開放世界的假設,但這對我來說似乎不合邏輯。最小基數不按預期在Protege中工作

我想表達的是,婚姻事件中必須至少有兩個人。

類:MarriageEvent

EquivalentTo:

這工作: MarriageEvent and is_event_of max 2 Person

這不是: MarriageEvent and is_event_of min 2 Person

所有個人都被宣佈爲不同的個人。

我的本體論:

<?xml version="1.0"?> 
<Ontology xmlns="http://www.w3.org/2002/07/owl#" 
xml:base="http://www.semanticweb.org/anato/ontologies/2017/7/untitled-ontology-184" 
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
xmlns:xml="http://www.w3.org/XML/1998/namespace" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema#" 
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" 
ontologyIRI="http://www.semanticweb.org/anato/ontologies/2017/7/untitled-ontology-184"> 
<Prefix name="owl" IRI="http://www.w3.org/2002/07/owl#"/> 
<Prefix name="rdf" IRI="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/> 
<Prefix name="xml" IRI="http://www.w3.org/XML/1998/namespace"/> 
<Prefix name="xsd" IRI="http://www.w3.org/2001/XMLSchema#"/> 
<Prefix name="rdfs" IRI="http://www.w3.org/2000/01/rdf-schema#"/> 
<Declaration> 
    <NamedIndividual IRI="#Peter"/> 
</Declaration> 
<Declaration> 
    <NamedIndividual IRI="#Julia"/> 
</Declaration> 
<Declaration> 
    <ObjectProperty IRI="#is_event_of"/> 
</Declaration> 
<Declaration> 
    <NamedIndividual IRI="#Max"/> 
</Declaration> 
<Declaration> 
    <Class IRI="#Person"/> 
</Declaration> 
<Declaration> 
    <NamedIndividual IRI="#Event_Marriage"/> 
</Declaration> 
<Declaration> 
    <Class IRI="#MarriageEvent"/> 
</Declaration> 
<EquivalentClasses> 
    <Class IRI="#MarriageEvent"/> 
    <ObjectIntersectionOf> 
     <Class IRI="#MarriageEvent"/> 
     <ObjectMinCardinality cardinality="2"> 
      <ObjectProperty IRI="#is_event_of"/> 
      <Class IRI="#Person"/> 
     </ObjectMinCardinality> 
    </ObjectIntersectionOf> 
</EquivalentClasses> 
<EquivalentClasses> 
    <Class IRI="#MarriageEvent"/> 
    <ObjectIntersectionOf> 
     <Class IRI="#MarriageEvent"/> 
     <ObjectMaxCardinality cardinality="2"> 
      <ObjectProperty IRI="#is_event_of"/> 
      <Class IRI="#Person"/> 
     </ObjectMaxCardinality> 
    </ObjectIntersectionOf> 
</EquivalentClasses> 
<DisjointClasses> 
    <Class IRI="#MarriageEvent"/> 
    <Class IRI="#Person"/> 
</DisjointClasses> 
<ClassAssertion> 
    <Class IRI="#MarriageEvent"/> 
    <NamedIndividual IRI="#Event_Marriage"/> 
</ClassAssertion> 
<ClassAssertion> 
    <Class IRI="#Person"/> 
    <NamedIndividual IRI="#Julia"/> 
</ClassAssertion> 
<ClassAssertion> 
    <Class IRI="#Person"/> 
    <NamedIndividual IRI="#Max"/> 
</ClassAssertion> 
<ClassAssertion> 
    <Class IRI="#Person"/> 
    <NamedIndividual IRI="#Peter"/> 
</ClassAssertion> 
<DifferentIndividuals> 
    <NamedIndividual IRI="#Event_Marriage"/> 
    <NamedIndividual IRI="#Julia"/> 
    <NamedIndividual IRI="#Max"/> 
    <NamedIndividual IRI="#Peter"/> 
</DifferentIndividuals> 
<ObjectPropertyAssertion> 
    <ObjectProperty IRI="#is_event_of"/> 
    <NamedIndividual IRI="#Event_Marriage"/> 
    <NamedIndividual IRI="#Julia"/> 
</ObjectPropertyAssertion> 
<ObjectPropertyAssertion> 
    <ObjectProperty IRI="#is_event_of"/> 
    <NamedIndividual IRI="#Event_Marriage"/> 
    <NamedIndividual IRI="#Peter"/> 
</ObjectPropertyAssertion> 
<SubObjectPropertyOf> 
    <ObjectProperty IRI="#is_event_of"/> 
    <ObjectProperty abbreviatedIRI="owl:topObjectProperty"/> 
</SubObjectPropertyOf> 
<IrreflexiveObjectProperty> 
    <ObjectProperty IRI="#is_event_of"/> 
</IrreflexiveObjectProperty> 
<ObjectPropertyDomain> 
    <ObjectProperty IRI="#is_event_of"/> 
    <Class IRI="#MarriageEvent"/> 
</ObjectPropertyDomain> 
<ObjectPropertyRange> 
    <ObjectProperty IRI="#is_event_of"/> 
    <Class IRI="#Person"/> 
</ObjectPropertyRange> 
</Ontology> 

<!-- Generated by the OWL API (version 4.2.8.20170104-2310) https://github.com/owlcs/owlapi --> 
+0

嗯,這是什麼意思'這個作品'和'這不是'? –

+0

我的意思是說,如果我有三個人,但是如果我在is_event_of realtion中只有一個人,那麼他就不會抱怨。就好像最小基數限制不適用一樣。 – theChaosCoder

+0

假設'MarriageEvent''is_event_ofMax',聲明'Person'等價於{Max,Julia,Peter}',並創建兩個負屬性斷言。 –

回答

3

min 2 Person不會抱怨,只有一個人是因爲開放世界假設已知婚姻。僅僅因爲婚禮的第二方不知道,並不意味着它不在那裏。

1

語義Web語言如OWL使得開放世界的假設。 如果網絡中沒有特定聲明,原則上指 聲明尚未明確提出,與 無關,無論其是否爲真,也不論我們是否認爲它是真實的或不。實質上,由於沒有 單獨的陳述,演繹推理者不能(也不能)推斷 該陳述是錯誤的。

https://en.wikipedia.org/wiki/Open-world_assumption

缺乏一個關於第二個人並不意味着沒有第2個個體的存在語句。