Uzdevums: Maģistratūras studiju ontoloģija

Lejupielādes

Sagatavošanās

Prasību apraksts

Pavisam īsi - Alan'a Rector'a tutoriālī ir aprakstīta ontoloģija zvēru aprakstīšanai; uzdevumā jāpabeidz līdzīga ontoloģija universitātes studiju aprakstīšanai; jādefinē universitātē sastopamie objektu tipi, to relācijas un daži apgalvojumi.

Ontoloģija, kura tiek veidota šajā darbā ir domāta LU datorzinātņu studiju (profesionālo, bakalaura un maģistra programmās) aprakstīšanai. Ontoloģijā iekļautie klašu/relāciju nosaukumi tiek rakstīti angļu valodā; savukārt indivīdiem atbilstošās atribūtu vērtības var būt jebkādi Unikoda literāļi.

Šeit aprakstītas ontoloģijā mainītās prasības, kuras var programmēt dažādi.

Ieviest MasterThesisAdvisor06 klasi zem Person
Definēt klasi MasterThesisAdvisor06, kura satur visus tos cilvēkus, kuriem eksistē semestrim "spring2006" izveidota kāda kursa reģistrācija (CourseOffering) mācību aktivitātei, kuras programma ir "ThesisProgram" instance "MasterThesis", un kur ir pieteicies vismaz viens students. Klases definēšana Protégé rīkā nozīmē to, ka ir ierakstīts klases "nepieciešamais un pietiekamais" nosacījums. Šādi definētām klasēm hierarhijā uzklājas trīs svītriņas.
Izmainīt ontoloģiju tā, lai hermafrodītu klase kļūtu nekonsistenta
Dotajā ontoloģijā ir klase "Hermaphrodite" - t.i. persona, kurai ir vienlaikus vīriešu un sieviešu dzimums. Lai to izdarītu ir nepieciešams ontoloģijā definēt, ka ikvienai personai ir tikai viens dzimums (t.i. "hasSex" ir funkcionāla attiecība) kā arī pateikt, ka "male" un "female" nevar būt sinonīmi, bet gan ir dažādi "indivīdi", t.i. dažādas dzimuma vērtības. To, vai klase ir kļuvusi nekonsistenta, var noskaidrot, spiežot pogu "C" Protégé rīkjoslā (Classify taxonomy...). Lai tā strādātu, ir jābūt iedarbinātai un piekonfigurētai DIG inferences mašīnai, piemēram, Pellet. Nekonsistentās klases attēlojas ar sarkanu aplīti.
Ierakstīt izglītības ierobežojumus akadēmiskajiem amatiem
Ikvienam "FullTimeInstructor", kurš ieņem amatu "AssistantProfessor", "AssociateProfessor" vai "Professor" ir jābūt izglītībai "Doctor". Šo ierobežojumu var izdarīt, ieviešot vienu vai vairākus nepieciešamības (necessary) nosacījumus attiecīgām klasēm. Lai pārliecinātos, ka ierobežojumi strādā, izveidojiet instances, kuras ir pretrunā ar šo ierobežojumu (t.i. profesoru ar nepietiekamu izglītību), iedarbiniet klasifikatoru (poga "I" uz Protégé rīkjoslas - "Compute Inferred Types ...") un pārliecinieties, ka DIG inferences mašīna nosprāgst ar kautkādu kļūdas paziņojumu.
Ierakstīt datus par dažiem indivīdiem - FMF nodaļu un katedru vadītājiem.
Sk. http://www.lu.lv/fakultates/fmf/struktura.html). Pievienot ontoloģijai "Staff" klases instances "JanisBicevskis", "JanisBarzdins", "MarisTreimanis". Norādīt viņiem visiem attiecību "responsibleFor" uz "DepartmentHeadPosition". Pārliecinieties, ka ontoloģijas klasifikators viņus pareizi ieklasificē pie "SupervisoryStaff". (T.i. šīs instances nav jāliek tieši pie "SupervisoryStaff", bet tikai pie "Staff".)
Ierakstīt datus par savu maģistra darba vadītāju
Pievienojiet jaunu "Staff" instanci ar savu maģistra darba vadītāja datiem. Izveidojiet arī atbilstošo "Enrollment" instanci, kur sevi piereģistrējiet kā kursa darba rakstītāju pie dotā pasniedzēja 2006.gada pavasarim (vai attiecīgi vēlākam pusgadam, ja plānojat universitāti beigt vēlāk - šai gadījumā jāizveido arī jaunas mācību gadu un pusgadu (StudyYear un Halfyear) instances.) Pārliecinieties, ka klasifikators jūsu vadītāju pareizi ieklasificē arī zem MasterThesisAdvisor06.
Ievadīt dažus mācību kursus
Ierakstīt datus par dažiem mācību kursiem 2005.gada rudens semestrī (t.i. izveidot dažas jaunas "CourseOffering" isntances.)

Uzmanību! Protégé rīkam ir daži defekti:

  • Unikoda simbolu atbalsts tajā it kā ir, bet DIG inferences mašīna var nosprāgt, ja, piemēram, indivīdu vērtību stringos ir sarakstīti neASCII simboli. Ja no Protégé ir jālieto inferences mašīna (Pellet), tad visai informācijai jābūt ierakstītai ar ASCII simboliem, kā tas darīts piedāvātajā ontoloģijas paraugā.
  • Protégé rīks reizēm pazaudē noglabājamo failu. Ir nepieciešams veidot rezerves kopijas.
  • Ja kādai klasei ir pievienotas jaunas attiecības/atribūti, tad tie uzreiz neparādās indivīdu rediģēšanas formās. Ja vēlaties pievienot indivīdiem nupat piedefinētas attiecības, var būt nepieciešams Protégé rīku pārstartēt.

Papildināt ontoloģiju ar LUIS ekrānu skrāpēšanu

Instalēt MIT Simile projekta "Solvent" spraudni (priekš FireFox) un uzrakstīt tajā darbināmu JavaScript programmu, kura savāc kursu kodus un anotācijas no LUIS lapas (piemēram, https://luis.lanet.lv/pls/pub/stal.prg_s2?l=1&cl=0&n1=154&o1=1&t0=21005&t1=&t2=B40101&t3=FO0016&p1=b) un iegūst RDF faktus, kuri apraksta jaunus "indivīdus" no klases "ClassroomCourseProgram" ontoloģijā "university.owl".

Izveidot SPARQL pieprasījumus

  • Izveidot SPARQL pieprasījumu, kurš atgriež kursu programmu nosaukumus visiem tiem kursiem, kuri tika piedāvāti 2005.g. rudens semestrī un RecurringEvent instances.

Iesūtīt 3 failus

Pārveidoto ontoloģiju university.owl (bez ekrānskrāpētāja iegūtajiem indivīdiem), ekrānskrāpētāja JavaScript'u "scrape_courses.js" un SPARQL pieprasījumu, kurš atgriež 2005.g. rudens semestra kursu sarakstu - stundusaraksts.rq.


Lapa mainīta 2005-12-30 16:39:28