On Fri, 27 Sep 2002, Sigfrid Lundberg, NetLab wrote:
> The agent trio is interesting. They are instances of a general 'agent'
> class of objects, all of which, ideally, should share a number of
> properties. It has been claimed that creator, publisher and contributor
> are already refinements of a more abstract 'agent' element, an element
> that was once upon a time called the 'secret agent' ;-)
In terms of the DCMI grammar this mixes up two things. As you say, Agent
is a class. An Agent is a thing. dc:creator, dc:contributor and
dc:publisher are properties, i.e. they are relationships between things of
class Agent and other kinds of things of class Resource.
It doesn't make sense to me to use 'agent' as a property (i.e. "I am the
agent of book X" is non-sensical) therefore creator, contributor and
publisher are not (can not be) refinements of agent!
dc:contributor feels to me like a fairly generic 'contributing' kind of
relationship between things of class Agent and things of class Resource.
dc:creator is a more specific relationship, therefore it is a
sub-property of dc:contributor.
> There is a
> similar relation between the elements relation and source.
Yes, I think it would be reasonable to define dc:source as an element
refinement of dc:relation. (Of course, if DCMI considers the Resource
class to include all things in the Agent class and the use of the word
'resource' in the definition of dc:relation is a reference to the Resource
class, then dc:creator, dc:contributor and dc:publisher could also be
considered as element refinements of dc:relation! :-) ).
> One reason for why these problems arise is that the old html syntax made
> clear the refinement/dumb-down path, whereas these features now are hidden
> in various schema definitions.
Not really. The real problem is that the dotted HTML syntax allowed
people to create new properties by combining an element and a refinement.
(E.g.
DC.Contributor.Editor
is really a new property called contributorEditor). Unfortunately, DCMI
then made the mistake of trying to use only the name of the refinement
part (editor) as the stand-alone name of the new property :-(. This
leaves us in the rather odd position of having a property called
dcterms:alternative
when what we meant was
dcterms:alternativeTitle
:-(
Andy
--
Distributed Systems, UKOLN, University of Bath, Bath, BA2 7AY, UK
http://www.ukoln.ac.uk/ukoln/staff/a.powell +44 1225 383933
Resource Discovery Network http://www.rdn.ac.uk/
|