W3C home > Mailing lists > Public > public-rif-wg@w3.org > April 2008

Re: where to hang the metadata?

From: Sandro Hawke <sandro@w3.org>
Date: Mon, 28 Apr 2008 12:31:02 -0400
To: kifer@cs.sunysb.edu (Michael Kifer)
Cc: "Boley, Harold" <Harold.Boley@nrc-cnrc.gc.ca>, public-rif-wg@w3.org
Message-ID: <7613.1209400262@ubuhebe>


> > > The following version of it seems to be best for Phase 1 convergence:
> > > 
> > >    1.  Allow metadata, syntactically, on four scope-like objects, via a
> > >        <meta> child element which is legal on these capitalized (class)
> > >        elements that create natural scopes:
> > >          * Document
> > >          * Group
> > >          * Forall
> > >          * Exists
> > >        No need for wrapper elements.  In a normal rule, the Forall
> > >        is where you'd hang metadata. You can also give metadata to the
> > >        complementary Exists for conditions (queries and constraints).
> > >        The PS for the additional metadata-enriched elements is easy:
> > >        'Forall' IRIMETA? Var* '(' CLAUSE ')'
> > >        'Exists' IRIMETA? Var* '(' FORMULA ')'
> > 
> > It seems odd to have it on Forall and Exists but not Atom and Frame,
> > etc.  Ground terms need metadata, too, don't they?     My personal
> > preference is to allow it everywhere, and have no wrapper.
> 
> Facts that need metadata can be wrapped with Group.

They can, but that misses the point.

> Having metadata on all objects will make the presentation syntax horrible
> and is an overkill in my view.

Then leave the metadata out of the presentation syntax, since it has no
effect on the semantics anyway (and the presentation syntax is nominally
just there to help specify the semantics).  I'm only half serious, but
I do not think this is a good reason to object.  If people want to put
metadata on something like a constant, they can live with it being
ugly.

> > But I heard others, eg Jos, say that rules are conceptual entities,
> > whatever their syntactic structure, and should have first-class
> > existance at the management/metadata level.  They may be right, and I
> > can certainly live with having it in the language.  Adding an optional
> > <Rule> wrapper will make a lot of people happy and do no serious harm,
> > IMHO.
> 
> The Rule wrapper is unacceptable from the FLD point of view.

It is a single-element wrapper, which some people call "Rule", like the
multiple-element wrapper, which some people call "Group".  If you find
the term "Rule" too misleading in the FLD point of view, can you suggest
another term for the single-element wrapper.  "Element", perhaps?  I
think I suggested "Item" during the call.  (it's also ugly from some
perspectives, of course.  In general, I think "Rule" is better.)

> I am glad that there is FLD to keep us honest :-)
> And this extra wrapper is just bloat that gives nothing.
> 
> All this mess indicates to me that the only good solution is our original
> proposal to use Group only. All the talk about the first-class existence
> for rules reminds me medieval disputations about how many devils can fit on
> a needle point.

Then can I suggest, perhaps, that you stop arguing about it?  To you,
your original proposal is "the only good one".  To some other people,
respectfully, other proposals are "the only good one(s)."  Is it the
best use of our four remaining weeks to keep trying to convince each
other, or shall we hold our noses, settle on some design that kind of
stinks, and move on to some of the more important remaining issues?
The proposed compromise is that you can have <Group>, if you'll let
other people have <Rule>.

        -- Sandro


> 
> 	--michael  
> 
> 
> > >    2.  Keep the Group element, for making these conceptual groupings
> > > that,
> > >        e.g., Michael speaks of (and, e.g., Sandro is familiar with from
> > >        his rule programming), where metadata apply to a set of rules).
> > > 
> > > This works nicely for both BLD and FLD (Forall's CLAUSE becomes
> > > FORMULA).
> > 
> > So the proposed compromise (which Chris also sent the list - we talked
> > about it on the phone with Christian) is to have both the <Group> and
> > <Rule> wrappers.  I'd also like metadata everywhere else, too, but I
> > think I can life with this compromise if everyone else can.
> > 
> >         -- Sandro
> > 
> > > 
> > > -- Harold
> > > 
> > > 
> > > -----Original Message-----
> > > From: public-rif-wg-request@w3.org [mailto:public-rif-wg-request@w3.org]
> > > On Behalf Of Sandro Hawke
> > > Sent: April 22, 2008 4:37 PM
> > > To: public-rif-wg@w3.org
> > > Subject: where to hang the metadata?
> > > 
> > > 
> > > 
> > > Thinking over today's difficult discussion about metadata, it seems to
> > > me that the right solution is this:
> > > 
> > >    1.  Allow metadata, syntactically, on every object, by way of a
> > >        <meta> child element which is legal on every capitalized (class)
> > >        element.  No need for wrapper elements.  In a normal rule, the
> > >        "Forall" is where you'd hang the metadata.  I have some ideas for
> > >        the PS, but no favorites.
> > > 
> > >    2.  Add a "group" element, for making these conceptual groupings that
> > >        Michael speaks of (and I'm familiar with from my own rule
> > >        programming), where the metadata applies to a set of a few
> > >        rules).
> > > 
> > > What about this approach would be so bad?
> > > 
> > >        -- Sandro
> > 
> > 
> 
Received on Monday, 28 April 2008 16:32:46 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:33:48 GMT