CS 6999 Semantic Web Techniques |
|
Project 1: Modelling Semantic Search in j-DREW |
|
|
|
Use
the LP representation of RDF introduced in "Relationships Between Logic
Programming and RDF" (http://www.dfki.uni-kl.de/~boley/rdfptalk.pdf
) to model a semantic search engine in j-DREW. For simplicity, let us
initially only search for URIs uri01, uri02, ... as individual constants in
j-DREW, and later – given a corresponding j-DREW extension – have these
dereferenced to Web pages. Extend the bookstore examples or create your own
e-business scenario for describing at least 20 URIs with Prolog facts such as
location(uri01,fredericton), owns(uri01,uri02), etc. Try 'semantic queries'
like location(What,fredericton), owns(What,uri02). Extend this by allowing
RDF's multiple types via unary predicates such as in bookstore(uri01) and
canadian(uri01). This allows semantic retrievals like bookstore(W),
canadian(W), owns(W,uri02). Given the above, this finds the binding W =
uri01. Extend this 'RDF level' with an 'RDFS level' by simulating an RDFS
subclass relationship between types, e.g. representing "bookstore
subClassOf shop", via a rule, e.g. shop(X) :- bookstore(X). Then try
queries like shop(W), location(W,fredericton). Finally, simulate RDFS's
subPropertyOf via rules. Test your Semantic Search Model with the 20-URI
mini-Web scenario. Decide whether to use top-down or bottom-up j-DREW.
Document queries and explain what aspects of a semantic search engine they
are simulating. Show traces. In an appendix, list all your Prolog facts (for
RDF) and rules (for RDFS). |
|
|
|
|
Maintained by Bruce Spencer