Re: Semantic Web Phase 2 Activity - Protocol

On 2003-11-11 16:42, "ext Graham Moore" <moore@ontopia.net> wrote:

> 
> 
> Given that the semantic web protocol issue has come up. I would just like to
> mention that the 'RDF Net API' has been published as a W3C member submission
> at
> 
> http://www.w3.org/Submission/2003/SUBM-rdf-netapi-20031002/
> 
> The W3C comment describes how this protocol relates to the work by Patrick
> and others in this area.
> 


Hi Graham,

I've read through the Net API materials with interest when it was
first announced and think it's really great, and a much needed protocol.
(though I actually didn't see any reference to URIQA though ;-)


> Both Andy and I would really like to have some comments and discussion about
> this submission as we really hope that it can spur on the creation and
> adoption of a semantic web protocol.
> 
> Cheers,
> 
> Graham


One important distinction between URIQA and the RDF Net API that I think is
missed (or at least not mentioned explicitly) is that the RDF Net API
is (IMO) strongly focused on supporting distributed, collaborative knowledge
management, such that to make greatest use of it, one has to know how
knowledge is managed on a given server; whereas URIQA has a different
focus, that of minimal, resource-centric knowledge discovery with complete
implementational opacity.

Thus, I see URIQA and the RDF Net API as complementary, not competing,
and representing two different sub-layers of functionality within the
SW "cake".

URIQA is that minimal bootstrapping behavior that all SW enabled
servers should support -- regardless of whichever more capable
and powerful protocols and services they accomodate.

Thus, one can use URIQA to discover which RDF Net API services
might be offered by a given server (their URIs corresponding to
their web interfaces), and to obtain descriptions of
those services (e.g. models exposed and descriptions of those
models, etc., etc.) via URIQA requests, before beginning an actual
interchange using the Net API protocol.

And of course, both URIQA and the Net API are simply interfaces,
so the same underlying knowledge server can provide for both
based on the same shared implementational infrastructure.

This approach works for any arbitrary web service, traditional
or SW, allowing each server to act as its own local service registry,
and SW mining bots to harvest service information from the actual
services and create global service registries in an ad-hoc fashion
(imagine Google Services...), with all web and SW services described
by RDF. And all that is needed for such an infrastructure is URIQA
(and the vocabularies to describe such services, of course).

URIQA also provides a flexible and scalable replacement for robots.txt,
allowing one to define robot behavior in RDF per each site hosted by
a given server, etc. -- and so many other cases where configurational
or similar knowledge is published/consumed in web context and must be
accessible for arbitrary servers by arbitrary clients.

In short, URIQA is where one starts, and gets the initial knowledge
one needs, to know how to proceed. It does one simple thing well, and
it's straightforward to implement, so the barrier to ubiquitous deployment
is kept as low as possible.

Anyway, I wanted to emphasize how URIQA and the RDF Net API are both
distinct as well as complementary, in case anyone got the impression
that they were competing approaches to solving the same problem.

Cheers,

Patrick


> ----------------------------------------------------------------
> Graham Moore, Ontopian            moore@ontopia.net
> GSM: +47 926 82 437           http://www.ontopia.net
> 
> 
> -----Original Message-----
> From: www-rdf-interest-request@w3.org
> [mailto:www-rdf-interest-request@w3.org] On Behalf Of Patrick Stickler
> Sent: 11 November 2003 13:00
> To: leo@gnowsis.com; www-rdf-interest@w3.org
> 
> 
> On 2003-11-11 12:27, "ext Leo Sauermann" <leo@gnowsis.com> wrote:
> 
>> 
>> In the last time I stumbled across the "Semantic Web Phase 2 Activity"
>> more often and expect that some people involved read this.
>> 
>> In my writing code, I clearly miss some things that would make life
>> easier:
>> so I think that they should be included in Phase2.
> 
> We clearly share similar concerns/interests.
> 
>> TimBl wrote that you need three things to build a WWW:
>> HTTP, HTML, URL
>> We clearly miss the HTTP part so at first i ask for :
>> 
>> 
>> A PROTOCOL
>> ==========
>> uriqa, Joseki, Sesame, they all have protocol.
>> 
>> We are missing a protocol, so do something about it.
>> 
>> important:
>> - distributed approach, how to identify the server when querying about
>> a given resource.
>> (see my comments about this in
>> http://lists.w3.org/Archives/Public/www-rdf-interest/2003Oct/0155.html
>> )
>> 
>> - queries over the protocol with query language
> 
> I'm not sure if full querying must be bound to the core protocol, as the
> core protocol should be as ubuiquitous as possible and having too great an
> implementational burden would hamper that.
> 
> I've drawn the line between a minimal protocol for "bootstrapping" the SW
> (i.e. URIQA) via which one can discover other supported protocols, APIs,
> services, etc. which a given server may support. E.g. if one executes the
> request
> 
> MGET http://sw.nokia.com HTTP/1.1
> 
> one gets back a description of the Nokia Semantic Web Server which indicates
> various services available, including a URIQA service for arbitrary URI
> queries as well as an RDFQ service for advanced queries. I.e.
> 
> <?xml version="1.0"?>
> <rdf:RDF 
>  xmlns:swarch="http://sw.nokia.com/SWArch-1/"
>  xmlns:uriqa="http://sw.nokia.com/URIQA-1/"
>  xmlns:webarch="http://sw.nokia.com/WebArch-1/"
>  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>  xmlns:owl="http://www.w3.org/2002/07/owl#">
>   <rdf:Description rdf:about="http://sw.nokia.com">
>       <rdf:type rdf:resource="http://sw.nokia.com/URIQA-1/Server"/>
>       <uriqa:service rdf:resource="http://sw.nokia.com/uriqa"/>
>       <swarch:service rdf:resource="http://sw.nokia.com/rdfq"/>
>       <webarch:service rdf:resource="http://sw.nokia.com/id"/>
>   </rdf:Description>
> </rdf:RDF>
> 
> Standardization of other, more involved protocols/APIs for advanced query,
> distributed knowledge management, rules, etc. need not overburden the
> deployment of that essential bootstrapping functionality.
> 
>> and some kind of
>> "Concise bounded description"
> 
> Most definitely.
> 
>> 
>> 
>> A Query Language
>> ================
>> RDQL, RQL ....
>> 
>> all nice but a common lanugage should include :
>> - OUTER JOIN Queries, (optional matches)
>> - giving a "template" for a subgraph to be retrieved, f.e.
>> "give me triples that do: (?x rdf:type foaf:Person), (?x * *)"
>> 
>> (these two things are in some projects, but not in all etc....)
> 
> I think that RDFQ [1] includes both of the above, but would be very keen to
> learn if it didn't.
> 
> The boolean logic of an RDFQ query input graph is
> 
> rdf:RDF
> {
>  rdfq:Query
>  {
>     ...
>  }
> OR
>  rdfq:Query
>  {
>     ...
>  }
> OR
>  rdfq:Query
>  {
>     rdfq:Target
>     {
>        ...
>     }
>  OR
>     rdfq:Target
>     {
>        ...
>     }
>  OR
>     rdfq:Target
>     {
>        PROPERTY VALUE
>     AND
>        PROPERTY VALUE
>     AND
>        PROPERTY rdfq:Value
>        {
>           CONSTRAINT=true
>        AND
>           CONSTRAINT=true
>        AND
>           ...
>        }
>     }
>  }
> }
> 
> Optional matches could also be defined in terms of a best-match algorithm,
> where targets are ranked according to the degree to which the template
> matches their description (by some formula).
> 
> I.e., RDFQ provides the means to specify one's ideal target, whether or not
> matched resources satisfy that ideal and whether such less-than-ideal
> resources are described in the results is not necessarily dependent on the
> query language.
> 
> Though, if this is a strongly desired feature, it would be straightforward
> to define a subclass of rdfq:Value, i.e. rdfq:OptionalValue, or some similar
> machinery to provide for this.
> 
>> 
>> URI Crisis guide
>> ================
>> Personally, I think that
>> "http://www.amazon.com/exec/obidos/ASIN/0679600108/qid=1027958807/sr=2
>> -3 /ref=sr_2_3/103-4363499-9407855" is a webpage that offers a book
>> for sale and that means
>> 
>> <http://www.amazon.com/exec/obidos/ASIN/0679600108/qid=1027958807/sr=2
>> -3 /ref=sr_2_3/103-4363499-9407855> <sale:offers>
>> <http://www.isbn.org/US/0679600108>
>> 
>> and sadly, the www.isbn.org guys don't offer a search for books on
>> their site and so we can't extract a url for  0679600108 from their
>> site, but this ought to change !
>> 
>> I think that <http://www.isbn.org/US/0679600108> is a global
>> identifier for the book and it should be used to represent the concept
>> of the book and used extensively in databases of Bookstores and
>> semantic text rezensions all over the world.
> 
> I agree. Though such use could only ever be voluntary.
> 
>> But thats what I think and the W3C ought to state what we should do
>> now about it and create some document where this is settled.
> 
> I think the most that could/should be done is to provide the means for folks
> to say what their URIs denote and provide consistent, standardized access to
> descriptions of those resources. I don't think we can tell folks that they
> must create certain URIs or what URI scheme they must use, etc. -- though
> promotion of certain "best practices" is certainly something the W3C could
> (and of course is working to) provide.
> 
>> I think this problem can be best settled by philosophers, librarians
>> and SemWeb people in concert.
> 
> Now *that* sounds like a fun party ;-)
> 
> Cheers,
> 
> Patrick
> 
> [1] http://sw.nokia.com/rdfq/RDFQ.html
> 
> 
>> 
>> 
>> Greetings
>> 
>> Leo Sauermann
>> www.gnowsis.com
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> Dear God,
>> For christmas 2003 I wish that you solve these things.
>> :-)
>> 
>> 
> 
> 
> 

Received on Wednesday, 12 November 2003 02:36:11 UTC