<rdf:RDF
  xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
  xmlns:daml="http://www.daml.org/2001/03/daml+oil#" 
  xmlns     ="http://ksl.stanford.edu/projects/DAML/chimaera-jtp-cardinality-test1.daml#"
>

<daml:Ontology rdf:about="">
  <daml:versionInfo>$Id: daml+oil-ex.daml,v 1.4 2001/01/11 20:33:52 mdean Exp $</daml:versionInfo>
  <rdfs:comment>Chimaera-JTP testing ontology</rdfs:comment>
  <daml:imports rdf:resource="http://www.daml.org/2001/03/daml+oil"/>
</daml:Ontology>

<rdfs:Class rdf:ID="TestType">
  <daml:oneOf rdf:parseType="daml:collection">
    <Thing rdf:ID="mandatory"/>
    <Thing rdf:ID="optional"/>
  </daml:oneOf>
</rdfs:Class>

<rdfs:Class rdf:ID="QueryList">
  <rdfs:label>QueryList</rdfs:label>
  <rdfs:subClassOf rdf:resource="#List"/>
  <rdfs:comment> List of queries on the given kb </rdfs:comment>
</rdfs:Class>

<rdfs:Class rdf:ID="AnswerList">
  <rdfs:label>QueryList</rdfs:label>
  <rdfs:subClassOf rdf:resource="#List"/>
  <rdfs:comment> List of answers to the query </rdfs:comment>
</rdfs:Class>

<rdfs:Class rdf:ID="QueryItem">
  <rdfs:label>Query</rdfs:label>
  <rdfs:comment> a query class </rdfs:comment>
</rdfs:Class>

<rdf:Property rdf:ID="querytojtp">
  <rdfs:comment>
    This property specifies a query submitted to JTP.
  </rdfs:comment>
  <rdfs:domain rdf:resource="#QueryItem"/>
</rdf:Property>

<rdf:Property rdf:ID="answerfromjtp">
  <rdfs:comment>
    This property specifies the answers returned by JTP.
  </rdfs:comment>
  <rdfs:domain rdf:resource="#QueryItem"/>
  <rdfs:range rdf:resource="#AnswerList"/>
</rdf:Property>

<rdf:Property rdf:ID="numberOfErrors">
  <rdfs:comment>
    This property specifies the number of erros found by JTP.
  </rdfs:comment>
  <rdfs:domain rdf:resource="#QueryItem"/>
</rdf:Property>

<rdfs:Class rdf:ID="Test">
  <rdfs:label>Test</rdfs:label>
  <rdfs:comment>
      Test is the template class of chimaera-jtp test cases.
  </rdfs:comment>
</rdfs:Class>

<rdf:Property rdf:ID="query">
  <rdfs:comment>
    This property specifies the query list submitted to JTP.
  </rdfs:comment>
  <rdfs:domain rdf:resource="#Test"/>
  <rdfs:range rdf:resource="#QueryList"/>
</rdf:Property>

<rdf:Property rdf:ID="type">
  <rdfs:comment>
    This property specifies the type of this test, either mandatory
    or optional </rdfs:comment>
  <rdfs:domain rdf:resource="#Test"/>
  <rdfs:range rdf:resource="#TestType"/>
</rdf:Property>

<rdf:Property rdf:ID="kb">
  <rdfs:comment>
      KB to be tested. 
  </rdfs:comment>
  <rdfs:domain rdf:resource="#Test"/>
</rdf:Property>

<QueryItem rdf:ID="Correct-Cardinality-Query">
  <rdfs:label> Correct-Cardinality-Query </rdfs:label>
  <querytojtp>
     (frame-bounds-conflict ?fr ?sl ?hi ?lo)
  </querytojtp>
  <answerfromjtp>
     <AnswerList />
  </answerfromjtp>
  <numberOfErrors> 0 </numberOfErrors>
</QueryItem>

