Zadanie 1

Transkrypt

Zadanie 1
Internet Semantyczny 2007/2008 - zadania
Aby uzyskać zaliczenie należy wybrać z każdej* z czterech części (XML, RDF, OWL,
Logika) po (przynajmniej) jednym zadaniu (*do uzyskania oceny 3-3.5 nie jest konieczne
rozwiązanie zadania z działu Logika. Wybieramy wtedy cztery zadania z części XML, RDF,
OWL).
Warunkiem zaliczenia zadania jest poprawna odpowiedź na dodatkowe pytanie związane z
każdym przygotowanym zadaniem.
Ocena końcowa to średnia arytmetyczna z ocen uzyskanych za każde zadanie.
Część 1 - XML
Zadanie 1 (3)
Zbuduj stronę internetową zawierającą następujące informacje:
Spis publikacji:
1. Kowalski Łukasz i Szczepaniak Tomasz, Struktura sieci i adresowanie, Zagadnienia
Informatyczne, tom IV, numer 3, rok 2004.
2. Żakowski Witold Tomasz, Matematyka Dyskretna, Seria: Matematyka dla Politechnik,
Wydawnictwa Naukowe PWN, rok 2003.
3. Bronisława Jasinska, Janina Nowak i Monika Wojciechowska, Gramatyka angielska,
Wydawnictwa Szkolne, rok 2006.
4. Stanisław Chabik, Wanda Rudzińska i Marek Szuszkiewicz, Positron Annihiolation in
Solid and Liquid Bi40Sn60 Alloy, Acta Physica Polonica, tom 95, strona 479, rok
1987.
b) sprawdź poprawność zbudowanej strony www.
c) Przekształć wykonaną stronę do formatu XHTML.
Zadanie 2 (4)
a) Utwórz 2 różne dokumenty XML zawierające informacje podane w zadaniu 1.
b) Narysuj drzewo utworzonych dokumentów XML.
Zadanie 3 (4)
Wykonaj stronę internetową prezentującą informacje pochodzące z dokumentu XML przy
pomocy XSLT.
Zadanie 4 (4)
Stwórz DTD dla dokumentów z Zadania 3 i sprawdź czy dokumenty te są poprawne
strukturalnie.
Zadanie 5
Dla dokumentów xml (http://merlin.fic.uni.lodz.pl/MSkulimowski/is.html):
publikacje.xml
publikacje2.xml
stwórz arkusze XSLT prezentujące dane w następujący sposób:
Wskazówka: wykorzystaj instrukcje:
<xsl:template match="nazwa_elementu">
<xsl:apply-templates select="nazwa_elementu"/>
<xsl:value-of select="nazwa_elementu"/>
<xsl:value-of select="@autor"/>
Zadanie 6
Dla dokumentów xml:
publikacje.xml
publikacje2.xml
stwórz odpowiednie DTD.
Część 2 - RDF
Zadanie 1 (3)
Zapisz poniższy tekst w postaci stwierdzeń w notacji N3. Jeżeli to konieczne wprowadź
identyfikatory URI.
Artykuł Grzegorza Pełechaty pt. „Jądro systemu operacyjnego” znajdujący się na stronie
http://www.abc.com/paper1 pokazuje jak napisać własny system operacyjny. Omawia
zarządzanie pamięcią oraz przerwania w czasie rzeczywistym. Porusza również podstawowe
zagadnienia tryby chronionego. Artykuł jest częścią serii znajdującej się na stronie
http://www.abc.com/os.html i zatytułowanej „Systemy operacyjne”. Data publikacji artykułu
2006-06-18.
Zadanie 2 (4)
Narysuj graf reprezentujący stwierdzenia z Zadania 1.
Zadanie 3
Stwierdzenia reprezentowane przez poniższy graf zapisać w reprezentacji:
Notacja N3
RFD/XML
a) ocena 4
http://www.xx23p.com/1234
http://www.c1b4.org/elements#k2
http://www.p2.net/people/2344
http://www.c1b4.org/elements#k4
XYZ
http://rdf.f2.com#qqq
100
b) ocena 5
http:/www.semantict.net/RDF/introRDF
http://www.semantict.net/RDF/introRDF/elements#tytul
Wprowadzenie do RDF
http://www.semantict.net/RDF/introRDF/elements#czesc
http://www.semantict.net/RDF/introRDF/elements#rok
2007
http://www.semantict.net/RDF/introRDF/elements#tytul
Technologie
Semantyczne
Zadanie 4 (4)
Narysować graf reprezentujący następujący dokument RDF/XML:
<?xml version="1.0"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:abc="http://www.net3.net/elements#"
xml:base="http://www.sem.net/ABC/">
<rdf:Description rdf:about="lib.html">
<abc:books>
<rdf:Bag>
<rdf:li rdf:resource="p1.pdf"/>
<rdf:li rdf:resource="p2.pdf"/>
<rdf:li rdf:resource="p3.pdf"/>
</rdf:Bag>
</abc:books>
</rdf:Description>
<rdf:Description rdf:about="lib.html">
<abc:author rdf:resource="124"/>
</rdf:Description>
</rdf:RDF>
Zadanie 5 (5)
Wykorzystując język RDFS zbudować (ciekawą) ontologię związaną z geografią (miasta,
państwa, stolice, granice, rzeki, zbiorniki wodne etc.).
Zadanie 6 (5)
Wykorzystując język RDFS zbudować ontologię związaną z uniwersytetem.
Część 3 - OWL
Zadanie 1 (3)
Zdefiniować następujące taksonomie klas będące fragmentem ontologii związanej z
Uniwersytetem.
Jednostka
Wydział
Grupa
badawcza
Administracja
Katedra
Osoba
Student
Rektor
Pracownik
Pracownik
naukowy
Profesor
Adiunkt
Pracownik
administracyjny
Asystent
Dziekan
Publikacja
Artykuł
Artykuł
konferencyjny
Artykuł w
czasopiśmie
Praca
Dydaktyczna
Wykład
Książka
Instrukcja
Praca
Praca Administracyjna
Praca naukowa
Ćwiczenia
Jakie zawierania miedzy klasami nie są pokazane na powyższych diagramach?
Zadanie 2
Zdefiniuj 5 właściwości wybranych z poniższej tabeli:
Na ocenę 5 właściwości oznaczone * i ** są obowiązkowe.
Na ocenę 4 właściwości oznaczone ** są obowiązkowe.
Na ocenę 3 trzy z pozostałych właściwości.
Właściwość
domain
range
typ
1 promotor*
Profesor
Student
Inverse Functional
2 pracownik jednostki Pracownik
Jednostka
3 absolwent
Osoba
Wydział
4 prowadziZajecia
Osoba
PracaDydaktyczna
5 prowadziBadania
Osoba
PracaNaukowa
6 szefJednostki*
Osoba
Jednostka
Inverse Functional
7 szefKatedry**
Osoba
Katedra
8 autorPublikacji
Osoba
Publikacja
9 zatrudnia
Jednostka
Osoba
10 współpracownik**
Osoba
Osoba
Symmetric
11 wiek*
Osoba
typ danych: Integer Functional
12 telefon
Osoba
typ danych: Integer
13 email
Osoba
typ danych: String
UWAGA: właściwość szefJednostki jest podwłaściwością właściwości pracownikJednostki
właściwość szefKatedry jest podwłaściwością właściwości szefJednostki
Zadanie 3 (5)
Zdefiniuj klasę Dziekan jako klasę tych osób, które kierują (szefJednostki) przynajmniej
jednym wydziałem.
Zdefiniuj klasę Rektor jako klasę tych osób, które są szefami dokładnie jednego Uniwersytetu
(dodaj do taksonomii taką klasę) oraz mają ponad 100 artykułów opublikowanych w
czasopismach.
Zadanie 4 (5)
Zdefiniuj klasę Profesor jako klasę tych osób, które maja minimum 60 artykułów, prowadzą
przynajmniej 3 wykłady oraz są promotorami.
Zadanie 5 (4)
Zdefiniuj klasę Adiunkt jako klasę tych osób, które mają minimum 10 artykułów oraz jeżeli
prowadzą jakieś zajęcia to są to ćwiczenia.
Zadanie 7 (4.5)
Zdefiniuj klasę Katedra jako taką jednostkę, która zatrudnia minimum 3 profesorów.
Zdefiniuj klasę Pracownik jako klasę tych osób, które są zatrudnione w jakiejś jednostce.
Zadanie 9 (5)
Zbuduj (ciekawą) ontologię drukarek komputerowych.
Część 4 - Logika
Zadanie 1 (4)
Rozważmy następującą bazę wiedzy:
Jakie będą rezultaty następujących zapytań w języku SPARQL:
1. SELECT ?x WHERE { ?x directedBy Kubrick }
2. SELECT ?x WHERE { ?x writtenBy Clarke .
OPTIONAL ?x directedBy Kubrick }}
3. SELECT ?x ?y WHERE { ?x directedBy ?y .
?x writtenBy ?y }
4. SELECT ?x ?y WHERE { ?x releaseYear ?y .
FILTER (?y > 1972)} LIMIT 2
Zbuduj zapytania pozwalające uzyskać następujące informacje:
5.
6.
7.
8.
Listę wszystkich reżyserów bez powtórzeń.
Listę wszystkich filmów posortowaną według daty premiery.
Listę wszystkich scenarzystów filmów Kubricka.
Listę scenarzystów i filmów ale tylko tych scenarzystów którzy byli autorami
scenariuszy do przynajmniej dwóch filmów.
Zadanie 2 (4)
Dla każdego z poniższych zdań podaj interpretację, w której zdanie to jest fałszywe oraz
interpretację w której zdanie to jest prawdziwe:
Zadanie 3 (4.5)
Rozważmy następujące fakty:



