- From: John F. Sowa <sowa@bestweb.net>
- Date: Tue, 28 Mar 2006 20:20:06 -0800
- To: Dan Brickley <danbri@danbri.org>, Harry Halpin <hhalpin@ibiblio.org>
- CC: semantic-web@w3.org, Frank Manola <fmanola@acm.org>, Adrian Walker <adrianw@snet.net>, "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>, p@virtualTaos.net, ONTAC-WG General Discussion <ontac-forum@colab.cim3.net>
Dan and Harry, HH>> Again, I'm not sure if a Semantic-Web interest list is the place >> to be arguing against the Semantic Web per se, but John brings up >> some interesting points. DB> It's a fine place, so long as the debate is reasoned and polite. Thanks for not being upset about my comments, but I'd like to emphasize that I'm definitely in favor of the Semantic Web, but I do have some serious concerns about some of the design choices. Let me point out some things I like: 1. The use of Unicode and URIs. 2. The use of XML for marking up documents. 3. The use of logic-based languages such as RDF and OWL, which are semantically compatible with subsets of the draft proposed ISO standard for Common Logic. Some things I'm not happy with: 1. The limitation of RDF to just triples. There is no reason why they can't support full n-ary relations. That would certainly simplify the mapping to and from relational DBs. 2. The bloated syntax of RDF & OWL. (Yes, I've heard all the arguments for compression, for better human factored tools, etc. I've heard similar apologies for other design mistakes over the past 40 years, and they've always turned out to be wrong.) Suggestion: I propose an alternate notation for RDF-like triples (with the option of n-tuples), which would be an XML tag that encloses a list of tuples defined by the following two BNF rules: TupleList ::= Tuple* Tuple ::= "(" Relation Argument* ")" The first rule says that a tuple list consists of zero or more tuples. The second rule says that a tuple has a left paren followed by a relation followed by zero or more arguments followed by a right paren. The syntax for the relation and arguments would be identical to the RDF syntax so that any list of RDF triples could be mapped into such a list. It would also provide a convenient way of representing the data in a relational DB. A relation with no arguments would represent a named assertion -- i.e., a proposition in propositional logic. This would just be an option. If the RDF tools are sufficiently easy to use, nobody might ever feel the desire to use a tuple list. But it would also provide a convenient method for representing data from RDBs and other similar systems. It could also serve as a humanly-readable compression algorithm for RDF. (And tuple lists could, of course, be compressed further, if desired.) John Sowa
Received on Wednesday, 29 March 2006 04:22:12 UTC