[rdfweb-dev] advocating use of rdf:ID / rdf:about attributes on foaf:Person tags

Victor Lindesay victor at vicsoft.co.uk
Sat Aug 16 20:37:14 UTC 2003


Just my thoughts exactly David, as I posted on the Ecademy FOAF club
recently.
http://www.ecademy.com/module.php?mod=club&op=forum&c=240&t=20350

It seems the trend now is to use rdf:nodeID instead of rdf:ID anyway,
but I'm no expert!

> -----Original Message-----
> From: rdfweb-dev-bounces at vapours.rdfweb.org 
> [mailto:rdfweb-dev-bounces at vapours.rdfweb.org] On Behalf Of 
> David Madore
> Sent: 16 August 2003 20:15
> To: RDFWeb Developer Mailing-List
> Subject: [rdfweb-dev] advocating use of rdf:ID / rdf:about 
> attributes on foaf:Person tags
> 
> I'd just like to raise a few points.
> 
> The most important one, as the subject of this mail implies, concerns
> the use of the rdf:ID and rdf:about on foaf:Person elements.  I don't
> see this very much advocated on the FOAF intro/documentation pages.
> For example, the FOAF-a-matic creates RDF files that contain a
> foaf:Person element with no rdf:ID attribute on it; now I think this
> is very unfortunate: wouldn't it be better to add rdf:ID="me" or some
> such thing, so that the person in question can afterward be referred
> to with rdf:resource="http://somesite.tld/foaf.rdf#me" through the
> generic URI referral mechanism?  This seems far less clumsy than using
> foaf:name and/or foaf:mbox_sha1sum and misusing rdfs:seeAlso.  After
> all, that's much what RDF is about, referring to all manner of things
> through URIs.
> 
> Let me restate this, for clarity.  Suppose Joe Smith wrote a file
> http://www.joesmith.tld/~joesmith/foaf.rdf containing
> 
> <?xml version="1.0" encoding="us-ascii"?>
> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>          xmlns:foaf="http://xmlns.com/foaf/0.1/"
>          xml:base="http://www.joesmith.tld/~joesmith/foaf.rdf">
> <foaf:Person rdf:ID="joesmith">
>   <foaf:name>Joe Smith</foaf:name>
>   <foaf:mbox rdf:resource="mailto:joesmith&#x40;joesmith&#x2e;tld" />
> </foaf:Person>
> </rdf:RDF>
> 
> Then Jane Doe should be able to say she knows Joe Smith simply with
> 
> <?xml version="1.0" encoding="us-ascii"?>
> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>          xmlns:foaf="http://xmlns.com/foaf/0.1/"
>          xml:base="http://www.doefamily.tld/~jane/foaf.rdf">
> <foaf:Person rdf:ID="janedoe">
>   <foaf:name>Jane Doe</foaf:name>
>   <foaf:mbox rdf:resource="mailto:jane&#x40;doefamily&#x2e;tld" />
>   <foaf:knows>
>     <foaf:Person
>       rdf:about="http://www.joesmith.tld/~joesmith/foaf.rdf#joesmith"
>       foaf:name="Joe Smith"
>       foaf:mbox_sha1sum="c21678171b3c1102dd9b67b02708bf76adf0dfba" />
>   </foaf:knows>
> </foaf:Person>
> </rdf:RDF>
> 
> - and even the foaf:name and foaf:mbox_sha1sum attributes are
> unnecessary.  If people wants to know more about Joe Smith starting
> from Jane Doe's FOAF file, they should simply follow the rdf:about
> link, which is the URI that uniquely identifies Joe Smith, globally.
> The use of rdfs:seeAlso is dubious at best: it is certainly correct
> and valid RDF to use it to point to an RDF file that describes Joe
> Smith, but it is equally correct to use it to point to Joe Smith's
> (human-readable, not machine-readable) Web site, or to anything
> remotely associated with Joe Smith (except that it can't be a
> literal); so it is dubious for a robot, FOAF crawler of any kind, to
> attempt to follow rdfs:seeAlso links systematically.  Whereas if the
> target has been identified by its own URI, as per an rdf:about
> attribute, it is the obvious course of action to follow that link.
> 
> Hence the question: why the reticence in using RDF URI to refer to
> people, in the FOAF framework?  Or am I misinterpreting something?
> The example on <URL: http://usefulinc.com/foaf/addingPeople > does not
> give the foaf:Person element an rdf:about attribute.
> 
> My recommendation would be to make the use of rdf:ID tags systematic
> in all FOAF examples and automatic generators.  Furthermore, for
> backward compatibility, keep using rdfs:seeAlso, but perhaps introduce
> a foaf:import (or some such) property, which is rdfs:subPropertyOf
> rdfs:seeAlso, to indicate the semantics in a clearer way.
> 
> Further remarks: I'm surprised, upon reading the FOAF spec, that even
> such obvious properties as "date of birth" and "gender" are not part
> of the vocabulary.  I can understand that some people might not wish
> to disclose them, but surely they are desirable additions.  I have not
> been able to find a single RDF vocabulary or ontology that includes
> them, as a matter of fact, so I created them myself as <URL:
> http://www.eleves.ens.fr:8080/home/madore/meta.rdf#birthDate > and
> <URL: http://www.eleves.ens.fr:8080/home/madore/meta.rdf#gender >, but
> I would rather have them be part of something a little more
> "official".
> 
> I guess that's all (for now!).  Cheers, happy hacking, and
> congratulations to whoever came up with the FOAF idea in the first
> place.
> 
> -- 
>      David A. Madore
> <URL: http://www.eleves.ens.fr:8080/home/madore/meta.rdf#dmadore >
> 
> _______________________________________________
> rdfweb-dev mailing list
> rdfweb-dev at vapours.rdfweb.org
> wiki: http://rdfweb.org/topic/FoafProject
> http://rdfweb.org/mailman/listinfo/rdfweb-dev
> 
> 




More information about the foaf-dev mailing list