OZ 2009/1-2

18 ORGANIZACIJA ZNANJA 2009, LETN. 14, ZV. 1 – 2 RDF RE^NICI I JEZIK ZA DEFINISANJE RE^NIKA – RDF SCHEMA RDF nam je omogućio da na jedinstven i jednostavan način predstavimo podatke o našoj knjižari. Razmotrimo šta bi hipotetički servis za pretraživanje semantičkog weba trebalo da radi kada mu postavimo zahtev da pro- nađe knjižare u Beogradu koje rade nedeljom po podne. Izvršavanje ovog upita moglo bi da se odvija u sledećim koracima: 1. U svim RDF grafovima izdvojimo one koji imaju neki čvor (nazovimo ga, na primer, ?x ) koji je povezan sa čvorom “ http://www.adresar.co.rs/tip/knjizara ” gra- nom “ http://www.adresar.org.rs/rec/tip ” . Na ovaj na- čin izdvojili smo sve knjižare. 2. Suzimo rezultat pretraživanja iz koraka 1 na one gra- fove koji imaju vezu od čvora ?x (izdvojenog u prvom koraku) do nekog čvora granom “ http://www.adresar . org.rs/rec/adresa ” i od tog čvora do čvora označenog literalom “ Beograd ” granom “ http://www.adresar.org. rs/rec/mesto ”. Izdvojili smo sve knjižare u Beogradu. 3. Suzimo rezultat pretraživanja iz koraka 2 na one grafove koji imaju put od čvora ?x do nekog čvora ?y granama “ http://www.adresar.org.rs/rec/radno_ vreme ” i “ http://www.adresar.org.rs/rec/dani/nedelja ” (čvor preko koga ovaj put prelazi nas ne interesuje). Na ovaj način izdvojili smo sve knjižare u Beogradu koje imaju podatak o nedeljnom radnom vremenu. 4. Ako pretpostavimo da frazu “rade po podne” naš pre- traživač tumači kao “rade između 14 i 18 časova” u poslednjem koraku suzićemo rezultat pretraživanja iz koraka 3. na one grafove koji imaju vezu između čvora ?y i nekog čvora označenog literalom manjim ili jednakim 14, granom “ http://www.adresar.org.rs/ rec/od ” i istovremeno ima vezu sa čvorom označenim literalom koji je veći ili jednak 18, granom “ http:// www.adresar.org.rs/rec/do ” . Dobijeni grafovi, odnosno njihovi čvorovi ?x predstavlja- ju tražene knjižare. Jasno je da pretraživač obilazeći RDF grafove, korisniku može jednostavno da izdvoji nazive i adrese knjižara koje zadovoljavaju postavljeni uslov. U analizi načina na koji radi naš hipotetički pretraživač, možemo da primetimo da je on morao da poznaje znače- nje određenih termina (URI referenci) koji se pojavljuju u RDF grafovima. Recimo, morao je da zna da se “ http:// www.adresar.org.rs/rec/adresa ” koristi za obeležavanje grane koja povezuje čvor koji predstavlja preduzeće sa čvorom koji predstavlja njegovu adresu. Pri tom, pretraži- vač treba da prepoznaje samo termine za koje je odgovor- na organizacija koja održava registar preduzeća (URI sa domenom “ adresar.org.rs ”). Knjižare proizvoljno mogu da biraju termine za označavanje ostalih čvorova i grana. Skup termina (URI referenci), koji se koristi u nekom kontekstu, naziva se RDF rečnik. RDF rečnike ponekad vezujemo za prostore imena. S obzirom na to da je u RDF grafu veoma jednostavno koristiti termine iz različitih prostora imena, rečnici se jednostavno mogu proširiti dodavanjem termina iz drugih prostora imena. U našem primeru, rečnik koji koristi hi- potetički pretraživač sastoji se od termina iz “ http://www. adresar.org.rs/rec/… ” (prefiks “ recnik ”) i “ http://www. adresar.org.rs/tip#… ” (ovim URI referencama za sada nismo dodelili prefiks). Pored ovih, knjižara koristi i URI reference iz prostora imena “ http://www.tristero.co.rs/ ” (prefiks “ tristero ”), ali može koristiti i termine iz drugih rečnika, na primer, katalog knjiga kojima raspolaže može se opisati terminima nekog rečnika za bibliografske poda- tke i rečnika koji se koristi za podatke o cenama. Pri analizi rada našeg hipotetičkog pretraživača, zaobišli smo pitanje neimenovanih čvorova, pretražujući RDF graf po putanjama u kojima nije bilo bitno kroz koje se čvorove prolazi. Zamislimo na trenutak da smo, umesto neimenovanog čvora koji predstavlja adresu knjižare, greškom stavili identifikaciju vlasnika knjižare. Ako bi ovaj pogrešno po- stavljeni čvor imao svojstvo “ recnik:mesto ” sa vrednošću “Beograd”, naš algoritam ne bi mogao da uoči grešku i smatrao bi da dati objekat zadovoljava postavljeni uslov. Očigledno je da nije dovoljno da rečnik bude samo skup termina (URI referenci) koji mogu da se koriste, već da bi trebalo da sadrži mehanizam kojim se opisuje u kom kon- tekstu se neki termin može koristiti. U našem primeru, ovaj mehanizam bi trebalo da zabrani da se URI, koji označava vlasnika, koristi kao vrednost svojstva “ recnik:adresa ”. Već na nivou RDF-a postoji jedan sintaksički konstrukt koji predstavlja podršku za definisanje rečnika. 9 Naime, čvorovima RDF grafa može se dodeliti tip, odnosno može se reći da je tip nekog čvora drugi čvor. Sledeća RDF trojka kazuje da je ex:T tip čvora ex:A. ex:A rdf:type ex:T . Kada smo, u našem primeru, definisali da je “ tristero: home.html ” knjižara, koristili smo svojstvo “ recnik:tip ”. Umesto toga, mogli smo da koristimo “ rdf:type ” i da na taj način izbegnemo nepotrebno kreiranje sinonima za termine koji nam već stoje na raspolaganju. Videćemo da bi nam ovo donelo dodatne pogodnosti. RDF Schema (RDFS) je osnovni mehanizam za defini- sanje RDF rečnika. RDFS nam omogućava da u RDF-u kreiramo hijerarhiju klasa i da definišemo svojstva. Ljubiša Milivojević: SEMANTIČKI WEB – IDEJA I TEHNOLOGIJE

RkJQdWJsaXNoZXIy MTAxMzI5