[rdfweb-dev] Proposal: UsingDublinCoreCreator

Dan Brickley danbri at w3.org
Thu Jul 24 09:49:56 UTC 2003


Hi 

* Masahide Kanzaki <post at kanzaki.com> [2003-07-24 10:39+0900]

> >My conclusion is somewhat conservative, somewhat radical: to only use
> >dc:creator to relate a document to a name of a creator of the document.
> >And to use new RDF relations (eg. foaf:maker) when we want to relate a
> >document to an agent that created it.
> 
> I read through wiki page and agreed with the discussion, but don't think
> it's good to 'restrict' dc:creator to name only.

Thanks for the feedback. I should have stressed that there is nothing we
can do here to restrict dc:creator in any absolute terms, only come up
with advise and suggestions. Ultimately, you can write whatever RDF you
like in your FOAF file, including Dublin Core, Creative Commons, RSS
markup etc., and it won't affect its 'validity' in any sense.

There were some quite important things we were trying to assert using
dc:creator, and this was _forcing_ us to use a complex and somewhat 
controversial idiom. The addition of foaf:maker means we no longer need
to use dc:creator in this way, but it is not 'outlawed'.
> 
> As Dan noted on the wiki, there are many many implementations which use
> dc:creator as a container of Agent/People. The change of (or adding new
> restriction on) dc:creator syntax will make so many people unhappy.

Yes, this has been one of the longest-running debates in Dublin Core,
and something people definitely want to do. The problem is that in all
these years, there hasn't yet been consensus on how exactly to do it. I
am certainly in favour of experimentation though, I just didn't want
FOAF as a whole to rely on one particular experimental way of using DC.

> New foaf:maker property seems good, so why not just encourage to use this
> new element, and leave dc:creator as is ?

Yes, that's the idea. I think if people are writing FOAF-related
software which wants to do things based on who-wrote-what, foaf:maker
is the way to go, sadly. But hopefully the DC situation will get
clarified over the coming months, and we'll know how to express it in DC
too.

> I want as many people as possible to use metadata/RDF, while feel RDF/XML
> is not easy thing for ordinary users. I'm afraid this change would get
> people confused, and might keep them away from RDF because suddenly some of
> their documents become invalid ... (well, Dan says it goes 'best practice',
> i.e. not making them invalid ..?)

Yes, I agree. This should be clearly labelled as 'best practice' scoped
to FOAF-in-2003. I would love for there to be a more widely agreed
convention for this. Hopefully our implementation experience will feed
back into Dublin Core... 
 
> This is an information provider's view rather than an implementor's view
> which might be expected here. But I think it's worth considering.

Thanks for the perspective! Hopefully foaf:maker is simpler to use than
dc:creator because we do not allow so many variations (Bags, Seqs, Alts,
people, their names, ...), but it may still be hard to explain. Which
reminds me: the way I am coding the new spec, I have been writing a file
for each FOAF term, see http://xmlns.com/foaf/doc/ (*.en currently) which
get automatically included and cross-referenced within the body of the
spec. Hopefully this should make it easier to I18N-ise the doc. Anyway 
the current draft text for foaf:maker and foaf:made is 
http://xmlns.com/foaf/doc/maker.en
http://xmlns.com/foaf/doc/made.en

At the moment in maker.en I wrote:


	<p>
	The <code>foaf:maker</code> property relates something to a  
	<code>foaf:Agent</code> that <code>foaf:made</code> it. As such it is an 
	inverse of the <code>foaf:made</code> property.
	</p>

	<p>
	The <code>foaf:name</code> (or other <code>rdfs:label</code>) of the 
	<code>foaf:maker</code> of something can be described as the 
	<code>dc:creator</code> of that thing.</p>

	<p>
	For example, if the thing named by the URI 
	http://rdfweb.org/people/danbri/ has a 
	<code>foaf:maker</code> that is a <code>foaf:Person</code> whose 
	<code>foaf:name</code> is 'Dan Brickley', we can conclude that 
	http://rdfweb.org/people/danbri/ has a <code>dc:creator</code> of 'Dan 
	Brickley'. 
	</p>


	<p>
	FOAF descriptions are encouraged to use <code>dc:creator</code> only for 
	simple textual names, and to use <code>foaf:maker</code> to indicate 
	creators, rather than risk confusing creators with their names. This 
	follows most Dublin Core usage. See <a 
	href="http://rdfweb.org/topic/UsingDublinCoreCreator">UsingDublinCoreCreator</a> 
	for details.
	</p>

Perhaps we could change 'most Dublin Core usage' to 'mainstream Dublin
Core usage', and also note:

	The Dublin Core community are working on conventions for using
	dc:creator in a more qualified form, and has a <a
	href="http://dublincore.org/usage/">Usage Board</a> whose
	mission is to ensure the orderly evolution of DCMI 
	<a href="http://dublincore.org/documents/dcmi-terms/">metadata terms</a>. 
        Implementor experience with the simplified foaf:maker design
	will be provided to the DCMI Usage Board as input into these
	discussions.


...since this question affects several other DC terms too, for example,
dc:audience and other refinements of creator, contributor etc.

How does this sound?

Dan
 




More information about the foaf-dev mailing list