RE: [ISSUE-51] Formulae wrappers (1/2: abstract and concrete) -- small metadata handle

I have very similar concerns as those Michael expresses below,
and would like to make a minimalistic proposal.

Metadata embedding/referencing/attachment/wrapping of well-formed
language pieces is not specific to pieces that happen to be groups
of formulas (rules), individual formulas (rules), or to RIF.
Other WGs should be interested in that topic too, and we should
make at most an initial proposal for that, soliciting feedback.

Let's thus have a small 'metadata handle' in Phase 1 and converge
on the really urgent other work now, which is more central to RIF.

I propose to take metadata out from the Document level, relying on
a Document's top-level Group to provide document-wide metadata:

  Document  ::= 'Document' '(' DIRECTIVE* Group? ')'
  Group     ::= 'Group' IRIMETA? '(' (RULE | Group)* ')'

This way, we confine metadata embedding to a single element, Group,
keeping the door open to possible extensions.

An example in BLD can exemplify this and an Editor's Note in BLD
and FLD can solicit feedback.

-- Harold


-----Original Message-----
From: public-rif-wg-request@w3.org [mailto:public-rif-wg-request@w3.org]
On Behalf Of Michael Kifer
Sent: April 29, 2008 10:32 AM
To: Christian de Sainte Marie
Cc: RIF WG
Subject: Re: [ISSUE-51] Formulae wrappers (1/2: abstract and concrete) 




This does not work for several reasons.
(As an aside, you have correctly observed that there is no reason to
have
more than one wrapper to achieve what everyone wants in this group, so
we
are really wasting precious time.)

First, the Rule people want a syntactic restriction that allows just one
rule inside. So, it is not just a replacement of a wrapper name but also
syntactic tweaks in BLD and the formal syntax.

Second, even though FLD will not not have a tag for that wrapper in your
proposal, it is unclear how this will work with multiple dialects. Say,
dialect 1 has wrapper FOO and dialect 2 has wrapper BAR. Let's suppose
they
have a large intersection that includes BLD (which has Rule according to
your proposal). How will the compatibility at the XML level work?

Third, what about the possibility of attaching meta to sets of rules in
BLD?


Finally, I would like to voice an opinion that we are discussing the
possibility of bloating the language with unnecessary things at the time
when we should be focusing on wrapping up and DEBUGGING. I have VERY
little
time between now and the end of June. The document still needs a lot of
work and is buggy.  For instance, yesterday we discovered a MAJOR bug in
BLD. The syntax in the direct specification is completely off (it does
not
define rules!) -- that despite the fact that several very thorough
reviewers made several passes over it!

Both BLD and FLD still require a lot of work. Who is going to do all
that
and also implement the bloat voted in by the committee? DTB is in a very
rough shape and was never reviewed. SWC was reviewed only by one person
as
far as I remember. Apart from FLD and BLD, I am working on DTB and would
like to go over SWC with fine comb. And I do not think I'll have the
time
needed for even this "modest" agenda.


	--michael  



> All,
> 
> If I understand he situation correctly, one single all-purpose
construct 
> to wrap groups of FORMULAe is all we need; call it: Group.
Semantically, 
> it behaves the same whether it wraps a single FORMULA or a set of 
> FORMULAe, whether the wrapped FORMULAe are RULEs or whatever else,
etc; 
> and, thus, any other wrappers would just be redundant.
> 
> On the other hand, some people want to be able to distinguish, 
> syntactically, some special kinds of groups of FORMULAe. Specifically,

> some people (4 people and 3 half, according to the straw poll taken
last 
> Tuesday) would like to have a specific syntactic marker, in BLD, for
the 
> case where the Group contains only one single FORMULA and that FORMULA

> is a RULE. That is, renaming the Group: a Rule, in that specific case.
> 
> So, one question seems to be: can we enable dialects to distinguish 
> specific kinds of groups of formulae without having to bloat FLD with 
> all the possibilities?
> 
> Couldn't that specific point be resolved with FLD having only an 
> abstract construct for wrapping FORMULAe:
> 
>    Document       ::= 'Document' '(' WRAPPER? ')' /* leaving meta etc
out
>    WRAPPER        ::= WRAPPERNAME '(' (FORMULA | WRAPPER)* ')
> 
> Where 'abstract' means that it does not have an XML tag/syntax
associated.
> 
> Would that be enough for FLD to specify the semantics etc?
> 
> Then FLD-compliant dialect would instantiate the abstract WRAPPER into

> the concrete wrappers they need (that is, with a concrete associated
XML 
> syntax):
> 
> * E.g. the current draft of BLD instantiate  WRAPPER ::= Group
> 
>    Document	::= 'Document' '(' Group? ')'
>    Group     	::= 'Group' '(' (RULE | Group)* ')'
> 	
> * but it could be modified to instantiate WRAPPER ::= Group | Rule
> 
>    Document       ::= 'Document' '(' Group? ')' /* leaving meta etc
out
>    WRAPPER        ::= Group | Rule
>    Group		 ::= 'Group' '(' (RULE | WRAPPER)* ')'
>    Rule		 ::= 'Rule' '(' RULE ')'
> 
> etc.
> 
> The benefit would be to keep FLD simple and allow more syntactic elbow

> room in dialects (such as allowing singleton Groups containing a RULE
to 
> be called Rule instead; singleton Group containing a ground ATOMIC to
be 
> called a Fact; Groups that are sets of Rules to be called a RuleSet; 
> Whatever).
> 
> Opinions? Comments?
> 
> 
> 
> 

Received on Tuesday, 29 April 2008 14:31:06 UTC