Re: terminating 'imports' loops (messages/events)

From: Dan Connolly (
Date: 03/23/01

pat hayes wrote:
> I also want to formalize web protocols, but I'm going to try to do it
> by creating an ontology of web events first, rather than go looking
> for a new logic.

Yes... events/messages... exactly.

> Now, that "true"
> back there is good oldfashioned logical truth in an interpretation,
> so what we need here isnt a new logic, but a way to ground assertions
> in the intended world of web actions. Its grounding, not reification,
> that we need here.

OK, I'm happy to talk about it that way; that's what I meant.

> Plus of course some language to do the
> action-describing in, which I suspect will be pretty minimal; I bet
> we could do it as a DAML+OIL ontology, in fact.

That's what I was trying to do. Let me try again
in a bit more detail...

(rdfs:Class sw:Message) ; the set/class of message-events in
			; the semantic web

(rdfs:subClassOf http:Request sw:Message) ; HTTP requests and reponses
(rdfs:subClassOf http:Response sw:Message) ; and responses

(rdfs:subClassOf http:OK200 http:Response) ; HTTP responses with status
				; code 200 "OK, here's the content..."

(daml:UniqueProperty http:body) ; the bytes carried in the body
				; of such a message
(rdfs:domain http:body http:OK200)
(rdfs:range http:body OctetSequence)

(daml:UniqueProperty xml:parse) ; the (root element of the) XML document
			; denoted by some bytes
			;(I'm simplifying over some character encoding
			; and MIME type issues for this discussion)
(rdfs:domain xml:parse OctetSequence)
(rdfs:range xml:parse xml:Element)

(daml:UniqueProperty rdf:parse) ; the set/class of RDF
				; statements/triples/formulas/sentences
                                ; denoted by some XML document.
(rdfs:domain rdf:parse XMLElement)
(rdfs:range rdf:parse rdf:Class)
(=> (rdf:parse ?xml ?statements)
    (rdfs:subClassOf ?statements rdf:Statement) )

; so... an HTTP 200 OK message ?m says a statement ?st if
;  ?st is in the class of statements denoted
;  by the the xml document denoted by the body
;  of the message.
(<= (sw:says ?m ?st)
    (and (rdf:type ?m http:OK200)
         (rdf:type ?st (rdf:parse (xml:parse (http:body ?m)))) ) )

; now back to daml:imports
; if a DAML ontology is an HTTP resource, think of
; it as a set of HTTP messages from that resource.
; (you can think of an HTTP resource as an agent, in this sense).
(rdf:Property sw:from)
(rdfs:domain sw:from sw:Message)

; I guess the axiom for daml:imports that I gave
; in my previous message was oversimplified.
; I guess it should really work like this...

(rdf:Property sw:entails)
(rdfs:domain sw:entails rdf:Class) ; a set/class of messages entails...
(rdfs:range sw:entails rdf:Statement) ; a statement

(forall (?m1 ?m2 ?ont1 ?ont2 ?f)
          (and (sw:from ?m1 ?ont1)
               (sw:from ?m2 ?ont2)
               (sw:entails (setof ?m1) ?f)
               (sw:entails (setof ?m2) ^(daml:imports ,?ont2 ,?ont1))
          (sw:entails (setof ?m1 ?m2) ?f)
        ) )

; where entails and says are related by...

  (forall (?msg ?msgs ?f1 ?f2)
    (=> (and (rdf:type ?msg ?msgs)
             (sw:says ?msg ?f1)
             (wtr ^(=> ,?f1 ,?f2)) )
        (sw:entails ?msgs ?f2) ) )

> I'd be very interested in any other ideas you have in this area, by the way.

I'm trying to keep my thoughts on this near

The HTTP stuff above is basically my larch trait
re-written in KIF/daml/rdf, and the says/entails
stuff is what I wrote in

By the way... I started implementing support for KIF
but I have't gotten as far with it as I have with
the notation3 tools. In partcular, I haven't
done any KIF namespace stuff; maybe I'll give
that a try.

> Pat (Offline most of next week)
> PS. If I understand tagging, it it needn't involve reification at
> all. You don't need to *describe* a sentence in order to attach a tag
> to it, you can just kind of point at it by ostention.

Can you elaborate on that a bit?

> And in any
> case, reification doesnt get you into the
> sentence/assertion-of-the-sentence distinction, which I think is
> where one wants to be here. (Maybe I don't really understand tagging,
> of course.)

me neither.

Dan Connolly, W3C
office: tel:+1-913-491-0501
  (put return phone number in from/subject)

This archive was generated by hypermail 2.1.4 : 04/02/02 EST