W3C home > Mailing lists > Public > www-rdf-interest@w3.org > September 2001

Standard way to qualify occurrences of resources as objects? New issue for resolution?

From: <Patrick.Stickler@nokia.com>
Date: Fri, 21 Sep 2001 09:38:31 +0300
Message-ID: <2BF0AD29BC31FE46B78877321144043114BFD6@trebe003.NOE.Nokia.com>
To: www-rdf-interest@w3.org, www-rdf-comments@w3.org
Cc: barstow@w3.org


Hi folks,

I'm trying to figure out how one might create an anonymous
node object which points to a resource via the standard
RDF property rdf:resource and which can be assigned additional
properties relating to the occurrence of that resource as
the value of a property.

I.e., I want to do something analogous to 

  <x:foo rdf:value="xyz" x:bar="jkl"/>

which results in an anonymous node object for the
property x:foo having itself values for the properties
rdf:value and x:bar.

You can't simply exchange rdf:value with rdf:resource, e.g.

  <x:foo rdf:resource="urn:abc:xyz" x:bar="jkl"/>

as that assignes the property/value pair x:bar="jkl" to
the resource itself, and not to the occurrence of the resource.

I thought that I could do something like the following

  <x:foo>
     <rdf:Description>
        <rdf:resource rdf:resource="urn:abc:xyz"/>
        <x:bar>jkl</x:bar>
     </rdf:Description>
  </x:foo>

but as pointed out by Art Barstow, rdf:resource can only be
an attribute, not an element. So even though the W3C RDF
validator produces the desired graph with the intended
semantics, it of course also issues a warning about the
invalid use of rdf:resource as an element name.

Note that I can't do the following

  <x:foo>
     <rdf:Description rdf:resource="urn:abc:xyz"/>
        <x:bar>jkl</x:bar>
     </rdf:Description>
  </x:foo>

as this is simply equivalent to the fully contracted form
above and defines a statement about the resource, not about
its occurrence as a property value.

It is very important (IMHO) that it be possible to do this in a way 
that does not rely on a custom ontology, for the sake of maximal 
portability. Being able to qualify the occurrence of any object
should IMO be doable using only RDF/RDFS constructs.

I'm hoping that there is a straightforward way to accomplish this
using only RDF or RDFS constructs/semantics, but I can't see it.

Perhaps the above (presently invalid) construct using the form
'<rdf:resource rdf:resource="..."/>' could be made legal, as a
standard way to accomplish such qualified resource occurrences?

Or is there a better way that I'm just missing at the moment....?

Thanks,

Patrick

--
Patrick Stickler                      Phone:  +358 3 356 0209
Senior Research Scientist             Mobile: +358 50 483 9453
Software Technology Laboratory        Fax:    +358 7180 35409
Nokia Research Center                 Video:  +358 3 356 0209 / 4227
Visiokatu 1, 33720 Tampere, Finland   Email:  patrick.stickler@nokia.com
 
Received on Friday, 21 September 2001 02:38:42 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:51 GMT