[rdfweb-dev] Time's running out?

Dan Brickley danbri at w3.org
Mon Aug 11 22:41:40 UTC 2003

* Jim Ley <jim at jibbering.com> [2003-08-11 22:24-0000]
> "Julian Bond" <julian_bond at voidstar.com>
> > Jim Ley <jim at jibbering.com> wrote:
> > >My approach is to find all the THINGS with a  foaf:mbox_sha1sum and then
> see
> > >what those things know, doing it this we way can ignore the type in the
> > >code, it does mean that we use data of the slightly less defined THINGS,
> > >however because of the foaf:mbox_sha1sum limitation on it being about a
> > >foaf:Person, we're not very limiting by just looking at THINGS, and it
> means
> > >people can use much neater syntax in their RDF docs, and I don't need to
> > >teach my tools about subClasses.
> >
> > Trying to get my head round this. Look for mbox or mbox_sha1sum. Get
> > their owner, then look at the other properties of that.
> >
> > Then I checked the spec to find that both mbox and mbox_sha1sum have
> > domain and region "not specified". So where's the limitation on them
> > being about foaf:Persons? Just a convention?
> No, this is the broken current html documentation, in the RDF it says
> mbox_sha1sum indicates it's an Agent (not a Person, a recent change, sorry
> about that.)
>   <rdfs:domain rdf:resource="http://xmlns.com/foaf/0.1/Agent" />

Yup. It's time to switch over the HTML documentation to match this.
Sorry to all for the confusion; I didn't really want a half-finished new
spec doing the rounds on the Weblog, but the cost of sitting with the
old one on the website outweighs that. See next mail for more...
> > Then we have foaf:knows which does have Domain and Region of
> > foaf:Person. So if a file author is perverse enough not to use Person
> > for the main data, they then shouldn't use knows to link that
> > not-a-Person to other not-a-persons.
> No, because you do not have to specify the type, consider the rdfs:seeAlso
> property that has the domain of a rdf:Resource, does that mean you have to
> specifically specify that it's a resource?  Remember everyone can have many

Yup. My 'missing isnt broken' writeup at 
http://rdfweb.org/mt/foaflog/archives/000047.html was an attempt to
document this common confusion.

> different type's  (they can be an Agent, a Person, a MalePerson, a
> Programmer, a BridgePlayer, an Actor etc. etc.) so it would be crazy to make
> people use different mbox properties depending on if you were talking about
> someone as a BridgePlayer and a Programmer) e.g.
> <brigeNS:Player>
>  <bridgeNS:mbox_sha1sum>....</bridgeNS:mbox_sha1sum>
> </bridgeNS:Player>
> <progNS:Player>
>  <progNS:sha1sumOfMbox>....</progNS:mbox_sha1sum>
> </progNS:Player>
> That isn't very helpful, teaching our tools that the sha1 properties are the
> same, is a lot more work, and it hugely increases the number of predicates
> we need to have.  Re-using namespaces is good.
> An author is not Perverse not to use foaf:Person, there's lots of reasons
> for them not to, and it makes no difference on their ability to use
> foaf:knows.

Perhaps not perverse, but given the current state of schema aware tools, 
the absence of a foaf:Person type can be frustrating. I am wondering
about a 'best practice' note suggesting soemthing like 

 <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Person"/> <-- helpful -->
 ...other stuff here 

...as a migration strategy, while we work towards a situation where the
expense association with discovering / computing the foaf:Person type is 
less problematic. Not every toolkit makes it easy enough, yet. 


> Jim.

More information about the foaf-dev mailing list