- From: Pat Hayes <phayes@ihmc.us>
- Date: Thu, 15 Apr 2004 18:51:16 -0500
- To: "Uschold, Michael F" <michael.f.uschold@boeing.com>
- Cc: "SWBPD" <public-swbp-wg@w3.org>, Jim Hendler <hendler@cs.umd.edu>
- Message-Id: <p06001f8ebca4b69d6ee2@[10.0.100.76]>
> -----Original Message----- >From: Jim Hendler [mailto:hendler@cs.umd.edu] >Sent: Wednesday, March 31, 2004 12:03 PM >To: Uschold, Michael F; Bernard Vatant; SWBPD >Subject: RE: philosophy of SWBPD (was Re: [OPEN] and/or [PORT] >: a practical question) > <snip> > >Look - my goal here isn't to be difficult -- it's to remind everyone >>that we are not writing up "AI Ontology" Best Practices. We're >>writing up SEMANTIC WEB best practices, and we're still very early in >>that game, largely making it up as we go along. >> >>MFU: you have a point. The discussion has mostly been about Ontology >>Engineering (not too surprising given the title of the working >>group) and not specific to the Semantic Web. The implicit assumption >>is that ontologies are a foundation for the Semantic Web, so it >>makes sense to build them to that they best serve their intended >>purpose. If you can think of things that should be out of scope >>for this TF because they do not explicitly address the Semantic Web, >>ithen say so. > >In case anyone hasn't figured it out by now - I THINK IT SHOULD BE >OUT OF SCOPE FOR THIS TASK FORCE TO WRITE ONTOLOGY ENGINEERING >DOCUMENTS HAT ARE NOT RELATED TO THE SEMANTIC WEB as part of this >Working Group. Right on. To amplify the point: Mike, what do you think their "intended purpose" IS on the SWeb ?? Seriously, that is a hard question to answer. <snip> > >> >>Let's focus on sharing the things we're learning from applying RDF >>and OWL, not from the previous years of other languages -- they are >>simply not the same >> >>MFU: this is a suprising claim, given that the core of OWL is >>basically no more different than any other knowledge/ontology >>language than any of them are different from each other. There are >>some key things that make OWL appropriate for the Web (e.g. URIs), >>but these are not central to the language in the sense that you can >>easly remove them and be left with a fully functioning KR/ONTOLOGY >>language. IMO, this is true, in the sense that you can easily remove the gas from a car and then it won't go. But in any case, it is a rather devastating CRITICISM of OWL. We all tried to come up with a new SW language, and all we got was a boring description logic dressed up in a truly awful syntax, with so much protective clothing wrapped around it to keep the DL reasoners safe that it looks like Tweedledum dressed for battle (http://www.sabian.org/Alice/lg24.gif) BTW, you missed the most interesting new thing, which is owl:imports. The most significant new aspect of ontology-writing on the Web is going to be the fact that instead of worrying about how to interact with all those other ontologies and how to map your vocabulary to theirs, etc., you will first worry about which ones of them to USE. Using other people's concepts is going to be as easy as picking daisies. And if you are smart, you will sneak a look at successful ones already out there and see which combinations *they* imported, and copy them (just like the best way to learn how to write HTML is to tell your browser to show you the source code of all those webpages). Once things get started, you can probably do most of what you want, most of the time, just by chopping and gluing (like cutting and pasting but using rather heavier-duty tools). After a while we will probably be able to semi-automate even this. (The other mistake you make, it seems to me, is one that I made at first. URIs are not just a strange W3C syntax for logical constants. They are global identifiers which can be traced to their 'source' and have particular relationships to Web protocols, and Web applications make central use of this. The world of formal ontologies has never thought about this idea before, and it changes many of our ground assumptions. I think I can show rigorously that it even changes the logic, for example. It allows a model theory to define things like indexicals and self-referential documents rigorously, and allows formal descriptions to refer to genuine things like people and digital signatures. It enables formal ontologies to reach out into the actual world, instead of just describing it.) Here's a few other Webbish points off the top of the head. 1. Beware of unrestricted universal quantifiers (in OWL these appear in odd ways, eg by invoking owl:complementOf too easily). An unguarded universal is a claim to be quantifying over the entire universe. On the Web, it is ridiculous to claim to be quantifying over the entire universe. Nobody owns the universe. 2. When writing an Web ontology, be careful about what you deny. There are more things in heaven and earth than are dreamt of in your ontology. (Same point as previous, in fact.) 3. All hierarchies can be flattened by making the transitive subWhatever property into a genuine relation between individuals (eg think of every class as an individual and rename subClassOf as fakeSubClassOf, etc.). This is in fact a general technique for trivializing the OWL-DL syntax restrictions, at the (considerable) cost of leaving the OWL-DL class reasoners with nothing much to do, but it allows information to be transmitted so as to be sneaked past the DL censors, and a savvy application at the other end can reconstruct the class hierarchy as required. There are probably going to be many such transforming tricks in use once the SWeb gets going. Disapproving of them isn't going to stop them being used. 4. Once you put something out on the Web, some engines will try to find information in it that you may not have intended them to find, and/or transform it into some other form that you are not familiar with. There is absolutely nothing you can do about this. 5. There is also absolutely nothing you can do to stop a Web user from combining what you write with what someone else wrote, to draw conclusions that you did not intend. 6. Almost certainly, most significant use of Web ontologies will be made by applications which are using them in close proximity to other code that is doing other, non-inference, things. Classical reasoning with large ontologies is not the likeliest use case: rather, large number of very small pieces of information will be utilized together with a few large-to-medium ontologies. We should expect ad-hoc solutions to pressing practical problems to be used even if they are not guaranteed to be correct, and for there to a widespread need to interface inference with other kinds of operations performed by code, probably at many levels (Java, scripting, OS, web addressing, etc.) If some information is awkward or inconvenient to express in OWL , then the right solution may be to ask how to represent it in Java or a scripting language, rather than use awkward ontology work-arounds. OWL doesnt have any built-ins, but SWRL is thick with them. Can an ontology make use of built-ins? Classical logical ontologies don't have datatypes to work with, but OWL is licenced to use the entire XSD suite. And so on. 7. Web inference applications will often be written to extract and process particular kinds of data in specialized ways for a limited task, but from a variety of sources. The role of a semantics is to provide an overarching framework for communication and coherence rather than to be a talisman of completeness. Most inference engines will be highly incomplete in the logical sense. Logical completeness is not particularly interesting on the Web in any case, since complete knowledge is rarely obtainable. On the other hand, other kinds of inference may become more relevant. For example, efficient streaming inference modes which can easily handle incremental updates and additions are likely to be more significant. Ontology styles that interfere with these will be bad practice for some purposes. 8. Almost certainly, one important role for Web ontologies is to be an organized lexicon of concepts for use in marking up data within a 'community' (exactly what that means is itself an interesting question. ) Examples are Dublin Core and the OWL-S process ontology. In these cases much of the practical utility comes from the use of the common concepts rather than the actual inferencing which can be supported: the inference is just the icing on the cake, and in any case can maybe be done by ad-hoc code faster than by a reasoning engine. This requires new ways to evaluate the role of a formal ontology, and maybe new ways to combine the roles of formal inference support and of informal documentation of intended modes of use. The line between documentation and formal description will become more blurred (already happening, this one, to some folk's evident horror.) 9. The Sweb applications already in use exhibit what to a classical logical eye looks awfully like use/mention confusions all over the place. I used to think this was a symptom of a lack of formal training, sloppy thinking, etc. etc., but I now think that it is often in fact a useful and potentially powerful attitude that our formal models have not yet managed to catch up with. After all, LISP programmers have been doing this for 30 years. We logical types are way too Quinean. So we all insist that a URI is not the same as the string that looks like a URI, etc..,and that quoted strings must denote strings rather than what the strings denote, and the XSD folk spend years worrying about whether equal is equal to identical; and meanwhile Tim B-L's CWM engine and 4-year-old kids and any number of pieces of Java code can happily dereference when required without vanishing or bursting into flame. Maybe we need to think a bit more about how they do it, and rebuild our semantics to suit. Im sure there are others. All of these are likely to impact 'best practice' in web ontology design. Pat > >Yes, but it wouldn't be a SEMANTIC WEB langauge, and thus I would >argue (see above) this WG should not spend time discussing it > >They ARE central to the design of OWL, in the sense that OWL is >specifically FOR the Web, and thus had to have a few things that >typical KR/O languages lack. > >Yes, and strangely, this makes them SIGNIFICANTLY new and different, >and this WG, being part of the W3C SEMANTIC WEB activity should >primarily be concerned with the new aspects. > ><MFU: Following on from above, perhaps you can clearly state exactly >what the {Semantic Web}-specific parts are and give some examples of >some guidelines that are useful and specifically focus on these new >things. >MFU> > For all the other >stuff, we can point them at entire books full of decriptions of best >practices, and I don't see why we would waste our time as a Working >Group replicating 50 years of AI work > > > > >-- >Professor James Hendler >http://www.cs.umd.edu/users/hendler >Director, Semantic Web and Agent Technologies 301-405-2696 >Maryland Information and Network Dynamics Lab. 301-405-6707 (Fax) >Univ of Maryland, College Park, MD 20742 240-277-3388 (Cell) -- --------------------------------------------------------------------- IHMC (850)434 8903 or (650)494 3973 home 40 South Alcaniz St. (850)202 4416 office Pensacola (850)202 4440 fax FL 32501 (850)291 0667 cell phayes@ihmc.us http://www.ihmc.us/users/phayes
Received on Thursday, 15 April 2004 19:51:18 UTC