- From: Ken Baclawski <kenb@ccs.neu.edu>
- Date: Fri, 27 Apr 2001 20:01:48 -0400 (EDT)
- To: Jeen Broekstra <jbroeks@cs.vu.nl>
- cc: www-rdf-logic@w3.org, Arjohn Kampman <akam@aidministrator.nl>, conen@gmx.de
On Thu, 26 Apr 2001, Jeen Broekstra wrote: > On Thu, 26 Apr 2001, Ken Baclawski wrote: > > [snip axiom 17 not applicable to the class Literal] > > > That can't be true. If so, then there is a problem with > > this axiom: > > > > Ax23. (=> (PropertyValue Object ?st ?o) > > (and (Type ?st Statement) > > (or (Type ?o Resource) (Type ?o Literal)))) > > I think that the problem is indeed with axiom 23, not 17. > > In the axiomatic semantics, "Type" is explicitly defined as > a shorthand for RDF statements whose predicate is the > property rdf:type: > > Ax1. (<=> (Type ?s ?o) (PropertyValue type ?s ?o)) > > where "PropertyValue" is a ternary relation that provides a > one-on-one mapping between RDF statements and KIF relational > sentences (see section 2.1). > > However, according to the RDF M&S spec: > > The property named "type" is defined to provide > primitive typing. The formal definition of type is: > > 5.There is an element of Properties known as RDF:type. > 6.Members of Statements of the form {RDF:type, sub, obj} > must satisfy the following: sub and obj are members of > Resources. [RDFSchema] places additional restrictions > on the use of type. > > Notice that according to point 6, the type relation can only > relate Resources. Not Literals. Thus, the rdf:type relation > can never be used to relate actual literals with the class > "rdfs:Literal", and thus an RDF statement of the form > > (type "someLiteral" rdfs:Literal) > > can not be made. This in turn means that the > clause (Type ?o Literal) in axiom 23 is meaningless. > > > How does one specify that ?o is a literal except by using > > (Type ?o Literal)? > > I think a new relation is needed in the axiomatic semantics, > specifically for indicating that something is a Literal. > Since this knowledge is atomic, a unary relation would > probably suffice: > > (Literal ?o) > > I'm no expert on KIF axioms, but this seems to me to solve > the problem. Although I think that this is a good idea, it does not entirely solve the problem. There are a number of axioms that would have to be modified to deal with the fact that Type cannot be applied to literals. For example: Ax85. (<=> (PropertyValue complementOf ?c1 ?c2) (and (PropertyValue disjointWith ?c1 ?c2) (forall (?x) (or (Type ?x ?c1) (Type ?x ?c2))))) The universal quantification here presumably includes literals, and Type is being applied to them. In particular, because (PropertyValue complementOf Thing Nothing) it follows that: (Type ?x Thing) which includes literals. -- Ken
Received on Friday, 27 April 2001 20:02:05 UTC