OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

tag message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Issue Re: [tag] A tighter RDFS/OWL-DL representation


Attached is a screen dump of how this representation looks in
the semantic wiki. It revealed a few modeling issues...

[Incidentally there was a missing spec ref - it should look like this:

         <Widget rdf:ID="Widget_precondition1">
		<property>
			<WidgetSize rdf:ID="WidgetSize_Medium"/>
		</property>
	</Widget>
	<Widget rdf:ID="Widget_ta001">
		<specRef  
rdf:datatype="http://www.w3.org/2001/XMLSchema#string";>101:1a</specRef>
		<prose rdf:datatype="http://www.w3.org/2001/XMLSchema#string";>has a  
red button on top</prose>
		<precondition rdf:resource="#Widget_precondition1"/>
	</Widget>
]

There is an issue to note, I think, with the use of a 'precondition'
- it is a bit of a modeling problem in that the precondition actually
functions as a restricted subclass of the test assertion or its predicate.

* If the precondition is itself a predicate it needs everything
     a test assertion needs except the spec ref. I.e. maybe it needs
     its own ID so one precondition can be used in multiple predicates.

* This then leads to some issues:

   * Why not then just use an assertion?

   * What then is the difference between precondition and prerequisite?

   * Doesn't this logic mean that a test assertion actually amounts
       an extension of a superclass which is an assertion (extended by
       adding spec ref)?
     * Then a prerequisite could be the equivalent of a precondition
       in that both reference both assertions and test assertions (or
       instantiate, rather than reference the assertion and test
       assertion classes).

   * So having a new superclass of test assertion called 'assertion'
       could answer three problems:
        1. no need for both prerequisites and preconditions
        2. distinction between
           a. test assertions and
           b. assertions/predicates which aren't test assertions as such
        3. a different target can be associated with the assertion/predicate
           of the precondition/prerequisite - a different target to the TA's

Another issue arose while trying to implement the model:

  Does a TA have a target or does a target have a TA?

  The latter proves to be most useful in my example (to allow grouping
  of TAs under the category of a shared target or target class).

Best regards
- Steve

> I tried the OWL-DL representation with WikiMedia's SemanticWiki
> / Halo Project OWL extensions and found that it needed tightening
> up a lot more (eliminating the redundant elements).
>
> This resulted in the representation below which seems quite satisfactory
> as a mere demo of how a TA might be represented for the semantic web:
>
> <?xml version="1.0"?>
> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
> xmlns:owl="http://www.w3.org/2002/07/owl#"; xmlns="http://localhost#";
> xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#";
> xml:base="http://localhost";>
> 	<owl:Ontology rdf:about=""/>
> 	<owl:Class rdf:ID="Property"/>
> 	<owl:Class rdf:ID="WidgetSize">
> 		<rdfs:subClassOf>
> 			<owl:Class rdf:ID="Size"/>
> 		</rdfs:subClassOf>
> 	</owl:Class>
> 	<owl:Class rdf:ID="Target"/>
> 	<owl:Class rdf:about="#Size">
> 		<rdfs:subClassOf rdf:resource="#Property"/>
> 	</owl:Class>
> 	<owl:Class rdf:ID="Widget">
> 		<rdfs:subClassOf rdf:resource="#Target"/>
> 	</owl:Class>
> 	<owl:ObjectProperty rdf:ID="precondition">
> 		<rdfs:domain rdf:resource="#Target"/>
> 	</owl:ObjectProperty>
> 	<owl:DatatypeProperty rdf:ID="prerequisite">
> 		<rdfs:domain rdf:resource="#Target"/>
> 		<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
> 	</owl:DatatypeProperty>
> 	<owl:DatatypeProperty rdf:ID="specRef">
> 		<rdfs:domain rdf:resource="#Target"/>
> 		<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
> 	</owl:DatatypeProperty>
> 	<owl:FunctionalProperty rdf:ID="property">
> 		<rdfs:domain rdf:resource="#Target"/>
> 		<rdfs:range rdf:resource="#Property"/>
> 		<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
> 	</owl:FunctionalProperty>
> 	<owl:FunctionalProperty rdf:ID="value">
> 		<rdfs:domain rdf:resource="#Property"/>
> 		<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
> 		<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
> 	</owl:FunctionalProperty>
> 	<owl:FunctionalProperty rdf:ID="prose">
> 		<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
> 		<rdfs:domain rdf:resource="#Target"/>
> 		<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
> 	</owl:FunctionalProperty>
> 	<Widget rdf:ID="Widget_precondition1">
> 		<property>
> 			<WidgetSize rdf:ID="WidgetSize_Medium"/>
> 		</property>
> 	</Widget>
> 	<owl:AllDifferent/>
> 	<Widget rdf:ID="Widget_ta001">
> 		<specRef rdf:datatype="http://www.w3.org/2001/XMLSchema#string"/>
> 		<prose rdf:datatype="http://www.w3.org/2001/XMLSchema#string";>has a
> red button on top</prose>
> 		<precondition rdf:resource="#Widget_precondition1"/>
> 	</Widget>
> </rdf:RDF>
> <!-- Created with Protege (with OWL Plugin 3.3.1, Build 430)
> http://protege.stanford.edu -->
>
>
> -- 
> Stephen D. Green
>
> Partner
> SystML, http://www.systml.co.uk
> Tel: +44 (0) 117 9541606
>
> http://www.biblegateway.com/passage/?search=matthew+22:37 .. and voice
>
>
>
> Quoting stephen.green@systml.co.uk:
>
>> Second attempt after first seems to have got stuck (in filters?)
>> This time with attachment as zip
>>
>> Contains two OWL files, one with a TA ontology - classes and properties,
>> the other with an example individual TA in OWL-DL using the ontology.
>>
>> -- 
>> Stephen D. Green
>>
>> Partner
>> SystML, http://www.systml.co.uk
>> Tel: +44 (0) 117 9541606
>>
>> http://www.biblegateway.com/passage/?search=matthew+22:37 .. and voice
>
>

owl-dl-ta-wm-sw.JPG



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]