- From: Sergey Melnik <melnik@db.stanford.edu>
- Date: Thu, 17 May 2001 14:07:24 -0700
- To: "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>
- CC: connolly@w3.org, phayes@ai.uwf.edu, www-rdf-logic@w3.org
"Peter F. Patel-Schneider" wrote:
> [...]
> I think that Pat has precisely characterised the situation.
> There have been numerous posts on this group extolling the virtues of
> reification. Many times I think that I am listening to late-night
> infomercial:
>
> Reification---it chops, it slices, it dices. No language should be
> without it. No language needs more than it. Get yours now. Easy
> payment terms of just endless hours of frustration from now to
> eternity.
>
> [Only partly in jest.]
Despite all due frustration, reification offers a simple mechanism to
address several important modeling capabilities heavily used in almost
all but trivial applications. Let me remind you of some of them using
examples of some important tasks:
- aggregation: pull out a complete description of a book, incl. authors,
affiliation etc. from a dataset containing multiple book
descriptions.
Need to know where to prune the graph.
- ordering: find the first author of a given book.
- nesting: attach a digital signature to a set of statements.
- quotation: enough of it on this list...
RDF folks seem in a tough stance trying to satisfy both XML folks and
logic folks. XML folks want a data structure, and have very pragmatic
and application-centric requirements. Logic folks want a logical
language with well-defined semantics. While this balance is extremely
hard to find, reification is one of the few mechanisms I'm aware of that
looks like a data structure instrument (admittedly, a clumsy one), but
is amenable to forging a logical interpretation around it (which might
not be quite elegant either).
I have serious difficulties in explaining to developers why they should
give up aggregation, ordering, and nesting that come "for free" with
XML, and turn to RDF instead. I have really hard times finding
satisfactory representations for these features in RDF, both from the
perspective of programming convenience and model-theoretic
interpretation. Maybe reification is a wrong hammer for those nails? If
so, can anyone criticizing reification suggest a more suitable mechanism
for handling the aforementioned features that makes both programmers and
logicians happy?
Sergey
Received on Thursday, 17 May 2001 16:42:40 UTC