Resource Description Framework Omówienie specyfikacji modelu i składni Grzegorz Wrochna Prezentacja sporządzona na potrzeby seminarium magisterskiego w PJWSTK
Resource Description Framework Plan prezentacji Wprowadzenie Podstawowe pojęcia związane z RDF Omówienie modelu RDF Omówienie składni RDF/XML Podsumowanie Resource Description Framework
Resource Description Framework Wprowadzenie 1 W dzisiejszym Internecie zasoby sieciowe to niezliczona liczba dokumentów tekstowych, grafiki, plików dźwiękowych, programów, et. Coraz trudniej zapanować a jeszcze trudniej zarządzać takim ogromem informacji. Mimo, że zasoby sieciowe można odczytać / odtworzyć z pomocą komputera, z jego punktu widzenia informacje te, są bezużyteczne, gdyż to co jest zrozumiałe dla ludzi niekoniecznie jest zrozumiałe dla komputera. Problem przynajmniej częściowo rozwiązuje stosowanie metadanych (czyli danych o danych) do opisu istniejących zasobów. Przykładem takiego rozwiązania są znaczniki <meta> w dokumentach html. Resource Description Framework
Resource Description Framework Wprowadzenie 2 (RDF) Resource Description Framework jest rekomendowanym przez World Wide Web Consortium (W3C), rozwiązaniem umożliwiającym lepsze wykorzystanie metadanych o zasobach www RDF powstawał w W3C w okresie od sierpnia 97 do stycznia 99. W tym czasie w opracowano specyfikacje modelu i składni. Członkom W3C, przyświecała idea utworzenia ogólnoświatowego standardu zapisu metadanych, w którym nie byłoby miejsca na dowolność, taką jak np. w znacznikach <meta>, a który jednocześnie byłby bardzo elastyczny. Mechanizm opisu zasobów powinien być neutralny w stosunku do dziedziny zasobu, powinien umożliwiać opisanie zasobów z każdej dowolnej dziedziny Resource Description Framework
Resource Description Framework Wprowadzenie 3 Główne cele utworzenia RDF’u : poprawienie efektywności motorów przeszukiwań wsparcia inteligentnych agentów programowych tworzenia nowych sposobów katalogowania informacji pod kątem lepszej nawigacji Resource Description Framework
Resource Description Framework Podstawowe pojęcia 1 Resource - zasoby będące przedmiotem opisu Description - sformalizowany opis zasobu URI - Uniform Resource Identifier, identyfikator zasobu. Zasób może posiadać swój opis tylko wtedy gdy posiada URI Property - właściwość opisywanego zasobu. Właściwością może być wartość prosta w postaci ciągu, lub też inny zasób Value - wartość jakiejś właściwości. Może być wyrażona za pomocą prostej wartości, wartości złożonej, innego zasobu lub nawet zbióru zasobów RDF statement -trójka w której skład wchodzą: zasób, właściwość, wartość. RDF statement można łatwo przedstawić za pomocą zdania w języku naturalnym Resource Description Framework
Resource Description Framework Podstawowe pojęcia 2 Containers - Zbiorniki. Często konieczne okazuje się wprowadzenie kilku wartości dla danej właściwości. Dzięki zbiornikom, tego typu przypisania stają się możliwe.W specyfikacji RDF, występują trzy rodzaje zbiorników: Bag – nieuporządkowana lista, w której kolejność elementów (zasobów, lub wartości) nie ma znaczenia. Istnienie duplikatów jest dozwolone Sequence – uporządkowana lista, w której ważna jest kolejność elementów. Istnienie duplikatów jest dozwolone Alternative – lista alternatywnych wartości jakiejś właściwości. Może być wykorzystywane przy określaniu np. wersji językowych danego zasobu Resource Description Framework
Resource Description Framework Model RDF RDF description Property Property type Value URI Resource Zasób może posiadać tylko jeden opis. Opis może zawiera wiele właściwości a właściwość ma wartość. Resource Description Framework
Model RDF. Diagramy wyrażeń RDF www.site.com/news.html Language english Creator John James Zasób Właściwości Wartość URI Modelowanie wyrażeń RDF za pomocą diagramów „nodes and arcs” Resource Description Framework
Model RDF. Modelowanie wyrażeń RDF W modelowaniu RDF pomocny okazuje się język naturalny. Proste zdanie można łatwo przełożyć na diagram np. Grzegorz Wrochna jest autorem zasobu http://pjwstk.waw.pl/s0908/strona.html http://pjwstk.waw.pl//s0908/strona.html Autor Grzegorz Wrochna Resource Description Framework
Model RDF. Przedstawianie wartości złożonych 1 Osoba o imieniu i nazwisku Grzegorz Wrochna, posiadajaca email s0908@pjwstk.waw.pl jest autorem zasobu http://pjwstk.waw.pl/s0908/strona.html. http://pjwstk.waw.pl/s0908/strona.html Autor s0908@pjwstk.waw.pl Grzegorz Wrochna Email Imie i nazwisko Resource Description Framework
Model RDF. Przedstawianie wartości złożonych 2 http://pjwstk.waw.pl/s0908/strona.html Autor s0908@pjwstk.waw.pl Grzegorz Wrochna Email Imie i nazwisko http://studenci.pjwstk.waw.pl/s0908 Nowopowstały zasób może również być identyfikowany poprzez URI, pod warunkiem, że URI będzie identyfikował go jednoznacznie. Resource Description Framework
Model RDF. Przedstawianie zbiorników 1 http://www.mp3.pl/song.mp3 Wykonawcy Rdf:Seq Rdf:type Rdf:_1 Rdf:_2 Rdf:_3 Janko Chanowski DJ. Rokita Świtoń MC Zastosowanie zbiornika do przedstawienia listy wykonawców utworu... Resource Description Framework
Model RDF. Przedstawianie zbiorników 2 http://zasoby.com/doc_pl.html Wersje językowe Rdf:Alt http://zasoby.com/doc_eng.html http://zasoby.com/doc_rus.html Rdf:type Rdf:_1 Rdf:_2 Rdf:_3 http://zasoby.com/doc_ger.html Elementami zbiornika mogą być również inne zasoby Resource Description Framework
Resource Description Framework Składnia RDF/XML Omawiana specyfikacja składni RDF korzysta z XML (extensible markup language), została ona zarekomendowana przez W3C, jako pierwsza, i jak dotąd jedyna. Wybrano XML, z racji na łatwość przedstawiania w nim skomplikowanych struktur, oraz kojarzenie przyszłości dokumentów w sieci, z tym właśnie językiem. Składnia RDF/XML dzieli się na Basic Serialization Syntax, oraz Abbreviated Serialization Syntax. Pierwsza, korzysta ze wszelkich udogodnień XML’a. Druga jest wersją nieco okrojoną, przeznaczoną do zakorzeniania w dokumentach html. Resource Description Framework
Składnia RDF/XML. Wykorzystanie przestrzeni nazw. Namespaces w RDF wykorzystuje się do kojarzenia danego fragmentu dokumentu z jego schematem lub też definicją. Np.: <RDF xmlns = "http://w3.org/TR/1999/PR-rdf-syntax-19990105#" > Dzięki przestrzeni nazw osoba lub program analizujący dane, może łatwo może stwierdzić czy dwa, przykładowe elementy RDF, dotyczą tego samego schematu RDF, i czy można je traktować tak samo. Resource Description Framework
Składnia RDF/XML. Przykład 1 http://pjwstk.waw.pl//s0908/strona.html Autor Grzegorz Wrochna <? xml version="1.0" ?> <RDF xmlns = ”http://w3.org/TR/1999/PR-rdf-syntax-19990105#” xmlns:s= ”http://description.org/schema#” <Description about = ”http://pjwstk.waw.pl/s0908/strona.html" > <s:Autor>Grzegorz Wrochna</s:Autor> </Description> </RDF> Resource Description Framework
Składnia RDF/XML. Przykład 2 Przykład wyrażenia wykorzystującego schemat Dublin Core: <? xml version="1.0" ?> <RDF xmlns = "http://w3.org/TR/1999/PR-rdf-syntax-19990105#" xmlns:DC = "http://purl.org/DC#" > <Description about = "http://dstc.com.au/report.html"> <DC:Title> The Future of Metadata </DC:Title> <DC:Creator> Jacky Crystal </DC:Creator> <DC:Date> 1998-01-01 </DC:Date> <DC:Subject> Metadata, RDF, Dublin Core</DC:Subject> </Description> </RDF> Resource Description Framework
Składnia RDF/XML. Przykład 3 Przykład wyrażenia wykorzystującego schemat vCard: <? xml version="1.0" ?> <RDF xmlns = "http://w3.org/TR/1999/PR-rdf-syntax-19990105#" xmlns:DC = "http://purl.org/DC#”> <Description about = "http://dstc.com.au/report.html" > <DC:Title> The Future of Metadata </DC:Title> <DC:Creator parseType="Resource"> <vCard xmlns=”http://abc.org/vCardSchema#”> <vCard:FN> Dr Jacky J Crystal </vCard:FN> <vCard:TITLE> Director </vCard:TITLE> <vCard:EMAIL> jacky@dstc.com.au </vCard:EMAIL> <vCard:ROLE> Researcher </vCard:ROLE> </DC:Creator> </Description> </RDF> Resource Description Framework
Składnia RDF/XML. Przykład 4 Praktyczne zastosowanie zbiorników: <? xml version="1.0" ?> <RDF xmlns=” http://www.mp3.pl/song.mp3#” xmlns:s =„http://www.schemas.org/s#> <description about=” http://www.mp3.pl/song.mp3”> <S:Wykonawca> <Bag> <li> Janko Chanowski </li> <li> DJ Rokita </li> <li> Świtoń MC</li> </Bag> </S:Wykonawca> </descritption> </RDF> Resource Description Framework
Składnia RDF/XML. Przykład 5 RDF umożliwia tworzenie wyrażeń o innych wyrażeniach: <Description about = "http://www.com/report.html" bagID = "ID001" > <DC:Title> The Metadata Report </DC:Title> <DC:Creator> Jacky Crystal </DC:Creator> </Description> <Description aboutEach = "#ID001" > <ADMIN:ValidFrom> 1998-01-01 </ADMIN:ValidFrom> <ADMIN:ValidTo> 1999-12-31 </ADMIN:ValidTo> Resource Description Framework
Składnia RDF/XML. Przykład 6 RDF umożliwia stosowanie jednych zasobów jako właściwości drugich: <Description about = "http://ieee.org/xml-conf98.html" > <IEEE:Title>Proceedings of the XML'98 Conference</IEEE:Title> <IEEE:Editor> Jacky Crystal </IEEE:Editor> <IEEE:Papers> <Seq ID="XML98-PAPERS"> <li resource = "http://ieee.org/papers/xml98-1.xml" /> <li resource = "http://ieee.org/papers/xml98-2.xml" /> <li resource = "http://ieee.org/papers/xml98-3.xml" /> </Seq> </IEEE:Papers> </Description> <Description aboutEachPrefix = "http://ieee.org.papers" > <IEEE:Copyright>Copyright IEEE 1998</IEEE:Copyright> Resource Description Framework
Składnia RDF/XML. Zasoby a opisy 1 Opis RDF można zawrzeć wewnątrz dokumentu HTML Opis może być pobierany równolegle z zasobem, w ramach jednej transakcji Opis może być pobierany niezależnie od zasobu z zupełnie innej lokalizacji Opis może zawierać zasób Rekomendowana przez W3C technika zagnieżdżania opisu RDF w HTML’u jest umieszczanie opisu RDF wewnątrz tagów <HEAD> dokumentu. Resource Description Framework
Składnia RDF/XML. Zasoby a opisy 2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <TITLE>An Idiot's Guide to the Resource Description Framework</TITLE> <RDF xmlns = "http://w3.org/TR/1999/PR-rdf-syntax-19990105#" xmlns:dc = "http://purl.org/DC#"> <Description about = "http://www.dstc.edu.au/RDU/reports/RDF-Idiot/" DC:Title = "An Idiot's Guide to the Resource Description Framework" DC:Creator = "Renato Iannella" DC:Date = "1998-09-03" DC:Date,Modfied = "1999-01-25" DC:Subject = "Metadata, Resource Description Framework, Schemas" DC:Rights = "Copyright DSTC Pty Ltd 1998, 1999" /> </RDF> </HEAD> Resource Description Framework
Resource Description Framework Podsumowanie XML i RDF, razem tworzą jak dotąd bezkonkurencyjny mechanizm opisu zasobów RDF ma ambicje stania się standardem wymiany metadanych XML i RDF mają stanowić podstawę WWW następnej generacji pierwsze zastosowania RDF, takie jak przeglądarka Netscape 6 i ośrodek webowy epinions.com, zamierzają właśnie podbić rynek Resource Description Framework
Resource Description Framework bibliografia Specyfikacja modelu i składni RDF http://www.w3.org./TR/1999/REC-rdf-syntax-19990222 An Idiot's Guide to the Resource Description Framework http://www.dstc.edu.au/RDU/reports/RDF-Idiot Namespaces in XML http://www.w3.org/TR/1999/REC-xml-names-19990114 Resource Description Framework