Zbiór nie jest swoim elementem.
Zbiór x jest podzbiorem zbioru y jeżeli każdy element x jest elementem y.
Cos jest elementem sumy zbiorów x i y wtedy i tylko wtedy gdy jest elementem
zbioru x lub zbioru y.
1. Zapisz powyższe fakty w języku FOL. Wykorzystaj predykaty: Podzbior(x,y),
Element(e,x) i funkcję suma(x,y). Zbiór tych zdań oznaczmy przez T.
2. Czy T  Pozdbior(x,suma(x,y)) ?
3. Czy T  suma(x,y)=suma(y,x) ?
Zadanie 4 (4)
Edyp zabija swojego ojca i żeni się ze swoją matką Jokastą z którą ma dzieci m.in. syna
Polinejkesa. Z kolei Polinejkes ma syna Tesandrosa.
Rozważmy związany w powyższą historią następujący opis świata A (ABox):
maDziecko(JOKASTA,EDYP)
maDziecko(EDYP,POLINEJKES)
Patrycjusz(EDYP)
maDziecko(JOKASTA,POLINEJKES)
maDziecko(POLINEJKES,TESANDROS)
Patrycjusz(TESANDROS)
Jaka jest odpowiedź na pytanie: czy Jokasta miała dziecko, które było patrycjuszem, które to
dziecko miało z kolei dziecko nie będące patrycjuszem?
Formalnie:
A( maDziecko.(Patrycjusz maDziecko. Patrycjusz))(JOKASTA) ?
Rozważ dwie semantyki:
1. Semantykę open-world.
2. Semantykę closed-world.
Odpowiedź uzasadnij.
Zadanie 5 (4.5)
Rozważmy następującą terminologię (TBox) T
Person ≡ ∀hasChild.Person∃hasFather.Father∃hasMother.Mother
Person ≡ ManWoman
Parent ≡ ∃hasChild.T
Mother ≡ WomanParent
Father ≡ ΜanParent
oraz następujący opis świata (ABox) A:
john∈Person
(john,mary)∈hasChild
john∈Man
Jakie wnioski wyciągnie agent z T i A? Zapisz je.
Zadanie 6 (5)
Wykorzystując język ALCN zbuduj ontologię uniwersytetu.