[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

About OWL syntax


owl syntax
Hi

Still trying to understand the mysteries and mental models behind the
semantic web, I analyzed the OWL sample provided by W3C. It's a very good
tutorial for who wants to decipher OWL or to see a real application of it. I
don't know who did it but thanks for it 
(ref: http://www.w3.org/TR/owl-guide/food.rdf )
(ref: http://www.w3.org/TR/2003/CR-owl-guide-20030818/wine )

Analysis:
---------
OWL syntax seems to reflect the notion of a separation of properties and
classes. For instance, a class is declared with a <owl:Class> class elements
as in:
<owl:Class rdf:ID="ConsumableThing" />

And properties in <owl:ObjectProperty> elements as in:
<owl:ObjectProperty rdf:ID="madeFromFruit">
  <rdfs:domain rdf:resource="#ConsumableThing" /> 
  <rdfs:range rdf:resource="#Fruit" /> 
</owl:ObjectProperty>

The relationship between the two elements is established with the
<rdfs:domain> element and the constraints imposed on the property by the
<rdfs:range> element.

The class definition and the property definition could be located anywhere
in the document and no constraints on placement are imposed by the specs. By
simple examination of the class object it is not possible for somebody to
deduce what are the properties of this object. However, by a simple
examination of the property object it is possible to know what are the
classes associated to this property. 

Comment about the syntax:
------------------------
It is, by analogy, equivalent to a previous pattern found in pre-70s
programs and known under the moniker "goto effect" or "spaghetti code". This
is probably, because, the format is not intended for reading nor it is
intended for manual writing. The question then is:
Why not having the properties declared inside a class element? Something
like:
<owl:Class rdf:ID="ConsumableThing">
  <owl:ObjectProperty rdf:ID="madeFromFruit">
     <rdfs:range rdf:resource="#Fruit" /> 
  </owl:ObjectProperty>
  .... other property definition ....
</owl:class>

The previous notation would have the benefits of:
a) helping people read an OWL specification.
b) From the cognitive point of view, to keep, as much as possible, the
information in the same locus. Hence preventing the "goto effect" or the
strange feeling of facing "spaghetti code"
c) help a parser to locate a class and get the pertinent information more
easily or faster than when the information is spread throughout the
document.
d) Would make it easier to write an XSLT style sheet to render for our
senses a class definition.
e) other reasons I do not think for the moment....

Probably there are good reasons other than a first level mapping to the
mathematical principles behind that (set theory, relation theory, lattice
theory, etc...). Object oriented languages often share the same mathematical
background but are also designed for readability and usability (and other
reasons off course). I know a quick answer would be to say that it is not
intended for human being. So why use a so bandwidth inefficient language as
XML? After all, a main advantage to XML is that it could be read by human
beings and therefore readability is an important factor doesn't it? Yes I
know, for some, human beings are peripherals to systems :-) and that
includes developers as well :-)

Question to Semantic web gurus:
---------------------------------
I guess I am missing something. Can the semantic web gurus provide an
intelligent answer to that?

Cheers
Didier PH Martin.



PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.