Re: Musing on URI references vs. URI-s as string

Ivan Herman wrote:
> Dear all,
> 
> this is just wondering about an idea...
> 
> One of the frequent issues that the non-RDF developers' community has with RDF in general and RDFa in particular is the fact that RDF makes a sharp difference between a URI as a string and a URI as a unique ID in RDF. Many time they do not understand it or, if they do, their claim is that the lambda Web designer would not understand it. Witness the format chosen by Facebook for their vocabulary; I have also received a set of comments from Kavi Goel, from Google, who had a similar issue with RDFa (in his formulation it is the differentiation between @rel and @property). (I have not yet received an authorization of Kavi to forward his comments on the public mailing list, unfortunately, but that is the issue that stuck to me.)
> 
> While I do believe this distinction is important on the RDF level, I wonder whether we can do something about it on the serialization level. A very simple approach would be the following additional rule:
> 
> [[[
> if the value of a literal for a @property (either as retrieved from @content or the real text) is a valid absolute URI, and there is no @datatype present, then the value should be considered as a URI reference (in RDF terms) rather than a literal. (A variation of this is that the literal is an absolute URI or a valid CURIE.)
> ]]]

what if @lang/@xml:lang is present?

   <span property="foaf:homepage" lang="en">http://www.w3.org</span>

> - in practice I think people will use @property almost everywhere instead of @rel, which will mean some sort of an educational challenge: why would people use

Glad to hear you saying this, after all what is a web of data without links!

One thing I have noticed is that this important factor isn't really 
covered in the primer, and RDFa Core could be a bit more explicit / 
verbose. It may well be worth:
- adding a section to the primer that deals specifically with how to 
talk about resources (with RDFa examples and associated triples produced).
- prioritizing "URI Object Resolution" in RDFa Core to be 8.3.1
- adding the <span @property/@rel="foaf:homepage" examples showing how 
@property/uri-text produces a literal, whilst @rel/@resource produces a 
URI resource (again in RDFa Core under URI Object Resolution). It's a 
good clarifying example.

Whilst I understand and would like to see this addressed, I have a gut 
feeling that it may be better resolved with education.

This reply suddenly got a little bit longer!

Common usage:
After thinking about this some more, it appears to me that often when a 
URI is found in the body text of a document, said URI is hyperlinked:

  <a href="http://www.w3.org">http://www.w3.org</a>

and that the most likely mistake leading to unexpected results will be 
using @property rather than @rel in this scenario:

  <a href="http://www.w3.org" property="foaf:homepage">http://www.w3.org</a>

Which got me thinking, won't authors be rather familiar with using @rel 
alongside <a href?, effectively meaning that in common usage this may 
not be as common as we'd think.. [unsure]


Ranging properties:
Forgive my newness on this one, but has any work/discussion previously 
gone in to setting the type of an object based on the range of the 
property, for instance the range of foaf:name is foaf:Document. Thus it 
should be pretty easy to determine that if somebody writes:
  <span property="foaf:homepage">http://www.w3.org</span>
Then the triple produced should be
  :x foaf:homepage <http://www.w3.org>
as this is the only valid triple possible.

Generally the aforementioned ranging approach is something which I'm 
unsure why we don't use more on the web of data (for both removing 
ambiguity wrt the type of objects, and for verifying graphs produced 
when parsing.

Still, glad to see this niggling away with somebody else :)

Best,

Nathan

Received on Tuesday, 21 September 2010 21:27:42 UTC