Annotation Properties versus Literal Properties

0 views
Skip to first unread message

Cody Burleson

unread,
Dec 15, 2009, 3:06:20 AM12/15/09
to semantic...@googlegroups.com
Team:

I thought I had this down pat, but now I'm starting to get confused. I am wondering what you all think about the following question:

When should we use annotation properties and when should we use literal properties? Does it matter? Any preferences?

For example, if I define the class Person, I could then create an instance of Person and add several annotation properties to describe the person (first name, last name, phone number, etc.). Or, I could define those kinds of values as literal properties. It seems like those should be literals. But then - the purpose and distinction of literals versus annotations has started to blur for me.

I would be interested in opinions about this. I thought I understood the principle, but looking at other people's ontology files and working with programmer APIS has started to get me confused.

Somebody slap me, please. Thanks!

Cody Burleson

Brad Bouldin

unread,
Dec 15, 2009, 10:31:37 AM12/15/09
to semantic...@googlegroups.com

Cody,

Well, for one thing, if you are using OWL DL, annotation properties may not be used in property axioms. In other words, you cannot define sub-properties or domain / range constraints for annotation properties (but you can in OWL Full). This suggest to me (and I am no expert in this) that annotation properties be avoided for anything you would like to constrain programmatically, reserving them for content intended mainly for human consumption (as opposed to reasoner consumption).

See: http://www.w3.org/TR/owl-ref/#Header

Brad Bouldin, bbou...@us.ibm.com
Senior I/T Architect, Patterns Based Engineering Team, IBM Software Services for WebSphere
IBM  Austin, TX
Office: 512-267-0625; Cell: 512-350-3831



From: Cody Burleson <co...@burlesontech.com>
To: semantic...@googlegroups.com
Date: 12/15/2009 02:06 AM
Subject: Annotation Properties versus Literal Properties


--

You received this message because you are subscribed to the Google Groups "SemanticWebAustin" group.
To post to this group, send email to semantic...@googlegroups.com.
To unsubscribe from this group, send email to semanticwebaus...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/semanticwebaustin?hl=en.

Juan Sequeda

unread,
Dec 15, 2009, 10:36:13 AM12/15/09
to semantic...@googlegroups.com
If you are going to say

Person hasName string
Person hasAge int
Person hasBirthdate date
Then just use Datatype Properties.

Simple :)


Juan Sequeda, Ph.D Student
Dept. of Computer Sciences
The University of Texas at Austin
www.juansequeda.com
www.semanticwebaustin.org

Marco Neumann

unread,
Dec 15, 2009, 10:41:54 AM12/15/09
to semantic...@googlegroups.com
Still I use annotation properties where possible as human readable
annotations. Most tools support rdfs:label out of the box to name
things in UI components e.g. TBC

Tim Keanini

unread,
Dec 16, 2009, 10:04:39 PM12/16/09
to semantic...@googlegroups.com

Please don’t take any of my response as condescending; I’m merely trying to point to a mindset shift that needs to happen when using semantic technologies.  When I got started on this stuff, I had to unlearn a lot of what was familiar to me with object-oriented and table-based structures.

 

In your example, it sounds like you are still thinking of properties as “belonging” to a class much like OOP or UML.  This is not the case with semantic modeling and properties are first-class objects having nothing to do with the “template concept” that takes place in most OO design patterns.  With OOPs/UML, an instance (member) is “born” with properties inherited from the parent class (set) much like biological reproduction but in semantic modeling, membership is all done through a subjects relationship to an object – the only other domain that emphasizes this is music.    If you did understand this subtle but important concept, forgive me for the misunderstanding.

 

Before we start speaking about OWL, we have to address the annotative properties of rdfs (rdfs:label and rdfs:comment)   As an example of their annotiative qualities, these offer no inferential semantics.  I find it best to consider annotation properties as being ‘out of band’ from the reasoner. 

They are named ‘annotative’ properties because the intended purpose is to facilitate a cosmetic objective: 

-          a critical or explanatory commentary

-          a description or label added to a object for purposes of display to humans

If the subjects relationship to the object is through a annotation property, it should satisfy the dictionaries definition of annotation. 

 

Now when you are speaking in terms of literal properties, I assume you are speaking in the OWL terms of owl:DatatypeProperty (as opposed to owl:ObjectProperty).  Owl:DatatypeProperty essentially saying that the range will be a data value.  One can then also set tighter membership through a rdfs:range to the xsd: vocabulary offering all the terms of XML Schema.

 

Abiding by the KISS principals, if you seek to annotate the object, remain in rdfs and leverage the rdfs vocabulary either directly or extend it for your purposes of annotation; for everything else, use only enough owl as you need to use in your model.  All the while, try and capture what you need in the model because it is just too easy to write application-specific code to make your program do whatever you want it to do. J

 

BTW: I like the other comments to your post.  This is a great community.

 

--tk

 

From: semantic...@googlegroups.com [mailto:semantic...@googlegroups.com] On Behalf Of Cody Burleson
Sent: Tuesday, December 15, 2009 2:06 AM
To: semantic...@googlegroups.com
Subject: Annotation Properties versus Literal Properties

 

Team:

--

Cody Burleson

unread,
Dec 16, 2009, 11:17:35 PM12/16/09
to semantic...@googlegroups.com
tk,

Thanks so much for your very thoughtful reply. I appreciate you taking an obvious slice of valuable time to make it clear. And thanks to all others too! I agree, this is a really good group.

This has been very helpful to me.


Cody Burleson

Juan Sequeda

unread,
Dec 16, 2009, 11:28:31 PM12/16/09
to semantic...@googlegroups.com
I'm glad to hear that you guys consider this a really good group.

Let's keep it growing!

Juan Sequeda, Ph.D Student
Dept. of Computer Sciences
The University of Texas at Austin
www.juansequeda.com
www.semanticwebaustin.org


Reply all
Reply to author
Forward
0 new messages