OWL & RDF

przeznaczenie

  • Formaty te zostały  zaprojektowane w celu ustandaryzowania danych
  • RDF został zaprojektowany dla sieci WWW w celu współdzielenia jej zasobów
  • Od strony technicznej wykorzystano język XML
  • W aplikacjach stosowane tylko jako reprezentacja danych

HISTORIA

RDF - Resource Description Framework

  • powstał w 1997 roku
  • był odpowiedzią na podstawowy problem danych w internecie: dane były możliwe do odczytania przez maszynę (machine-readable), ale nie były możliwe do zrozumienia przez nią (machine-understandable)
  • wykorzystujemy metadane do opisu danych zawartych w sieci
  • Rozróżnienie między "danymi" a "metadanymi" nie jest bezwzględne; jest to rozróżnienie stworzone przede wszystkim przez określoną aplikację i wielokrotnie ten sam zasób będzie interpretowany jednocześnie w obie strony.
  • grafowy model reprezentacji danych
  • przedstawia (ale nie wyświetla) dane
  • zaprojektowany przez konsorcjum W3C dla sieci WWW w celu współdzielenia jej zasobów
  • należy pamiętać, że dane występujące w RDF to nie tylko wiedza w formie tekstowej!

RDF - Zastosowania

  • RDF zapewnia współdzialanie wielu aplikacji i możliwość wymiany (a nie zwykłej duplikacji) danych
  • Jest prawie zawsze używany przy budowaniu Semantic Web
  • RDF może być stosowany m.in.:
    • wyszukiwarkach (wykrywanie zasobów)
    • katalogowaniu
    • knowledge-sharing
    • do opisywania praw własności intelektualnej stron internetowych
    • stosowany również przy regulowaniu polityki prywatności
    • RDF z podpisami cyfrowymi jest kluczem do budowy "Web of Trust" dla handlu elektronicznego, współpracy i innych aplikacji.

rdf - podstawy

Podstawowy model danych zawiera trzy typy:

  • Zasoby :
    • identyfikowane za pomocą URI
    • odpowiadają węzłom w grafie
    • mogą mieć jeden lub wiele typów
    • praktycznie wszystko jest zasobem (człowiek, miejsce, strona)
  • Właściwości:
    •  identyfikowane za pomocą URI
    •  łączą zasoby pomiędzy sobą (relacja binarna pomiędzy nimi)
    •  odpowiadają krawędziom (łukom) w grafie
    •  łączą zasoby z literałami
  • Literały:
    • konkretne wartości danych, np. string, integer itd.
    • mogą występować wyłącznie w polu object
    • mogą posiadać typ danych lub znacznik języka (ale nie oba
      jednocześnie)

Trójkowa reprezentacja danych

Dane zawsze zapisujemy jako trójki:

podmiot - predykat - obiekt

Przykłady:

Ala ma kota.

Uniwersytet im. Adama Mickiewicza został powołany w 1919 roku jako państwowy uniwersytet z siedzibą w Poznaniu.

 

Z RDF-a można skorzystać też przy pomocy adnotacji:

PREFIX ex: <http://example.com/exampleOntology#>
SELECT ?capital ?country
WHERE {
  ?x ex:cityname ?capital ;
     ex:isCapitalOf ?y .
  ?y ex:countryname ?country ;
     ex:isInContinent ex:Africa .
}

Grafowy model reprezentacji RDF

Składnie języka rdf

  • Turtle
  • N-Triples
  • N-Quads
  • JSON-LD
  • N3 lub Notation3
  • RDF/XML
@base <http://example.org/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix rel: <http://www.perceive.net/schemas/relationship/> .

<#green-goblin>
    rel:enemyOf <#spiderman> ;
    a foaf:Person ;    # in the context of the Marvel universe
    foaf:name "Green Goblin" .

<#spiderman>
    rel:enemyOf <#green-goblin> ;
    a foaf:Person ;
    foaf:name "Spiderman", "Человек-паук"@ru 

Przykład składni Turtle:

Identyfikacja Uri

  • Określone identyfikatory są unikalne tylko dla dokumentu lub bazy
  • Istnieją też dane bez identyfikatorów (Blank nodes)
  • Dane RDF pomiędzy dokumentami/bazami są ze sobą słabo powiązane
  • Głównym identyfikatorem jest adres URI
  • W całej sieci można powiązać dane dowolnie

OWL - Web Ontology Language

OWL jest rozszerzeniem RDF. Został uznany za standard w 2004 roku, a w 2009 standardem stała się jego kontynuacja - OWL 2. Zarówno OWL jak i OWL 2 są obecnie używane do zapisu ontologii. Jest wykorzystywana zarówno przy Open World Assumption jak i Closed World Assumption.

OWL posiada znacznie silniejszą składnię oraz słownik.

Istnieją trzy odmiany języka OWL:

  • OWL Lite
  • OWL DL (rozszerzenie OWL Lite)
  • OWL Full (rozszerzenie OWL DL)

OWL a RDF

  • Zbiór klas, relacji oraz danych (instancji klas i relacji)o większej sile wyrazu niż RDFS
  • Zbiór konstruktorów służących do definiowania złożonych pojęć (klas) oraz relacji
  • Semantyka języka bazuje na logikach deskrypcyjnych

Doszło do zmian również w przypadku podstawowego modelu danych. W OWL składa się on z:

  • klas (król, mężczyzna, historyk)
  • właściwości ObjectProperties (maMame, maSyna, rządzi, mieszkaW)
  • właściwości DatatypeProperties (maLat, maWartość, maPłeć, maWykształcenie)
  • indywiduów, czyli istniejących instancji (Jan III Sobieski, Karol Wojtyła, Jacek)
  • konstruktorów wiążących ze sobą klasy, dane i właściwości (np. mogą to być zasady: isMan(?y), isSibling(?x, ?y) ->isBrother(?x, ?y) )

 

Przykład OWL

<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <!-- OWL Header Example -->
    <owl:Ontology rdf:about="http://www.linkeddatatools.com/plants">
        <dc:title>The LinkedDataTools.com Example Plant Ontology</dc:title>
        <dc:description>An example ontology written for the LinkedDataTools.com RDFS & OWL introduction tutorial</dc:description>
    </owl:Ontology>
    
    <!-- OWL Class Definition Example -->
    <owl:Class rdf:about="http://www.linkeddatatools.com/plants#planttype">
        <rdfs:label>The plant type</rdfs:label>
        <rdfs:comment>The class of plant types.</rdfs:comment>
    </owl:Class>
</rdf:RDF>

OWL 2

OWL 2

  • Stanowi rozwiniecie OWL 1.1
  • Poprawne ontologie OWL 1.1 to również poprawne ontologie OWL2.
  • Dwa rodzaje semantyki: The Direct Semantics oraz RDF-based Semantics
  • Młodsza wersja języka dostarcza kilka nowych funkcjonalności:
    • klucze
    • łańcuchy wartości
    • bogatszy zakres typów i wartości danych
    • dodatkowe możliwości komentowania i adnotacji
    • inne
  • Wersje OWL’a uzywaja składni RDF i są z nim kompatybilne

deck

By kko

deck

  • 281