- From: Gary Hallmark <gary.hallmark@oracle.com>
- Date: Tue, 26 Jun 2007 00:00:03 -0700
- To: RIF WG <public-rif-wg@w3.org>
I find the pairs really tedious. How about class LIST subclass EnumeratedList property element : TERM* subclass RecursiveList property element : TERM+ property rest : TERM Friendly syntax could be EnumeratedList::= 'List' '(' TERM* ')' RecursiveList::= 'List' '(' TERM+ '|' TERM')' A fully striped XML instance of List(a ?Y c) is (pending details from Sandro) <EnumeratedList> <element><Const value="a"/></element> <element><Var name="Y"/></element> <element><Const value="c"/></element> </EnumeratedList> A fully striped XML instance of List(a ?Y | ?Z) is <RecursiveList> <element><Const value="a"/></element> <element><Var name="Y"/></element> <rest><Var name="Z"/></rest> </RecursiveList> Semantic "footnote": the rest TERM must be a LIST , a Var that unifies with a LIST, or a Uniterm function that returns (unifies with) a LIST. Boley, Harold wrote: > I worked on the abstract syntax for a modified list proposal: > http://www.w3.org/2005/rules/wg/wiki/Core/List_Constructor > > -- Harold > > >
Received on Tuesday, 26 June 2007 07:00:16 UTC