- 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