Re: xml:lang and cardinality restrictions

On 26 Feb 2007, at 11:07, dimitris bilidas wrote:

> Hello all,
>
> I have a question concerning datatype properties of type String.

You mean xsd:string?
> Using the xml:lang tag, someone could create more than one value  
> for a property, but consider these different values as one because  
> they refer to the same thing.
Not directly. Only plain literals can have lang tags.
> For example, if we have a property "movieHasTitle", the creator of  
> the tBox can set a restriction Cardinality 1 on this property, but  
> then he can declare more than one value using the xml:lang tag, for  
> the translation of the title in different languages, considering  
> that he hasn't done something illegal, but in OWL there will be  
> inconsistency.

If you mean:
	:x hasTitle "Hello"@en.
	:x hasTitle "Bonjour"@fr.

Then it does have two titles as far as you've said. Indeed, the  
strings aren't the same!

If you want to formalize the idea that there is one title with many  
(equivalent) translations, you have to do more work. You could have a  
title object, for example, which either has multiple rdfs:labels, or  
has a canonicalTitle and many translatedTitles.
> Is there a way to avoid this misunderstanding?
You need to take care not to project too much onto the "bare"  
semantics of owl (or rdf). The idea that some strings are  
*translations* (into different natural languages!!!) and "mean the  
same thing" or "are the same thing" is a complex one. Arguably, for  
some purposes, we could and should be lightweight about it. (Heck,  
the idea that different bytestrings are encodings of the "same"  
unicode string is a pretty durn compelx idea too!)

Cheers,
Bijan.

Received on Monday, 26 February 2007 22:56:00 UTC