- From: pat hayes <phayes@ai.uwf.edu>
- Date: Mon, 23 Jul 2001 19:00:59 -0700
- To: Brian McBride <bwm@hplb.hpl.hp.com>
- Cc: w3c-rdfcore-wg@w3.org
>I asked my colleagues if they had any use cases for anon resources >that might help us with this issue. What follows is an (edited) >response I received. > > >Consider the case of describing services and being able to place adverts and >offers for such services. For example here is an (massively simplified) advert >requesting a service (all uri prefixes dropped for clarity): > >#advert123 :role "buyer"; > :description [:product :roses; > :quantity [:units :kg; :minValue "100"]]. > >And here is a supplier who can offer a range of services: > >#advert456 :role "seller"; > :description [:product :roses; > :quantity [:units :kg; :maxValue "500"]]. > >Neither is a specific service. The "buyer" advert is essentially a template. Well, is it a template or is it RDF?? That word 'template' means, presumably, that this is meant to be interpreted as something that is not making an assertion about someTHING, but rather a general assertion about a whole lot of things at once (ANY quantity of roses less than 100 kg) or maybe as a 'schema' which isnt about anything as it stands, but can be made to be about something by filling a value to instantiate the 'variable' in the template by suitable matching of some kind (eg [:units :kg; :minvalue "100"] might 'match' [:units :kg; :exactvalue "53"] ). Either way, it goes beyond the scope of the RDF M&S. There isn't anything in RDF 1.0 to support any notion of a variable than can be instantiated or matched. There probably ought to be, but there isn't. >The >seller is offering the existence of at least one service that >matches a template >- he may have many actual instances on offer which differ by >location, qos etc. He may, but that isn't what his RDF says. It just says that a (singular) quantity of roses exists. He might just have one rose, and that would make his assertion true. > >Here is an offer of specific service: > >#offer890 :inResponseTo #advert123; > :instanceOf #advert456; > :service #service42 > What does "instanceOf" mean? Where in RDF does the instantiation take place? How are variable bindings done and what do they mean? >#service42 :product :roses; > :quantity [:units :kg; :value "200"]]; > :deliveryTime [:units :days; :value "2"]; > :deliveryMethod "TNT"; > etc > . > >Now. If we don't have anonymous nodes then we have the following problems. > >(1) In the seller advert it would appear that the seller is only advertising a >single specific (but under-specified) service, #anon12345 or whatever, which >would be hard to distinguish from an actual service instance like #service42. > >(2) Similarly in the buyer advert instead of describing a template, giving the >service a URI would make it appear that I am looking for a specific >service with >that URI. We have these problems - if they are seen as problems - with or without anonymous nodes. > >This is clearly similar to DanC's book buying example. And suffers from the same snags. If the existentials can be instantiated then they arent being asserted, but must be in queries, which makes them equi-expressive with universals in assertions, which is outside the RDF model . Pat Hayes --------------------------------------------------------------------- (650)859 6569 w (650)494 3973 h (until September) phayes@ai.uwf.edu http://www.coginst.uwf.edu/~phayes
Received on Monday, 23 July 2001 22:00:52 UTC