Daniel Weitzner
Decentralized Information Group
MIT Computer Science and Artificial Intelligence Laboratory
|
Ontologies
Reasoning Engine
Policy Network Ontology
Request Ontology
|
|
Rein Ontologies
Supported rule language : N3Logic
Reasoning engine
Example 1
Joe believes { mit:Peter a GraduateStudent }. |
Example 2
@forAll X. { X homePage H. H log:semantics S. S log:includes { X a Vegetarian }. }=> { X a Vegetarian}. |
|
Flickr, Zoomr, etc
Flickr + Rein
Girl scout troop use Flickr + Rein
Policy Language |
Troop ontology |
Partial FOAF ontology |
Example Request |
<rdf:Description rdf:about=""> <rein:policy-language rdf:resource="http://gscout.example.org/pol-lang.rdf"/> </rdf:Description> <pol:PermittedToView rdf:about="http://example.org/policy#BobPerm"> <pol:picture rdf:resource="http://example.org/group.jpg"/> <pol:user rdf:parseType="Resource"> <maker rdf:resource="http://example.org/bob-foaf.rdf"/> </pol:user> </pol:PermittedToView> <pol:PermittedToView rdf:about="http://example.org/policy#AlicePerm"> <pol:picture rdf:resource="http://example.org/pic123.jpg"/> <pol:user rdf:parseType="Resource"> <maker rdf:resource="http://example.org/foaf.rdf"/> </pol:user> </pol:PermittedToView>
<rdf:Description rdf:about=""> <rein:policy-language rdf:resource="http://gscout.example.org/pol-lang.rdf"/> </rdf:Description> <owl:Class rdf:ID="ViewingMeetingPhotos"> <rdfs:subClassOf rdf:resource="http://gscout.example.org/pol-lang#PermittedToView" /> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://gscout.example.org/pol-lang#picture"/> <owl:allValuesFrom rdf:resource="http://gscout.example.org/troop42#JamboreePhoto" /> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://gscout.example.org/pol-lang#user" /> <owl:allValuesFrom rdf:resource="http://gscout.example.org/troop42#JamboreeAttendee" /> </owl:Restriction> </rdfs:subClassOf> </owl:Class>
<> rein:policy-language <http://gscout.example.org/pol-lang.rdf> { REQ a rein:Request. REQ rein:resource PHOTO. ?F a TroopStuff; log:includes { PHOTO a t:Photo; t:location LOC. LOC a t:Jamboree. LOC t:attendee [ is foaf:maker of PG ]. }. REQ rein:requester WHO. WHO session:secret ?S. ?S crypto:md5 TXT. PG log:semantics [ log:includes { PG foaf:maker [ session:hexdigest TXT ] } ]. } => { [ ] a pol:PermittedToView; pol:user WHO; pol:picture PHOTO }.