[DTB] Datatypes and Built-ins first run to clean up and extend the initial list

This is from Axel, Harold


-----Original Message-----
From: axel@ww.ia.urjc.es [mailto:axel@ww.ia.urjc.es] 
Sent: March 2, 2008 3:39 AM
To: Boley, Harold
Subject: [Fwd: [DTB] Datatypes and Built-ins first run to clean up and
extend the initial list]

Can you forward this to the RIF list?
It seems I cannot send it from this webmail-client to the list, I am
behind a mail-safe firewall ;-)

thanks,
 axel
---------------------------- Original Message
----------------------------
Subject: [DTB] Datatypes and Built-ins first run to clean up and extend
the      initial list
From:    axel@ww.ia.urjc.es
Date:    Sat, March 1, 2008 9:53 pm
To:      public-rif-wg@w3.org
------------------------------------------------------------------------
--

Dear all,

I did a first run on cleaning up the datatypes and built-ins document at

http://www.w3.org/2005/rules/wiki/DTB

What I did so far is:

 * Moving the syntax discussion for builtins to an own section (this
might go to BLD/FLD though)

 * Added a new syntax proposal for built-ins, which is very simpe:
     Why not just add one or two new symbol spaces for built-ins?
   We anyway cannot really take the XQuery/XPath functions and ops "as
is"
   since we have a deviating semantics in some respects, see below and
   comments in *bold* font in the document.

 * Adding "guards" and negative guards for all datatypes.

 * Adding cast functions

 * Sorting the list by Paula into functions and predicates

 * Cleaning up the syntax used a bit, e.g. istead of:


    op:numeric-multiply($arg1 as numeric, $arg2 as numeric) as numeric

  I now write:

    op:numeric-divide($arg1 as TERM, $arg2 as TERM) as numeric

  since - as if i understood correctly builtin terms are uniterms as
well -
  TERMs will be allowed in all argument positions.
  I should probably rather use the FLD signature definition syntax here.

  For predicates, I just droped the return type xds:boolean in Paula's
list,  e.g.

 "
   op:numeric-equal($arg1 as numeric, $arg2 as numeric) as xs:boolean  "
 is now

 "
   op:numeric-equal($arg1 as TERM, $arg2 as TERM)

  only defined if all arguments are numeric (i.e. their
  interpretation is in the value space of xsd:integer,
  xsd:long, or xsd:decimal), otherwise returns false.
 "

 We run into some issues here which I pointed out in *bold* font in the
document.

This is only a first draft, and I am struggling with the formatting of
the new wiki... but given the limited time I had, what I could achieve
so far.

best,
Axel

Received on Sunday, 2 March 2008 07:48:56 UTC