====== Semantic Web Applications: Semantic Wikis ====== __//OBSOLETE//__ ===== Before the lab ===== Software: * [[http://loki.ia.agh.edu.pl/smw|Semantic MediaWiki]] * [[http://loki.ia.agh.edu.pl/lokidev|Loki]] //NOTE: Log in with a username and appropriate password given by a teacher.// ===== Introduction ===== Slides: * [[http://cslab.ia.agh.edu.pl/_media/explicite:explicite20100408:mng-kkr-gjn-explicite-semantic-wikis.pdf?id=explicite%3Aexplicite20100408%3Astart&cache=cache|Lightweight Reasoning in Semantic Wikis]] * [[http://www.slideshare.net/mtgreaves/tutorial-semantic-wikis-and-applications|Tutorial: "Semantic wikis and applications"]] ===== Lab instructions ===== ==== - Semantic Wikis - Introduction ==== * Browse the [[http://www.slideshare.net/mtgreaves/tutorial-semantic-wikis-and-applications|slides]] up to the ''**BREAK**'' slide (no.106). * Read the [[http://semantic-mediawiki.org/wiki/Help:Introduction_to_Semantic_MediaWiki|Introduction]] to the Semantic MediaWiki ==== - Semantic MediaWiki - Categories ==== - Log in with your username and password given by the teacher to the [[http://loki.ia.agh.edu.pl/smw|SMW test installation]]. - Create a page http://loki.ia.agh.edu.pl/smw/index.php/jsi2012/ e.g. http://loki.ia.agh.edu.pl/smw/index.php/jsi2012/wtadrian - Enter the link to the navigation bar - If the page doesn't exist (and it shouldn't exist yet ;-) ) click ''edit this page'' \\ {{:pl:dydaktyka:semantic_web:smw-create.png?w300|}} \\ and shortly describe yourself, e.g. My name is Example student. I am 12 years old. Currently I study at AGH UST, faculty of electrical engineering. I belong to group . The other members of my group are: - Based on the [[http://semantic-mediawiki.org/wiki/Help:Editing|SMW tutorial]], add the page to the **Student** category. - 8-) Paste the wiki page source (markup) in the report. - Create a new page as: http://loki.ia.agh.edu.pl/smw/index.php/AGH-UST/Subjects/subject-name and assign it to the category ''University subject''. - 8-) Paste the wiki page source (markup) in the report. ==== - Semantic MediaWiki - Properties ==== - Based on the [[http://semantic-mediawiki.org/wiki/Help:Properties_and_types|Properties and Types]] section annotate the content of your //Student// page so that it contains the following semantic information about you: * Name (first + last name) * Age * Group (choose one) * 8-) include the updated wikipage source code (markup) in the report. - Edit the created page that belong to the //University subject// category so that it contains the following properties: * lead by * room * duration * 8-) include the updated wikipage source code (markup) in the report. e.g. lead by: [[lead by::prof Ligeza]] room: [[room::B1 121]] duration: [[duration::90]] min ==== - Semantic MediaWiki - Inline queries ==== - Read the manual section on [[http://semantic-mediawiki.org/wiki/Help:Inline_queries|Inline queries]] - Using the **inline queries** add to your page the list of the students that are members of your group - Format the output of the query as unordered list - 8-) Put the query in the report. - Build another query listing the students from your group: - Display it as a table - Sort by age, then by the name - Define a default value which will be displayed if the required field (e.g. age) is empty. - 8-) Put the query in the report. ==== - Loki - Introduction ==== - Go to the [[http://loki.ia.agh.edu.pl/|Loki website]]. - Read the [[http://loki.ia.agh.edu.pl/about.php|About]] page to get to know the system better. - With your username and password log in to [[http://loki.ia.agh.edu.pl/lokidev|Loki installation]]. - Read about the Loki possibilities in [[http://loki.ia.agh.edu.pl/lokidev/start#documentation|Documentation]] section (especially ''pluginapi[1/2]''). ==== - Loki - Use Cases ==== Choose and do one of the following two tasks: (they are also described in [[http://loki.ia.agh.edu.pl/lokidev/piw:start|Loki]]) === - Movie recommendation system === - Create a page of a movie in the ''movie:'' namespace. Assign it to the ''movie'' category. - Describe the movie **in english** using semantic annotations, according to an example ''filmy:poszukiwacze_zaginionej_arki'' in polish and an example ''bookstore:book:the_call_of_cthulhu'' in english (use the movie relations and the ''genre'' attribute (and possibly more if you want)). - Describe shortly one of the actors in the ''person:'' namespace and assign it to the ''actor'' category. - 8-) Copy the wiki pages sources and paste them into the report. === - Geographic Wiki === - Create a page of a city in the ''city:'' namespace. Assign it to the ''city'' category. - Describe the city **in english** using semantic annotations, according to the example: ''miasta:warszawa''. You can add more semantic relations and attributes than in the examples. - Describe shortly the country of this city, assign it to the ''country'' category. - 8-) Copy the wiki pages sources and paste them into the report. ==== - Loki - Semantic Web Standards ==== - Create a page for yourself in the ''user'' namespace, assign it to the ''user'' category. - Read the [[http://loki.ia.agh.edu.pl/lokidev/documentation:pluginapi2#sparql_queries|Plugin API v.2.0]], section on SPARQL. - On your page, build an example SPARQL query which asks for specific kind of movies or cities (you decide what criteria to use in the query!). - Observe the results. 8-) Put the query into the report. - Read the [[http://loki.ia.agh.edu.pl/lokidev/documentation:pluginapi2#rdf_export|Plugin API v.2.0]], section on RDF export. - Export the page you created about a movie or a city. Analyze the exported file. Find the category, relations and attributes that you entered - how are they represented? ==== - Loki - Reasoning ==== In Loki it is possible to embed Prolog code within ''...'' tags. Using Prolog code create a set of custom recommendations, e.g.: "Movies, where the leading lady is X and the movie was made before 1940" or "City which is located in a country which is by a sea and is not listed as a member of the EU". - Read the [[http://loki.ia.agh.edu.pl/lokidev/documentation:pluginapi1|Plugin API v.1.0]], section on Prolog. - On your **user** page create a section ''My Recommendations'' - Create a Prolog goal so that the movies interesting for you are found. Optionally, you can define the interesting movies/cities with a Prolog rule and use it directly in the goal. - If you encounter problems, use the [[http://loki.ia.agh.edu.pl/lokidev/documentation:pluginapi2#debug_functions|debug functionality]] of Loki. 8-) Put the goal in the report. :!: NOTE: This can give you an extra point. If you don't do this exercise, you don't loose a point. Just a present for the end... ;-) **NOTE: ** [[http://loki.ia.agh.edu.pl/lokidev/documentation:pluginapi1|Plugin API v.1.0]] and this [[http://cslab.ia.agh.edu.pl/_media/explicite:explicite20100408:mng-kkr-gjn-explicite-semantic-wikis.pdf?id=explicite%3Aexplicite20100408%3Astart&cache=cache|presentation]] may be useful. ===== Control questions ===== * What is the difference between classical wikis a semantic ones? * What are the semantic annotations? * Does the Semantic Media Wiki support category hierarchy? * How to create a subcategory? * How to create a subproperty? ===== If you want to know more ===== Reading: * http://www.readwriteweb.com/archives/top_10_semantic_web_products_of_2010.php * http://www.we-love-the.net/FreeInfluencer/ * http://simile.mit.edu/wiki/Piggy_Bank * http://www.opencalais.com/gallery