- From: Gian Piero Zarri <zarri@noos.fr>
- Date: Sat, 23 Oct 2004 13:15:48 +0200
- To: public-swbp-wg@w3.org
- Cc: gpzarri@paris4.sorbonne.fr
- Message-ID: <417A3D64.4070508@noos.fr>
DEFINING N-ARY RELATIONS ON THE SEMANTIC WEB Dear Natasha, Dear Alan, I came across your W3C Working Draft on Defining N-ary Relations on the Semantic Web. I have, of course, really appreciated your efforts to instruct languages like RDF and OWL to get out of the binary relations trap. I'm not, however, totally convinced about the generality of the solutions you propose. For example, I found as particularly non natural and anti intuitive the introduction of the individual Diagnosis_Relation_1 to represent the example "Christine has breast tumor with high probability". The solution for "John buys a 'Lenny the Lion' book from books.example.com for $15 as a birthday gift" is more appealing; however, it is quite similar to the solutions proposed by Schubert in a well known 1976 paper in the "Artificial Intelligence" journal on "Extending the expressive power of semantic networks". To my knowledge, Schubert's proposal has never been implemented in full, probably because of the difficulty to define correctly the case system for each single English verb, "purchase" in your case: see, in this context, Levin's book on "English Verb Classes and Alternations", Chicago University Press, 1993. I haven't resisted the temptation to represent your three examples as instances ("predicative occurrences") of NKRL's templates. NKRL (Narrative Knowledge Representation Language) is a formal language explicitly created to represent in the best way the "meaning" of "narratives" (in the widest meaning of this term) like those represented by your examples. The main innovation of NKRL is the addition of an "ontology of event" to the traditional (and binary-constrained) "ontology of concepts" in the OWL or Protege-2000 style. Templates are n-ary structures constructed around a semantic predicate (EXPERIENCE, OWN, PRODUCE, RECEIVE...), where the arguments of the predicate ("traditional" concepts or combinations of concepts) are introduced through "roles" like SUBJ(ect) , OBJ(ect), BEN(e)F(iciary), MODAL(ity)... Predicates and roles are primitives; concepts (about 2,5000 presently) are collected into a frame-like hierarchical structure, HClass. Templates correspond, in short, to formal definitions of classes of elementary narrative events like "being affected by a positive/negative situation", "buying or selling an object", "moving a physical object", "being present in a place", "producing a service", "sending/receiving a message", etc. 150 pre-defined templates, very easy to extend and customize, are actually associated with NKRL; they are structured into a second hierarchy, the "hierarchy of templates", HTemp, which is the materialization of the ontology of events evoked before. NKRL is fully implemented (Java2) in both a file-oriented and an ORACLE-oriented version; information about the NKRL's theory can be found on my Web site (http://www.lalic.paris4.sorbonne.fr/Zarri/home.html). Concretely, the NKRL representations of your two first examples, "Christine has breast tumor..." and "Steve has temperature, which is high, but falling" are obtained as instantiations of the template "Experience:NegativeHuman/SocialSituation" (3.211) pertaining to the "Experience:" branch of HTemp. The representation of the "John buys..." event is an instantiation of the template "Produce:Buy" (6.361) pertaining to the "Produce:" branch of HTemp. c1) EXPERIENCE SUBJ CHRISTINE_ OBJ breast_tumor MODAL (SPECIF probability_ high_) c2) EXPERIENCE SUBJ STEVE_ OBJ (COORD (SPECIF temperature_ (SPECIF magnitude_ high_)) (SPECIF temperature_ (SPECIF trend_ falling_))) c3) PRODUCE SUBJ JOHN_ OBJ (SPECIF purchase_ BOOK_1) SOURCE BOOKS_EXAMPLE_COM MODAL (SPECIF money_ USA_DOLLAR (SPECIF amount_ 15)) CONTEXT birthday_event The above code is shortened, in that, e.g., the predicative occurrences should always be accompanied by the formal representation of the temporal characteristics of the corresponding events - NKRL is endowed with a (relatively sophisticated) system for representing narrative temporal information and using this for conceptual indexing purposes. The fillers of roles like SUBJ, OBJ, MODAL etc. can be simple ("breast_tumor") or complex. In this last case, they are built up using the four AECS operators ALTERN(ative), ENUM(eration), COORD(ination) and SPECIF(ication); AECS operators share some similarities with the RDF "containers". The two AECS operators used in the code above are the "collective operator", COORD, and the "attributive operator", SPECIF. COORD means (roughly) that "the corresponding arguments cannot be dissociated" - in c2, the temperature is both high and falling. SPECIF is used (roughly) to introduce further details about the first argument of the SPECIF list - in c1, we specify that the probability is high. To built up unambiguous and well-formed complex fillers, very precise rules are used ("priority rule"); these are responsible, e.g., for the duplication of the "temperature_" term in the OBJ filler of c2. As already stated, the terms making up the fillers are elements of HClass, the NKRL "traditional" ontology of concepts. More precisely, terms in upper case are instances of concepts ("individuals"), see CHRISTINE_, STEVE_ and JOHN_ that are all instances of the "individual_person" concept. Terms in lower case are concepts, both non-sortal (which cannot be directly instantiated), like "amount_" or "high_", and sortal (which can directly give rise to individuals), like "breast_tumor", "purchase_" or "birthday_event". For simplicity's sake, I have used here the original terms of your examples to denote concepts and instances; in reality, "temperature_" should be replaced by something in the style of "human_temperature", the current concept for trend n HClass is "gradient_" - a non sortal concept, specific term of "quantifying_property", etc. A last point. Through reification operations on the symbolic labels (like c1, c2 and c3 above) of the predicative occurrences, these last can be associated in order to take into account those "connectivity phenomena" typical of the narrative domain and that derive from the presence of second order relationships like causality, goal, indirect speech, co-ordination, subordination, etc. Thanks to the use of second order operators like CAUSE and GOAL, it is then possible to represent in NKRL situations like ""Christine has breast tumor with high probability BECAUSE of her long exposure to DDT and nonylphenol", or "John buys etc. IN ORDER TO sing his own praises to Jane". Best regards, Gian Piero ZARRI LaLICC, University of Paris4-Sorbonne zarri@noos.fr, gpzarri@paris4.sorbonne.fr
Received on Saturday, 23 October 2004 14:48:40 UTC