<Test rdf:ID="Test-Cardinality-1-1">
  <rdfs:label>Test-Cardinality-1-1 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>normal case</rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" />  
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child fred 2)
        (min-cardinality child fred 1)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-1-2">
  <rdfs:label>Test-Cardinality-1-2 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> max-cardinality == min-cardinality </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem  rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child fred 2)
        (min-cardinality child fred 2)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-1-3">
  <rdfs:label>Test-Cardinality-1-3 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> max-cardinality less than min-cardinality </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
	        <daml:item>
                  (frame-bounds-conflict fred child 1 2)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 1 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child fred 1)
        (min-cardinality child fred 2)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-1-4">
  <rdfs:label>Test-Cardinality-1-4 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> min-cardinality undefined </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem  rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child fred 2)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-1-5">
  <rdfs:label>Test-Cardinality-1-5 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>max-cardinality undefined </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem  rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (min-cardinality child fred 2)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-2-1">
  <rdfs:label>Test-Cardinality-2-1 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> own slot/inheritance </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem  rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (Own-slot-of  child  Person)
        (max-cardinality child Person 2)
        (min-cardinality child Person 1)
        (Subclass-Of  Male  Person)
        (Own-slot-of  child  Male)
        (max-cardinality child Male 3)
        (min-cardinality child Male 0)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-2-2">
  <rdfs:label>Test-Cardinality-2-2 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> own slot/inheritance </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem  rdf:resource="#Correct-Cardinality-Query" />  
     </QueryList> 
  </query>
  <kb>         
        (Own-slot-of  child  Person)
        (max-cardinality child Person 2)
        (min-cardinality child Person 1)
        (Subclass-Of  Male  Person)
        (Own-slot-of  child  Male)
        (max-cardinality child Male 4)
        (min-cardinality child Male 3)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-2-3">
  <rdfs:label>Test-Cardinality-2-3 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> own slot/inheritance </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
		<daml:item>
                  (frame-bounds-conflict Person child 1 2)
                </daml:item>
		<daml:item>
                  (frame-bounds-conflict Male child 1 3)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 2 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>         
        (Own-slot-of  child  Person)
        (max-cardinality child Person 1)
        (min-cardinality child Person 2)
        (Subclass-Of  Male  Person)
        (Own-slot-of  child  Male)
        (max-cardinality child Male 1)
        (min-cardinality child Male 3)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-3-1">
  <rdfs:label>Test-Cardinality-3-1 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> template slot/inheritance  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child Person 4)
        (min-cardinality child Person 1)
        (Instance-of  fred  Person)
        (max-cardinality child  fred  3)
        (min-cardinality child  fred  2)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-3-2">
  <rdfs:label>Test-Cardinality-3-2 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> template slot/inheritance  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child Person 4)
        (min-cardinality child Person 1)
        (Instance-of  fred  Person)
        (max-cardinality child  fred  3)
        (min-cardinality child  fred  3)
  </kb>
</Test>


<Test rdf:ID="Test-Cardinality-3-3">
  <rdfs:label>Test-Cardinality-3-3 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> template slot/inheritance  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child Person 4)
        (min-cardinality child Person 1)
        (Instance-of  fred  Person)
        (max-cardinality child  fred  4)
        (min-cardinality child  fred  4)
  </kb>
</Test>


<Test rdf:ID="Test-Cardinality-3-4">
  <rdfs:label>Test-Cardinality-3-4 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> template slot/inheritance  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child Person 4)
        (min-cardinality child Person 1)
        (Instance-of  fred  Person)
        (max-cardinality child  fred  4)
        (min-cardinality child  fred  1)
  </kb>
</Test>


<Test rdf:ID="Test-Cardinality-3-5">
  <rdfs:label>Test-Cardinality-3-5 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> fred-child max and min error </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
                <daml:item>
                  (frame-bounds-conflict fred child 2 3)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 1 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child Person 4)
        (min-cardinality child Person 1)
        (Instance-of  fred  Person)
        (max-cardinality child  fred  2)
        (min-cardinality child  fred  3)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-3-6">
  <rdfs:label>Test-Cardinality-3-6 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>  Person-child max and fred-child min error 
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
                <daml:item>
                  (frame-bounds-conflict fred child 4 6)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 1 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child Person 4)
        (min-cardinality child Person 1)
        (Instance-of  fred  Person)
        (max-cardinality child  fred  7)
        (min-cardinality child  fred  6)
  </kb>
</Test>


