- From: Sandro Hawke <sandro@w3.org>
- Date: Sat, 14 Feb 2009 09:46:41 -0500
- To: kifer@cs.sunysb.edu
- cc: public-rif-wg@w3.org
> > The idea is to have one presentation syntax for all dialects.
> > The code isn't done enough for me to say with confidence whether it's
> > currently a superset of the BLD PS, but I've tried to make it so.
>
> Interesting. This is essentially part of what FLD is trying to achieve for
> logical dialects.
>
> Since you want this to be a syntax for all dialects, it should
> be a superset of the FLD PS, not just BLD PS. Furthermore, it must then also
> subsume PRD (if by "all dialects" you really mean all dialects).
Yes, of course. I hadn't looked at them yet, but within this framework,
I wouldn't expect them to be difficult.
Looking at it a little, I think MPS is a superset of FLD-PS (give or
take any vagueness in how its specified). (Okay, I cheated, and just
added NEG and NAF, which I hadn't gotten to.) I imagine there's similar
stuff in PRD.
Actually, I see now I didn't generalize External. What does External
with two arguments mean? Honestly, I have no intuition about how
anything other than a predicate or function-name could be external...
-- Sandro
> michael
>
>
> On Fri, 13 Feb 2009 16:13:30 -0500
> Sandro Hawke <sandro@w3.org> wrote:
>
> >
> >
> > I've been toying with an idea for the past week or two, and I've now
> > implemented enough of it that I'm pretty sure it's a good idea.
> >
> > The idea is to have one presentation syntax for all dialects. This
> > "merged" presentation syntax would be essentially the union of all RIF
> > dialects. Its grammar would NOT attempt to enforce any of the
> > restrictions of each dialect; that would be left to a higher "schema"
> > level.
> >
> > So, for instance, in MPS, it's perfectly valid syntax to say:
> >
> > forall ?x ( ?x(1) )
> >
> > even though that kind of higher-order construct isn't valid in any
> > current dialect. Moreover, MPS makes no attempt to enforce the
> > difference between formulas and terms, so it's syntactically valid to say:
> >
> > (x:p(3) and x:q(x:p(3)+1)) < 4
> >
> > The idea is that it's left to the dialect definition/schema to say
> > whether that's valid in the particular dialect. In either case, it
> > still has a well-defined mapping to XML.
> >
> > Part of my playing around with MPS has been to see if I can add the
> > things I'd like to see in a PS to make it more readable. For example, I
> > prefer "if" and "then" to an infix operator. I propose that we let the
> > person authoring a particular MPS document decide which to use. (In
> > some situations there might be style guidelines, eg saying to use ":-"
> > or to not use ":-", but that's just style. Both are available in the
> > language, as is "=>" for infix if-then.)
> >
> > Here are some things in the current (unambiguous LALR) grammar:
> >
> > -- infix operators for math and logic, with the normal
> > precedence rules
> > -- parens allowed everywhere, to override precedence
> > -- "if" and "then" keywords, in addition to ":-" and "=>"
> > -- variables not needing the leading "?"
> > -- local symbols required to have a leading "_" (as in DTB but
> > not in example 4 of BLD), or alternatively declared as local
> > in the header
> > -- keywords True and False (for rif:And() and rif:Or())
> > -- keywords InstanceOf and SubclassOf allowed along with # and ##
> > -- optional comma separator for arguments
> > -- optional semicolon separator for elements (formulas) in a group
> > -- bare uris and curies are allowed everywhere, although you have to
> > be a little careful in using them, since their syntax includes
> > some operators ( "p:x-3" is one curie; it's not "p:x - 3" ).
> > I'm torn about using qnames instead to avoid this problem.
> > -- Document and Group wrappers are optional
> > -- headers (eg Base(...)) and metadata can be given before ANY expressi
> on
> > -- and finally, as an experiment, I threw in { ... } for blocks of
> > N3 triples (another frame syntax, common in the semantic web
> > community). (it's not full n3 -- the term syntax within the
> > triples is MPS's term syntax, no N3's.)
> >
> > The code isn't done enough for me to say with confidence whether it's
> > currently a superset of the BLD PS, but I've tried to make it so.
> >
> > I hope to be able to demo it, and run it against the test cases, in a
> > few days....
> >
> > The current MPS BNF is here: http://dev.w3.org/2009/rif/mps.bnf
> >
> > -- Sandro
> >
> >
Received on Saturday, 14 February 2009 14:46:52 UTC