- From: Jean-Marc Vanel <jmvanel@free.fr>
- Date: Wed, 29 Mar 2000 22:16:52 +0200
- To: xml-dist-app@w3.org, "wwbota@egroups.com" <wwbota@egroups.com>
Hello For our project of making botanical data available on Internet, I try to design a distributed knowledge architecture on Internet, in the line of the famous semantic Web. This is a revised version of a post of last week in xml-dev. It is mirrored in http://wwbota.free.fr/XMLprotocol.htm XML All-purpose Protocol This could also be called XML distributed architecture. For distributed computing, I expect HTTP+XML to dominate over Corba and COM in the long term. But SOAP (http://search.ietf.org/internet-drafts/draft-box-http-soap-01.txt) and XML-RPC are not enough. The need for servers to publish their schemas for queries and responses is fondamental. Moreover the publication of the schemas, and their consultation by the client, allows to simplify the subsequent messages (see the consequences for SOAP on our site). I you try to imagine how an application could navigate through Internet, searching resources, much like us humans navigate on Internet, starting with a search engine, and surfing from page to page, you can arrive to this solution: Axioms: servers must define precisely what they offer, and clients are free to take anywhere just what they need; every message sent is XML The proposed solution Specify an XML service At a well-known or starting point URL there could be a service specifying other services. And there the content would be something like: <serversDirectory xmlns="http://www.w3.org/2000/XAP"> <service xmlns:myVocab="http://myCom.com/"> <url>http://myCom.com/service.pl</url> <vocabulary>http://www.myCom.com/service.xs</vocabulary> <keyword>online shop</keyword><keyword>wine</keyword> <defaults><myVocab:myProperty>my value</myVocab:myProperty></defaults> <query> <query-element> myVocab:myQuery </query-element> <!-- name of an XML element in this vocabulary specifying the query --> <result-element> myVocab:myResult </result-element> <!-- name of an XML element in this vocabulary specifying the result of the query (a priori only one result-element per query) --> </query> </service> </serversDirectory> Notes: this offers both great flexibility and clear contract between client and server; a server can herald service(s) on the same site or others sites; the vocabulary, in XML Schema or RDF Schema (or even DTD for old-timers) can be on the same site or others sites; it can refer to Schema repositories like Oasis etc, so that client and server can share a prior knowledge ; it is possible to have a standard name for this file on a Web site, like index.html is the starting point for browsing, services.xml would be the starting point for an non-human client; possibly there is no <query-element>, or it is empty; using the vocabulary of "XML All-purpose Protocol" itself, it is possible to point to other <serversDirectory>'s, depending on the query made. a service is not only defined by queries and responses; two services can be differing only by the domain covered, e.g. one for plants of North America and one for plants of China; how to specify this in the serversDirectory element ? Or outside by RDF of Xlink statements? Answer: in the serversDirectory element; this is the purpose of the defaults element (could be called context) there are possibly several vocabularies per service, several query-element per query, several services per serversDirectory Client server protocol Most of the semantics of the communication is specified prior to the message by the serversDirectory element described above. What remain to specify are book-keeping and error managing items. Session ID This is similar to the transactionID from SOAP. This is an identifyer for a session, unique at least at server level. It must be attributed by the server the first time it encounters a client, and afterwards should be re-sent by both. The client starts a new session by sending a request without a SessionID. -- <person> <firstName>Jean-Marc</firstName> <lastName>Vanel</LastName> <conference>9th International World Wide Web Conference - Amsterdam, May 15-19, 2000 <a href="http://www.www9.org/">site</a> </conference> <project>Worlwide Botanical Knowledge Base - making botany available on Internet <a href="http://wwbota.free.fr/" >site</a> </project> <a href="http://jmvanel.free.fr/>home page</a> <a href="mailto:jmvanel@free.fr">mail (possibly put "wwbota" in subject to route your mail in relevant folder)</a> </person>
Received on Wednesday, 29 March 2000 15:23:23 UTC