- From: RIF <dean+cgi@w3.org>
- Date: Mon, 26 Mar 2007 17:43:41 +0000 (GMT)
- To: public-rif-wg@w3.org
ISSUE-31: RIF Issue about Disjoint Domains for Individuals, Functions, and Predicates http://www.w3.org/2005/rules/wg/track/issues/31 Raised by: Deborah Nichols On product: Technical Design RIF Issue about Disjoint Domains for Individuals, Functions, and Predicates Posted by Deborah Nichols on behalf of RIF Chairs The following issue is identified in section 2.1 of the RIF Core (http://www.w3.org/2005/rules/wg/core/draft-20070323.html): Issue: Should the symbols used for predicates, functions, and individuals be distinct in the RIF Core? [Ed. - The sets of individual constants, function symbols, and predicate symbols should be pairwise disjoint.] In RIF Core, this can be achieved by making sure that no symbol has more than one signature at the same time. Dialects can easily extend this by simply allowing the same symbol to have multiple signatures. This issue was briefly discussed at the end of the 2007-03-20 telecon (see Minutes: http://lists.w3.org/Archives/Public/public-rif-wg/2007Mar/att- 0066/20-rif-minutes.html) but remains unresolved. An open question: If the above sets are pairwise disjoint in RIF Core, how can we remove that restriction in a RIF dialect: Can this be done by extending the assignment of signatures to constants? An example could be useful. Editor’s note: If the same symbol is allowed to have multiple sorts in the Core (sec. 2.1, below*), doesn’t this override the restriction that the symbols denoting individuals, functions, and predicates belong to disjoint sets? Or, has the RIF Core so far not said anything about the names of individuals, functions, and predicates – all of which are covered by the sort rif:uri, and distinguished within that sort by signatures? Are individuals, functions, and predicates distinct sorts in the Core? Speaking only for myself, it would be helpful to review and perhaps further explain in the Core, the roles and interactions of sorts and signatures. --DLN *The current RIF Core draft, section 2.1, states that: [T]he RIF Core language does not separate symbols used to denote individuals from symbols used as names for functions or predicates. Instead, all symbols are drawn from the same universal set. When desired, separation between the different kinds of symbols is achieved through the mechanism of sorts. In logic, the mechanism of sorts is used to classify symbols into separate groups. Currently RIF Core supports the sort rif:uri for URIs, and the sorts xsd:long (http://www.w3.org/2001/XMLSchema#long), xsd:decimal (http://www.w3.org/2001/XMLSchema#decimal), xsd:time (http://www.w3.org/2001/XMLSchema#time), xsd:string (http://www.w3.org/2001/XMLSchema#string), and xsd:dateTime (http://www.w3.org/2001/XMLSchema#dateTime). Other sorts (such as xsd:double, xsd:date, and a sort to represent temporal duration) might be added in future drafts. To make RIF a Web language and to facilitate extensibility, the underlying logic of RIF is not only multi-sorted (i.e., allows multiple sorts), but it also allows symbols to be polymorphic (i.e., the same symbol is allowed to have several sorts). Some sorts can be disjoint and others not. RIF dialects will be able to decide which sorts will be allowed for predicate symbols, which for function symbols, and so on.
Received on Monday, 26 March 2007 17:43:43 UTC