====== Semantic Web Programming 2: Programming with the Semantic Web Technologies ====== ===== Before the lab ===== - Please read **Chapter3**, **Chapter4** and **Chapter5** from the [[http://code.google.com/p/ia1213/downloads/detail?name=semantic-web-programming.9780470418017.47881.pdf|Semantic Web Programming]] book - Install the following software on your computer: - Compiling and execution tools: [[http://java.sun.com/javase/|Java 1.6 Software Development Kit (SDK)]] (or newer) - Code-editing tools: [[http://www.eclipse.org/downloads/|Eclipse Integrated Development Environment (IDE)]] (or equivalent) - Semantic Web Programming Framework: [[http://jena.apache.org/|Jena Semantic Web Framework]] 2.5.6 (or newer) - Ontology Reasoner: [[http://clarkparsia.com/pellet/download|Pellet]] 1.5.2 (or newer) Optionally you can download: * Ontology editing tool: [[http://protege.stanford.edu/download/registered.html|Protege Ontology Editor]] 4.0 Alpha (or newer) ===== Lab instructions ===== - Download [[http://semwebprogramming.org/?page_id=11|Chapter5]] project files. - Create a new project - Add downloaded files to the project. - Add downloaded Jena libraries to the project. - Compile and run the project. - //NOTE//: The second argument (input format) may be one of the following: ''N3'', ''RDF/XML'', ''N-Triple'', or ''Turtle'' - Run the project for each option of reasonins: ''none'', ''rdfs'' or ''owl'' and compare the results. - 8-) What rules have been applied? Write about them in the report. - Extend the program by: - FIXME - ... ===== Control questions ===== 8-) Answer 7 from the below questions in the report. __Chapters 3, 4:__ * What is a //vocabulary//? * What is a //taxonomy//? * What is an //ontology//? * What is //Open World Assumption// and //Closed World Assumpion//? Which one is adopted in RDF and OWL? * What is //Unique Name Assumption//? Does it hold in the Semantic Web? * Enumerate and explain the elements of an ontology. * What are Object Properties and Datatype Properties? What is the difference between them? * What are bottom and top concepts? * What are bottom and top properties? * What are Inverse, Disjoint, Symmetric, Reflexive, Functional and Transitive Properties? __Chapter 5:__ * Three fundamental components of a Semantic Web framework. * What is //forward-chaining// and //backward-chaining// inference? * Enumerate 3 RDF Stores. * Enumerate 3 reasoning engines for OWL. * Enumerate and shortly describe 3 profiles of OWL 2. __Chapter 6:__ * What are 4 (enumerate at least 3) SPARQL query forms? __Chapter 7:__ * Name and shortly describe 3 rule languages for the Semantic Web. ===== Materials ===== Semantic Web Programming book: * [[http://semwebprogramming.org/|Main Page]] * [[http://semwebprogramming.org/?page_id=11|Downloads]]