UMBC CMSC 491/691s Spring 2009
Special Topics: The Semantic Web

Assignment Four

Part one due Monday 6 April
Part two due Wednesday 13 May

This final assignment asks you to develop, design and prototype an application using one of the semantic web languages RDF and OWL. The assignment has two parts: a proposal and results. The proposal is due on April 6 and should consist of a clear description of the (a) problem your application is trying to solve, (b) how the problem is solved today, (c) what's lacking or could be improved in current solutions, (d) how the semantic web ideas, techniques and technologies can help address those shortcomings, (e) a very preliminary sketch of your design and (f) a two page presentation that you can use to explain your idea to the class. Your design sketch should probably identify and briefly describe any ontologies that need to be used and possibly developed as well give a high level description of the component s of the overall system.

Projects can be done individually or in groups of at most three people. Projects done by a group will be expected to have done much more.

Project do not neccessarily have to involve building a system or an implementation. They might be essentially a study or a detailed design of a system. However, projects which do involve some prototyping will be prefered.

I've listed some ideas that you might consider. You are encouraged to develop your own or modify one of the ideas below.

(1) Design and publish an ontology

Find a subject that could benefit from a new or better ontology. Use Swoogle to see what has already been done. Using standard tools (e.g., Protege) design an ontology and publish it following the W3C's recommendations for Best Practice Recipes for Publishing RDF Vocabularies. Develop documentation using common formats (e.g., see how the FOAF vocabulary is documented) and some good examples showing how it can be used.

(2) Develop an ontology translation framework in CWM

Read Drew McDermott paper on ontology translation (Ontology Translation on the Semantic Web). Design and build a simple framework using CWM or a system of your choice to translate between information in different OWL ontologies. Develop at least one extended example to show how your system works. Use this to solve Mike Ushold's challenge problem.

(3) Implement a GEDCOM to OWL translation service

This is similar to (1) but focused on mapping between actual GEDCOM documents and an OWL representation of the GEDCOM ontology. Start with Mike Dean's GEDCOM DAML ontology, map it into OWL and extend it as needed to fully support the latest version of GEDCOM. Make sure you follow the W3C's Best Practice Recipes for Publishing RDF Vocabularies in developing the revised OWL GEDCOM ontology. Construct a set of examples to illustrate the translation service.

(4) Semantic blogging on Twitter

Read up on the ways that the Semantic Web is being used in blogs. Take a look at Dr. Cynthia Parr's FieldMarking blog. This is an example of a biologist making observations in text and also in RDF about observations of plants and animals. We have some ideas about how this can be extended to make use of Twitter -- a microblogging system that lets people blog from their cell phones. See this paper for some ideas. Design and implement a simple prototype that lets people make observations using Twitter via SMS that are read and parsed by the ebiquity SPOTter system.

(5) Discovering ontology mappings with Swoogle

Swoogle can be extended to discover documents that define partial translations between ontologies. We have a sketch of how this can be done. Start by exploring the Swoogle database -- not through the very limited web interface but by direct access the the underlying database via SQL. Try to determine how much data there really is that expresses partial translations. Design and prototype the extensions needed to collect such data in an efficient manner.

(7) GRDDL for Flickr machine tags

Develop GRDDL scripts can can be used to extract annotations and meta data from Flickr pages encoded as machine tags.

(8) Adding a dataset to the LOD cloud

Find an interesting dataet that you can express in RDF that would be a good candidate to add to the linked data cloud.

(9) Import Freebase people data into DBPedia people data

Freebase has a quite a bit of data on people that is not in DBpedia. Design an implement a system to integrate the two and identify where they overlap and if there are any contraditions or discrepancies. Using the integrated data, design a system to find significant connections between a pair of people (e.g., Barack Obama and Richard Daley) and characterize those connections.

(10) An idea of your choosing

Develop an idea of your own. Feel free to suggest it to me via email for a quick reaction.