Re: ACTION-83 Get clarification from Maxx Deckers on what DC meant in what they specified

On 26 Oct 2012, at 15:49, Phil Archer wrote:
> I'm struggling to see how this is not inconsistent. The HTML doc says that dcterms:language as a range of http://purl.org/dc/terms/LinguisticSystem which is a class.

Every datatype is a class. Quoting from http://www.w3.org/2000/01/rdf-schema#

    <rdfs:Class rdf:about="http://www.w3.org/2000/01/rdf-schema#Datatype">
        <rdfs:isDefinedBy rdf:resource="http://www.w3.org/2000/01/rdf-schema#"/>
        <rdfs:label>Datatype</rdfs:label>
        <rdfs:comment>The class of RDF datatypes.</rdfs:comment>
        <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
    </rdfs:Class>

> The schema says the same thing: http://dublincore.org/2012/06/14/dcterms.ttl (that takes some finding!)
> 
> IIRC this is something I've heard you say before that several others disagree with (I defer to others and make no assertion myself), that a literal is a resource and therefore you can always give a literal as the value even when a URI is expected (DC doesn't use the terms object property and datatype property but that's what we're talking about).

I'll quote from http://www.w3.org/TR/rdf11-concepts/

[[
Any IRI and literal denotes some thing in the universe of discourse. These things are called resources. Anything can be a resource, including physical things, documents, abstract concepts, numbers and strings; the term is synonymous with “entity”. The resource denoted by an IRI is called its referent, and the resource denoted by a literal is called its value. Literals have datatypes that define the range of possible values, such as strings, numbers, and dates.
]]

The same thing has been said, in different words/formulas, since 2004 in RDF Concepts.

You can always give a literal, assuming the existence of an appropriate datatype. Obviously when the range is the class of coffee mugs then you can't give a string literal or date literal because strings and dates are not coffee mugs. But when the range is languages and you happen to have a convenient datatype of languages built right into XSD…

It's important to keep in mind that IRIs and literals are merely two different ways of denoting entities: IRIs denote via the social conventions that determine the referent of an IRI in web architecture. Literals denote via the lexical-to-value mapping defined by the datatype. The things that can be denoted by each mechanism are, in theory, (the same. Although in practice the two mechanisms tend to be used for two fairly disjoint sets of things.) The statement

  <http://km.aifb.kit.edu/projects/numbers/n42> owl:sameAs "42"^^xsd:integer.

is not just true, but also consistent under OWL semantics. (It is inconsistent under OWL DL semantics (but still true), because the owl:Thing class and the set of literals are disjoint in DL).

Best,
Richard



> 
> I note though that dcterms:language is a sub property of dc:language (which has no domain and range), so is that a get out of gaol card?

No — a range assertion is inherited from superproperty to subproperty, but the absence of a range assertion is not inherited.

Best,
Richard




> 
> Phil.
> 
> On 26/10/2012 15:19, Richard Cyganiak wrote:
>> Phil,
>> 
>> On 26 Oct 2012, at 15:04, Phil Archer wrote:
>>> That's a datatyped string, not a class. That's data, not an object. That's inconsistent. We know.
>> 
>> As I already said in the call, it's *not* inconsistent with anything that is formally or informally said in the DC documentation.
>> 
>> It may not be the intent of the DC group.
>> 
>> Best,
>> Richard
>> 
> 
> -- 
> 
> 
> Phil Archer
> W3C eGovernment
> http://www.w3.org/egov/
> 
> http://philarcher.org
> +44 (0)7887 767755
> @philarcher1
> 

Received on Friday, 26 October 2012 15:19:54 UTC