<Test rdf:ID="Test-Cardinality-3-7">
  <rdfs:label>Test-Cardinality-3-7 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>  Person-child max and fred-child min error;
		  fred-child max and fred-child min error 
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
                <daml:item>
                  (frame-bounds-conflict fred child 4 8)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict fred child 7 8)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 2 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child Person 4)
        (min-cardinality child Person 1)
        (Instance-of  fred  Person)
        (max-cardinality child  fred  7)
        (min-cardinality child  fred  8)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-3-8">
  <rdfs:label>Test-Cardinality-3-8 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> inheritance/ Person-child max undefined  </rdfs:comment>
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (min-cardinality child Person 1)
        (Instance-of  fred  Person)
        (max-cardinality child  fred  7)
        (min-cardinality child  fred  6)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-3-9">
  <rdfs:label>Test-Cardinality-3-9 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>  Person-child min and fred-child max error 
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
                <daml:item>
                  (frame-bounds-conflict fred child 0 1)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 1 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>         
        (min-cardinality child Person 1)
        (Instance-of  fred  Person)
        (max-cardinality child  fred  0)
        (min-cardinality child  fred  0)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-3-10">
  <rdfs:label>Test-Cardinality-3-10 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> 
	Inheritance / Male-child max and min not redefined 
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
	(max-cardinality child Person 4)
        (min-cardinality child Person 1)
        (Subclass-Of Male Person)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-3-11">
  <rdfs:label>Test-Cardinality-3-11 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> 
	Inheritance / Subclass
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
	(max-cardinality child Person 4)
        (min-cardinality child Person 1)
        (Subclass-Of Male Person)
        (max-cardinality child  Male  4)
        (min-cardinality child  Male  2)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-3-12">
  <rdfs:label>Test-Cardinality-3-12 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>  
	Person-child max and Male-child min error;
	Person-child min and  Male-child max error; 
	Male-child max and Male-child min error;		
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
                <daml:item>
                  (frame-bounds-conflict Male child 4 5)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict Male child 0 5)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict Male child 0 1)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 3 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child  Person  4)
        (min-cardinality child  Person 1)
        (Subclass-Of Male Person)
        (max-cardinality child  Male  0)
        (min-cardinality child  Male  5)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-4-1">
  <rdfs:label>Test-Cardinality-4-1 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> 
	complex inheritance
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child  Person  4)
        (min-cardinality child  Person 1)
        (Subclass-Of Male Person)
	(Instance-of fred Male)
        (max-cardinality child  fred  3)
        (min-cardinality child  fred  2)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-4-2">
  <rdfs:label>Test-Cardinality-4-2 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> 
	complex inheritance
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child  Person  4)
        (min-cardinality child  Person 1)
        (Subclass-Of Male Person)
	(Instance-of fred Male)
        (max-cardinality child  fred  4)
        (min-cardinality child  fred  1)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-4-3">
  <rdfs:label>Test-Cardinality-4-3 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> 
	complex inheritance
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child  Person  4)
        (min-cardinality child  Person 1)
        (Subclass-Of Male Person)
	(Instance-of fred Male)
        (max-cardinality child  fred  3)
        (min-cardinality child  fred  0)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-4-4">
  <rdfs:label>Test-Cardinality-4-4 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> 
	complex inheritance
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child  Person  4)
        (min-cardinality child  Person 1)
        (Subclass-Of Male Person)
	(Instance-of fred Male)
        (max-cardinality child  fred  5)
        (min-cardinality child  fred  0)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-4-5">
  <rdfs:label>Test-Cardinality-4-5 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>  
	Person-child min and fred-child max error; 
	Person-child max and fred-child min error; 
	fred-child min and fred-child max error.
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
                <daml:item>
                  (frame-bounds-conflict fred child 4 5)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict fred child 0 1)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict fred child 0 5)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 3 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child  Person  4)
        (min-cardinality child  Person 1)
        (Subclass-Of Male Person)
	(Instance-of fred Male)
        (max-cardinality child  fred  0)
        (min-cardinality child  fred  5)
  </kb>
</Test>


