Re: RIF Working Group needs namespace name for xpath "op"

Dear all,

Has my explanation of the need for RIF to identify functions and 
comparators been satisfactory?

To come back to the original question of Sandro [1]:
Can we pick a namespace to use for naming functions and comparators that 
are currently not named?

The original proposal by Sandro was:
http://www.w3.org/2005/xpath-operators


Best, Jos

[1] http://lists.w3.org/Archives/Public/public-qt-comments/2008Mar/0021.html

Jos de Bruijn wrote:
> Hello,
> 
> This is an e-mail sent in reply to the thread starting here [1].
> 
> I am a member of the RIF working group and involved with the technical
> design of the language.
> 
> RIF is a logical language for exchanging rules over the Web, essentially
> based on predicate logic.  As such, the main building blocks of the
> language are constants, functions, and predicates. Predicates are
> essentially relations.
> Constants and functions may only be used inside predicates. Different
> predicates may be composed using logical connectives such as and, or,
> and implication.
> Therefore, RIF is a relational language (in contrast to, e.g., xpath,
> which is a functional language).
> 
> Most of the predicates, functions, and constants used in rules are
> provided by the user, so RIF cannot say how they should be interpreted.
> However, in any practical rule language (including RIF) there are some
> "built-in" predicates and functions, which have a defined meaning.
> These built-ins are typically concerned with concrete data values (e.g.,
> integers, strings), and include such things as numeric comparison and
> substring matching.
> 
> Now, XML schema defines a number of built-in datatypes that are of
> interest to RIF.  In the interest of reusing existing standards and
> since using XML schema built-in datatypes is generally recommended for
> semantic Web languages (e.g., RDF and OWL), we decided to use XML schema
> built-in datatypes for the representation of concrete values in RIF.
> Since we want to enable users to manipulate and compare concrete data
> values, we want to include built-in functions and predicates that work
> on XML schema built-in datatypes.
> 
> The "XQuery 1.0 and XPath 2.0 Functions and Operators" document defines
> a number of functions and a number of comparators on XML schema built-in
> datatypes.  Since we are interested in reusing existing standards and
> avoiding duplication of effort, we want to adapt a number of these
> functions and comparators to our context (e.g., a comparator with an
> xsd:boolean return value becomes a built-in predicate in RIF) and use
> them in RIF.
> Since RIF is a Web language, we want to use IRIs to identify these
> built-ins.  Now, the "XQuery 1.0 and XPath 2.0 Functions and Operators"
> document defines IRIs for a number of the functions and comparators, but
> not for all of them.  For example, the numeric-add function does not
> have an IRI. So, our problem is: which IRIs should be used to refer to
> such functions and comparators?
> 
> 
> It has been suggested in the thread starting with [1] that we could add 
> specific symbols (e.g., >) to our language for such "IRI-less" functions 
> and comparators.  However, I do not really see a justification for 
> adding symbols to the language for specific built-in functions, but use 
> IRIs for others.  I think the language should be uniform and use IRIs to 
> identify any built-in predicate or function.
> Finally, if we were to introduce the same symbols for functions and 
> comparators as xpath does, the operators are polymorphic, which is 
> undesirable for us because we want to RIF processors to be able to see 
> from a rule sets which datatypes and built-ins it needs to support to 
> process the ruleset, and polymorphic operators would require processors 
> to implement all the underlying data types and built-ins.
> 
> Best, Jos
> 
> [1] 
> http://lists.w3.org/Archives/Public/public-qt-comments/2008Mar/0021.html

-- 
Jos de Bruijn            debruijn@inf.unibz.it
+390471016224         http://www.debruijn.net/
----------------------------------------------
Only two things are infinite, the universe and
human stupidity, and I'm not sure about the
former.
   -- Albert Einstein

Received on Thursday, 17 April 2008 10:29:02 UTC