[rdfweb-dev] Proposal: Names in FoaF
Dan Brickley
danbri at w3.org
Sun Apr 20 17:04:57 UTC 2003
Morten,
* Morten Frederiksen <mof-rdf at mfd-consult.dk> [2003-04-18 21:02+0200]
>
> I've put together a proposal [1] for expressing names in the FoaF vocabulary,
> in response to Bugzilla issue #7 [2].
Many thanks for this work Morten, it's much appreciated :)
Providing links from the proposal into current deployed practice was
particularly useful, both the harvester stats and calling out Leigh's
foaf-a-matic app and related migration issues.
> I'd like for a discussion of the issue to take place on this list, but at
> some point I'll probably create a copy of the proposal on a Wiki for the next
> revision(s) - until some sort of consensus has been reached, or the almighty
> FoaF'ers deems it passable...
:)
There is as you know no formal process for evolving the FOAF vocabulary,
beyond an emphasis on open discussion, collaboration and "let's see how
this works" implementation-led prototyping. We're a lot more like an
opensource project and less like a standards initiative in that regard. I
set up the bugtracker as a nod towards creeping professionalism, given that
enough folk in recent times have started to invest a lot of energy and
intelligence in FOAF-based apps, and concern that FOAF hacking should be a
rewarding rather than frustrating experience for would-be Semantic Web
developers.
Naming in FOAF is a good testbed for finding a healthy balance between
open discussion and paralysis-through-concensus-fatigue. Taking my colleague
Michael Sperberg-McQueen's advice, also the slogan of the
ESW:SeedApplications wiki page([3]),
"When you go meta, don't forget to come back". I'm wary of going too 'meta'
here in discussion of FoafVocab development process, yet also aware that
the lack of explicit scoping goals for the FoafVocab could make it hard
for us to know when we're "done". Probably the best way we can avoid
going too meta on process is to focus on specific examples and goals. I tried
to write up one just now in [4], based on the (previously unarticulated?)
goal of roundtripping my name information between FOAF and other more
person-centric representations, in particular LDAP and vCard.
Coming back to your specific proposals, let me see if I understand
correctly. Is the idea that we focus on use of foaf:name (with flat
string values) for the basic preferred form of someone's name, while also
providing an account (via a list indicated by sortName) into the
compositional sub-structure of that name? So we have RDF classes for the
various kinds of name component, and these are related only indirectly to
the named person because we want to preserve the ordering information too.
How would this work with me? My general name is 'Dan Brickley' (although
firstname formally is 'Daniel', but more people call be 'DanBri' than
'Daniel Brickley' :). My unused middlename is 'Alexander'. I'd like
(for LDAP/LDIF/vCard import/export) to be able to record that
(which would require a new class?), without it implying or suggesting that
my name ought to be written 'Dan Alexander Brickley'...
I'm in two minds with the sortName/list construct. Indicating the
substructure of the name seems handy, and for that ordering is needed;
however the intermediate nodes complicate the task of finding out
relatively basic things. For eg., retrieving my middlename would require
navigating from my person node to my sortnode list then testing each of
its members to see if they were of rdf:type foaf:MiddleName (if such a
construct were included).
I do agree that foaf:name provides the island of sanity in all the
confusion and complexity surrounding naming, maybe we could be clearer
about that part of FOAF being considered more stable that the rest of the
naming vocab? Another thought: we could be more explicit about using
rdfs:subPropertyOf when cleaning up the redundancy in the current vocabulary,
eg. between surname and lastname, so that existing content didn't become
outlawed. But that would, on my reading of your proposal, mean keeping
the property-oriented representation, ie. relations (of various kinds)
between people and the strings that are part of their names. Do you think
that could be made consistent with the class oriented
representation you propose?
Sorry for lack of consise thoughts on this topic! Maybe rdfweb-dev folk could
contribute some more non-western name examples (here or in the Wiki at [4])
so we can try writing up some full examples, see how they look...
cheers and thanks again Morten for getting this moving,
Dan(Bri)
[1] http://www.wasab.dk/morten/2003/04/foaf-names-proposal-1.html
[2] http://rdfweb.org/issues/show_bug.cgi?id=7
[3] http://esw.w3.org/topic/SeedApplications
[4] http://rdfweb.org/topic/FoafNamingUseCases
~
More information about the foaf-dev
mailing list