<Test rdf:ID="Test-Cardinality-4-6">
  <rdfs:label>Test-Cardinality-4-4 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment> 
	complex inheritance
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem rdf:resource="#Correct-Cardinality-Query" /> 
     </QueryList> 
  </query>
  <kb>         
        (max-cardinality child  Person  4)
        (Subclass-Of Male Person)
	(min-cardinality child  Male 1)
	(Instance-of fred Male)
        (max-cardinality child  fred  3)
        (min-cardinality child  fred  2)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-4-7">
  <rdfs:label>Test-Cardinality-4-7 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>  
	Person-child max and fred-child min error;
	Male-child min and fred-child max error;
	fred-child max and fred-child min error.
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
                <daml:item>
                  (frame-bounds-conflict fred child 4 5)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict fred child 2 3)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict fred child 2 5)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 3 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>              
	(max-cardinality child  Person  4)
        (Subclass-Of Male Person)
	(min-cardinality child  Male 3)
	(Instance-of fred Male)
        (max-cardinality child  fred  2)
        (min-cardinality child  fred  5)   
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-4-8">
  <rdfs:label>Test-Cardinality-4-8 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>  
	Mammal-child max and fred-child min error;
	Male-child min and fred-child max error;
	fred-child max and fred-child min error. 
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
                <daml:item>
                  (frame-bounds-conflict fred child 4 5)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict fred child 2 3)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict fred child 2 5)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 3 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>              
	(max-cardinality child  Mammal  4)
	(Subclass-Of Person Mammal)
	(Subclass-Of Male Person)
	(min-cardinality child  Male 3)
	(Instance-of fred Male)
        (max-cardinality child  fred  2)
        (min-cardinality child  fred  5)
  </kb>
</Test>

<Test rdf:ID="Test-Cardinality-4-9">
  <rdfs:label>Test-Cardinality-4-9 </rdfs:label>
  <type rdf:resource="#mandatory" />
  <rdfs:comment>  
	Mammal-child min and fred-child max error;
	Person-child min and fred-child max error. 
  </rdfs:comment>	
  <query> 
     <QueryList> 
	<QueryItem> 
	   <querytojtp> 
	      (frame-bounds-conflict ?fr ?sl ?hi ?lo)
	   </querytojtp>
	   <answerfromjtp> 
	      <AnswerList> 
                <daml:item>
                  (frame-bounds-conflict fred child 2 4)
                </daml:item>
                <daml:item>
                  (frame-bounds-conflict fred child 2 3)
                </daml:item>
	      </AnswerList>
	   </answerfromjtp>
	   <numberOfErrors> 2 </numberOfErrors>
	</QueryItem>  
     </QueryList> 
  </query>
  <kb>              
	(min-cardinality child  Mammal  4)
	(Subclass-Of Person Mammal)
	(min-cardinality child  Person 3)
	(Subclass-Of Male Person)
	(min-cardinality child  Male 2)
	(Instance-of fred Male)
        (max-cardinality child  fred  2)
        (min-cardinality child  fred  1)
  </kb>
</Test>


<daml:List rdf:ID="Cardinality_tests">
  <rdfs:label>All_Cardinality_test_cases</rdfs:label>
  <daml:item rdf:resource="#Test-Cardinality-1-1" />
  <daml:item rdf:resource="#Test-Cardinality-1-2" />
  <daml:item rdf:resource="#Test-Cardinality-1-3" />
  <daml:item rdf:resource="#Test-Cardinality-1-4" />
  <daml:item rdf:resource="#Test-Cardinality-1-5" />
  <daml:item rdf:resource="#Test-Cardinality-2-1" />
  <daml:item rdf:resource="#Test-Cardinality-2-2" />
  <daml:item rdf:resource="#Test-Cardinality-3-1" />
  <daml:item rdf:resource="#Test-Cardinality-3-2" />
  <daml:item rdf:resource="#Test-Cardinality-3-3" />
  <daml:item rdf:resource="#Test-Cardinality-3-4" />
  <daml:item rdf:resource="#Test-Cardinality-3-5" />
  <daml:item rdf:resource="#Test-Cardinality-3-6" />
  <daml:item rdf:resource="#Test-Cardinality-3-7" />
  <daml:item rdf:resource="#Test-Cardinality-3-8" />
  <daml:item rdf:resource="#Test-Cardinality-3-9" />
  <daml:item rdf:resource="#Test-Cardinality-3-10" />
  <daml:item rdf:resource="#Test-Cardinality-3-11" />
  <daml:item rdf:resource="#Test-Cardinality-3-12" />
  <daml:item rdf:resource="#Test-Cardinality-4-1" />
  <daml:item rdf:resource="#Test-Cardinality-4-2" />
  <daml:item rdf:resource="#Test-Cardinality-4-3" />
  <daml:item rdf:resource="#Test-Cardinality-4-4" />
  <daml:item rdf:resource="#Test-Cardinality-4-5" />
  <daml:item rdf:resource="#Test-Cardinality-4-6" />
  <daml:item rdf:resource="#Test-Cardinality-4-7" />
  <daml:item rdf:resource="#Test-Cardinality-4-8" />
  <daml:item rdf:resource="#Test-Cardinality-4-9" />
</daml:List>

</rdf:RDF>


