W3C Toward
Swell
Toward Swell, the Semantic Web Logic Language
status: originally sketched just before a 6 Jul meeting; integrating into more swell stuff before a 19-20 July
meeting
Dan Connolly
$Revision: 1.15 $ of $Date: 2000/07/27 00:52:57 $ by $Author:
connolly $
- the basic RDF statement model: subject, predicate, and object
see also: this section of a swell paper
- Schema/Ontology basics: Classes, properties
- demo: algernon
taxonomy,
- TODO allow global references in the Classes idiom
- NOTE: a technique for splitting property names into namespace
name, local name parts (Jun 27 2000 problem
report)
- TODO: transcribe the RDF, RDF schema schemas?
- issue: other utility stuff: cardinality, inverses, ...
- propositional calculus: introducing implies, false
- advanced RDF: reification (aka quoting)
- predicate calculus: introducing forall (and in doing
so, variables)
- show a shoe-rule (horn clause) converted: inference
rules, Shoe->RDF
stuff
- demo: in, append,
reverse list rules
- technique: function symbols (manual unwinding)
- technique: n-ary symbols.. potentially automatable. NOTE
asymmetry
- reduction of Rule structure to FOPC primitives
- need some mechanism to avoid russel's paradox?
- Future work:
- instrumented provers/inference engines (js-prolog,
algernon, euler),
- 1st order proof checker (mccune's)?
or just skip that and go right to HOL
- thinking about the edinburgh logical framework: modelling forAll as
elf:lambda and an operator on top
- unstriped RDF syntax? does XSLT eliminate the need?
syntax exploration: rdf.xsd rdfs.xsd
inference.xsd lists.xsd
after chat w/ralph: limit propertyElts to string content and
rdf:resource; no nested typedNodes; move skolemization to RDF
producer's job rather than RDF parser's.
- primitive datatypes (16
Feb) (swick
12 May: still pending!)
- dan's use case: the calendar app: show me my schedule for today
(assuming trusted data sources; dealing with untrusted sources
requires dsig/higher order pf checking stuff)
- massimo's use case: the next
scribe
- lynn's use case: any new papers by any of my students? (cv)
- integrating digital signature
- model/rdf-xml
media type spec (xml-mime)
- modelling HTTP: out of date info ... and phone number changes:
algernon ask:tell is like http GET:POST
An Introduction to the Resource Description Framework (RDF)
taken from Some "What
is RDF" bits Lynn Stein (Mon, Jul 03 2000)
Most knowledge representations share a common structure. Semantic
networks[Woods],
hypertext[Drakos],
etc. use a a directed, labelled graph structure where nodes represent objects
and the arcs that connect them represent assertions *note. In frame-based representations [Minsky],
slot-relations connect role-fillers to a frame; frames themselves may also be
interconnected by relations such as inheritance. In logical formalisms[McCarthy],
binary relations are easily expressed using this property notation, though
arbitrary n-ary relations require an additional translation mechanism *note.
The Resource Description Framework [RDF] is an emerging
standard for the exchange of knowledge in the form of directed, labelled
graphs. At its core is this notion of a statement, with a
subject and an object related by a
property. For example
Dan is the author of the program.
"Dan" is the source, or the subject, of the statement, "is the author of"
is the property, and "the program" is the object.
RDF builds on commodity web technologies: Uniform Resource Identifiers[URI] for identifier syntax, and Extensible Markup Language[XML] for structured syntax. Each of the subject, object, or
property in an RDF statement can be a URI. The core of the XML syntax for RDF
does little more than distinguish the parts of a statement. So, to persue the
example above, we might represent that statement as:
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-ns#"
xmlns:dublinCore="http://purl.org/dc/elements/1.0/">
<rdf:Description about="#theProgram">
<dublinCore:creator>Dan Connolly</dublinCore:creator>
</rdf:Description>
</rdf:RDF>
where dublinCore is the namespace for the Dublin Core metadata @@
(explain XML namespaces in a sentence or two).
@@@Dan stopped here.
If this description now exists in some document, it can be given a URI. @@@
establish example.
Then we can say
subject
predicate
object
The subject and object can be any resource. But the predicate must be a
property @@@
Stuff on typing, restrictions (domain, range), class, subclass,
subproperty.
Need containers, comments, labels, ...?
Also pictures throughout (that someone else gets to draw).
Footnotes
- Note that this does not
preclude the inclusion of arcs as "objects" connected by other arcs.
- Either of two alternatives techniques can
be used to express n-ary relations using binary properties: currying or
reification.
References
- [Rao & Turoff]
- Rao, Usha & Turoff,
Murray. Hypertext Functionality: A Theoretical Framework,
International Journal of Human-Computer Interaction, 1990.
- [Craw90]
- Crawford, J. (1990), Access-Limited
Logic: A Language for Knowledge Representation, Doctoral
dissertation, Department of Computer Sciences, University of Texas at
Austin, Austin, Texas. UT Artificial Intelligence TR AI90-141, October
1990. (Algernon and
Access-Limited Logic)
- [RDF]
- Lassila, Swick [eds], Resource Description
Framework (RDF) Model and Syntax Specification (World Wide
Web Consortium Recommendation, 1999)
- http://www.w3.org/TR/1999/REC-rdf-syntax-19990222
- [URI]
- August 1998 Uniform Resource
Identifiers (URI): Generic Syntax
- (RFC 2396) T. Berners-Lee, R. Fielding, L. Masinter
- [XML]
- Feb 1998: W3C Recommendation: Extensible Markup Language
(XML) 1.0
Acknowledgements and @@Fodder