Re: Datatypes: the Bermuda Triangle, and how to fly over it.

GrahamK wrote:
> I agree with your conclusion about the rdf:value+rdf:type idiom.
>
> I've been mulling a similar problem with some of my ideas, and I'm not sure
> I'm convinced by the need to introduce anything new (rdf:dtype, or whatever).
>
> Where there are multiple type constraints, why not simply require that they
> *all* be satisfied, per conjunctive type semantics.  If the various applied
> types cannot be simultaneously satisfied in this way then we simply have an
> unsatisfiable graph.  Tough.

well Graham, I think union is needed i.e. Pat's
[[
  BTW, the easiest way to understand rdf:value here would be that it is
  a union (disjunction) of inverses of canonical submappings of the
  datatype mappings in D, ie IEXT(I(rdf:value)) = {<x,y> : for some
  datatype d in D, LV(d)(y)=x} .
]]

we experimented with rdfd-theory.n3 i.e.

####
# $Id: rdfd-theory.n3,v 1.2 2002/02/01 13:21:45 amdus Exp $

# axioms for RDFD entailment

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix log: <http://www.w3.org/2000/10/swap/log#> .
@prefix mt: <http://www.w3.org/TR/rdf-mt/#> .
@prefix : <rdfd-rules#> .

rdf:value rdf:type rdf:Property .
rdf:value rdfs:domain rdfs:Resource .
rdf:value rdfs:range rdfs:Literal .

rdf:dtype a rdf:Property .
rdf:dtype rdfs:domain rdfs:Resource .
rdf:dtype rdfs:range rdfs:Resource .

rdf:dtype rdfs:subPropertyOf rdf:type .

:RDFD-1 rdfs:isDefinedBy mt:rdfsentail .
this log:forAll :s, :p, :o .
{ :RDFD-1 rdfs:isDefinedBy mt:rdfsentail .
  :p rdfs:range :D . :s :p :o } log:implies { :o rdf:dtype :D } .
####

and found no trouble (so far)

--
Jos De Roo

Received on Friday, 1 February 2002 08:33:25 UTC