- From: Jos de Bruijn <debruijn@inf.unibz.it>
- Date: Tue, 10 Jun 2008 19:33:16 +0200
- To: kifer@cs.sunysb.edu
- CC: Rule Interchange Format Working Group WG <public-rif-wg@w3.org>
Michael Kifer wrote: > I was just checking if this was the intent. > > I think it is enough to define this function by a bunch of axioms > > iriToStr("a"^^rif:iri "a"^^xs:string). > > and not bother with the preceding text in your message. It is much simpler that way. It is debatable whether a syntactic or a semantic definition would be simpler. In any case, I would argue for a semantic definition for reasons of uniformity, since the definitions of the other predicates and functions in DTB are also semantic. Best, Jos > > michael > > On Tue, 10 Jun 2008 19:22:10 +0200 > Jos de Bruijn <debruijn@inf.unibz.it> wrote: > >> Well, it was the only reasonable alternative I could think of for >> casting IRIs to strings. >> >> I am personally actually not convinced that we even need such a casting >> function, but there are some people who think it is useful. >> >> Best, Jos >> >> Michael Kifer wrote: >>> This makes iriToString a multivalued function (i.e., the same iri has several >>> string interpretations). Is this what we want? >>> >>> >>> --michael >>> >>> On Tue, 10 Jun 2008 16:40:04 +0200 >>> Jos de Bruijn <debruijn@inf.unibz.it> wrote: >>> >>>> See [1] and preceding the messages in the thread for a description of >>>> the semantic problems. In [1] I also proposed a casting predicate that >>>> seems to work. >>>> >>>> In summary, the biggest semantic challenge in casting IRIs to strings is >>>> that several different IRIs may be mapped to the same string. The >>>> following was my proposal: >>>> >>>> "Let I be an interpretation, let u be an element in the domain of I, and >>>> let {i1, ..., in} be the set of IRIs that denote u, i.e. for each ij (1 >>>> <= j <= n), IC(ij)=u. IR(iriToString)(u,"ij")=t for (1 <= j <= n); >>>> IR(iriToString)(u,s)=f for every element s not in {"i1", ..., "in"}." >>>> >>>> The rule set >>>> iriToString("b"^^rif:iri,"b"^^xsd:string) >>>> >>>> is satisfied in every RIF interpretation. >>>> >>>> I think this predicates should be sufficient for most of the use cases. >>>> >>>> >>>> Best, Jos >>>> >>>> Rule Interchange Format Working Group Issue Tracker wrote: >>>>> ISSUE-61 (IRI-Casts): Casting to/from rif:iri [DTB] >>>>> >>>>> http://www.w3.org/2005/rules/wg/track/issues/ >>>>> >>>>> Raised by: Christopher Welty >>>>> On product: DTB >>>>> >>>>> It is clear users of RIF dialects such as BLD will want to be able to convert (cast) instances of rif:iri to/from other datatypes, in particular strings and possibly rif:text. >>>>> >>>>> In general, a casting mechanism is not present in DTB and should be added. >>>>> >>>>> >>>>> > -- Jos de Bruijn debruijn@inf.unibz.it +390471016224 http://www.debruijn.net/ ---------------------------------------------- Public speaking is the art of diluting a two- minute idea with a two-hour vocabulary. - Evan Esar
Received on Tuesday, 10 June 2008 17:32:36 UTC