Sorry, you need to enable JavaScript to visit this website.

Technologie sémantického webu

Čas nutný k přečtení
19 minut
Již přečteno

Technologie sémantického webu

0 comments
Anglicky
English abstract: 
Semantic Web Technologies are used for recording information on the Semantic Web. These technologies should put information in the way machine can understand and process.

Úvod

V původním dokumentu o sémantickém webu [1] jsou pro jeho vytváření navrhovány dvě technologie: XML (eXtensible Markup Language) a RDF (Resource Description Framework). Spojením těchto dvou technologií pak vzniká jeden ze základních jazyků pro zapisování informací na sémantickém webu RDF/XML.

V dnešní době existuje poměrně velké množství alternativ RDF/XML, které jsou na tomto formátu založeny a které ho doplňují a rozšiřují. Tento článek se zabývá těmi nejdůležitějšími, mezi než patří RDFS (RDF Schema) a OWL (Web Ontology Language).

Zvláštní postavení mezi technologiemi používanými na sémantickém webu má pak dotazovací jazyk SPARQL, což je jazyk navržený speciálně pro vytváření dotazů na RDF. [2]

XML

XML (eXtensible Markup Language) [3] je značkovací jazyk, který umožňuje každému vytvářet si své vlastní značky. To dává uživateli možnost vytvářet si vlastní struktury pro své dokumenty. Struktura XML dokumentu je dána pomocí DTD (Document Dype Definition) [4], které může být nahrazeno XML Schema [5] či Relax NG (REgular LAnguage for XML Next Generation) [6].

Značná nevýhoda XML dokumentů spočívá v tom, že jim nedokáže porozumět ostatní software, pokud nejsou využity standardizované formáty. Avšak i v případě nasazení těchto formátů bývá interoperabilita softwaru často problematická. Technologii XML je výhodné použít pro tvorbu dokumentů, které slouží pouze samotnému tvůrci. V takovém případě poskytuje XML mocný nástroj, jak vyjádřit prakticky cokoli, a to pro uživatele přirozeným způsobem.

Pro účely sémantického webu slouží XML spíše jako základ ostatních technologií, ne jako samotný prostředek pro tvorbu sémantického webu. Význam se na sémantickém webu vyjadřuje pomocí RDF.

RDF

RDF (Resource Description Framework) [7-9] je technologie určená pro reprezentaci informací o zdrojích na World Wide Webu. Zejména je určen pro reprezentaci metadat o webových zdrojích. Metadata jsou jednoduše řečeno data o datech, jako je název či autor zdroje, datum změny webové stránky, copyright a licenční informace o webovém dokumentu nebo dostupnost některých sdílených zdrojů.

RDF je velice užitečný nástroj především pro případy, kdy chceme informace spíše zpracovávat pomocí aplikací než je zobrazovat lidem. RDF navíc poskytuje framework pro vyjádření těchto informací, aplikace si je tedy mohou snadno mezi sebou vyměňovat, aniž by byl význam informací ztracen. Díky tomu mohou RDF dokumentům rozumět i aplikace, pro které nebyl daný dokument původně určen.

RDF se kóduje pomocí trojic neboli triplů subjekt - vlastnost - objekt, anglicky subject - predicate - object. Grafické znázornění triplu můžete vidět na Obrázku 1.

Obrázek 1: RDF trojice

Obrázek 1: RDF trojice

Tyto trojice vyjadřují, že každá konkrétní věc má svou vlastnost s určitou hodnotou. Například výrok "Kobyla má malý bok" lze v RDF vyjádřit pomocí trojice: subjekt "kobyla", vlastnost "má bok" a objekt "malý". Pomocí RDF trojic lze správným použitím vyjádřit prakticky jakoukoli informaci. Takto kódovaným informacím jsou počítače schopny porozumět a dokáží je převést i do pro člověka srozumitelné formy. Technologie RDF tak přináší naprostou revoluci v zápisu dat na webu.

Subjekt, vlastnost i objekt jsou vždy identifikovány pomocí IRI, stejně jako se to běžně používá u odkazů na webových stránkách. Díky používání IRI ke kódování informací v RDF dokumentech je zaručeno, že jednotlivé pojmy nejsou jen slova v dokumentu, ale jsou vázány k unikátní definici, kterou můžeme najít na webu. Díky používání IRI můžeme spojovat části informací na webu. Nicméně narozdíl od tradičního hypertextu, IRI v RDF mohou odkazovat prakticky na cokoli. Dokonce nám umožňují odkazovat se na věci, které vůbec nejsou na webu dohledatelné, jako například na jména lidí. Z toho vyplývá, že pomocí RDF můžeme popsat nejen webové stránky, ale i například auta, firmy, lidi, zprávy atd. Mimo to mají své vlastní IRI i RDF vlastnosti, takže mohou být přesně identifikovány vztahy existující mezi propojenými položkami.

Pro zápis RDF trojic existuje více způsobů. Jednou z možností je zobrazení vztahů pomocí orientovaných RDF grafů [10]. V RDF grafech je možné používat tzv. blank nodes neboli prázdné uzly. Ty nejsou opatřeny identifikátory IRI a slouží pouze pro lepší propojování dalších částí grafu. Vyjádření informací pomocí RDF orientovaného grafu představuje velmi dobrý nástroj pro porozumění vztahů mezi jednotlivými pojmy. Dále se jedná o užitečného pomocníka při přepisu dat do značkovacích jazyků odvozených od XML.

V souvislosti s RDF grafy je určitě třeba zmínit i tzv. Topic Maps [11], česky mapy témat, které jsou RDF grafům v mnoha ohledech velmi podobné. Mapy témat však vznikly zcela nezávisle na RDF a dokonce o něco dříve. Oproti RDF grafům poskytují mapy témat vyšší stupeň sémantické abstrakce tím, že umožňují různorodá propojení více uzlů a mohou tak vytvářet tzv. hypergrafy, zatímco RDF je omezeno na trojice a lze zde tedy spojit pouze dva uzly pomocí jednoho vztahu.

Pro potřeby sémantického webu se RDF trojice většinou zapisují pomocí jazyka RDF/XML, který je, stejně jako většina jazyků používaných pro zápis informací na sémantickém webu, odvozen od jazyka XML. Stejně jako HTML je i RDF/XML zpracovatelné strojem.

Stejně jako v XML si i v RDF uživatel zavádí své vlastní značky. To nám poskytuje možnost vyjádřit bez omezení jednotlivé informace, avšak počítač není schopen porozumět tomu, co konkrétně jednotlivé údaje znamenají. Navíc na rozdíl od pokročilejších technologií sémantického webu není v RDF umožněno definovat omezení, jako například, že každý člověk je buď muž nebo žena, a pokud je někdo muž, nemůže být zároveň i žena.

TURTLE

Turtle (Terse RDF Triple Language) [12, 13] představuje další možný způsob, jak vyjádřit RDF grafy v kompaktní a přirozené textové podobě. Turtle se stal velmi populární alternativou RDF/XML pro vytváření sémantického webu, neboť je zapisován v uživatelsky mnohem příjemnější formě.

Pro zápis pomocí Turtle je dáno několik základních pravidel [12]:
·  každou RDF trojici je třeba ukončit tečkou
člověk:Zdeněk_Jirotka  info:type  typ:člověk .
·  komentáře v Turtle se uvozují pomocí křížku
# toto je kometář
·  IRI se zapisují ve špičatých závorkách
<http://www.motejlka.cz/Lidé#Zdeněk_Jirotka>
·  prefixy (předpony) se definují pomocí @prefix
@prefix info: < http://www.motejlka.cz/info#>.
·  textové řetězce jsou vsazeny do dvojitých uvozovek
"text"
"""text"""
"""text
s novými řádky
"""

·  textové řetězce mohou být dále opatřeny sufixy (příponami) upřesňujícími jazyk, kterým jsou psány, a to v podobě @značka_jazyka
"writer"@en
"écrivain"@fr
· dalším možným sufixem je uvedení datového typu připojením ^^ a následně povolenou formou IRI
"info"^^<http:// www.motejlka.cz /datový_typ>
"""10"""^^xsd:decimal
"-5"^^xsd:integer
"10"^^<http://www.w3.org/2001/XMLSchema#integer>
"1.3e2"^^xsd:double
"true"^^xsd:boolean

·  prázdným uzlům musí být přidělen identifikátor v podobě _:ID_uzlu
_:jazyk
·  textové řetězce i IRI mohou obsahovat různé speciální znaky
\t (U+0009)  - tabulátor
\n (U+000A)  - nový řádek
\r (U+000D)  - posun kurzoru na začátek řádku
\" (U+0022)  - dvojité uvozovky, povoleny pouze uvnitř řetězce
\> (U+003E) - větší než, povoleno pouze v IRI
\\ (U+005C)  - zpětné lomítko
\uHHHH nebo \UHHHHHHHH - pro psaní Unicode znaků v hexadecimální soustavě,
"H" představuje jeden hexadecimální znak
·  v průběhu dokumentu je možno měnit základní IRI pomocí příkazu @base
@base <http://www.motejlka.cz/newbase>.
·  místo IRI <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> lze v Turtle použít zkratku a
@prefix typ: <http://www.motejlka.cz/typ#>.
<http://www.motejlka.cz/Lidé#Zdeněk_Jirotka> a typ:člověk.
·  při použití čárky na konci trojice je možné v další trojici vynechat subjekt a vlastnost
:a   :b   :c ,
:d .   # tato trojice znamená :a   :b   :d .
·  při použití středníku na konci trojice je možné v další trojici vynechat subjekt
:a   :b   :c ;
:d   :e .   # tato trojice znamená :a   :d   :e .
·  RDF sbírky se v Turtle uzavírají do kulatých nebo hranatých závorek a oddělují pomocí prázdných znaků, toho je využíváno především při popisu částí grafu obsahujících prázdné uzly
@prefix : <http://www.motejlka.cz/info#> .
:subjekt : vlastnost ( :a : b : c ) .
:subjekt :vlastnost2 () .  # prázdná sbírka (rdf:nil)
( obj1 obj2 ) je zkrácená verze pro:
[ rdf:first obj1; rdf:rest [ rdf:first obj2; rdf:rest rdf:nil ] ]

Syntaxe TURTLE je alternativou RDF/XML, a proto s sebou jeho používání přináší i stejné výhody a nevýhody. Mezi výhody patří například možnost vyjádření prakticky jakékoli informace podle vlastních potřeb, neboť jazyk není omezen jen na několik tříd a vlastností, jako je tomu u většiny dalších technologií. Na druhou stranu zde stále chybí možnost definovat různá omezení. Výhodou TURTLE oproti RDF/XML je uživatelsky mnohem příjemnější forma zápisu jednotlivých RDF trojic.

RDFS

RDF je univerzálním jazykem pro reprezentaci informací na webu, neposkytuje však žádné mechanismy pro popis vlastností a vztahů mezi nimi a dalšími zdroji. To je úkolem jazyka pro popis RDF slovníku RDFS (RDF Schema) [14]. RDFS je vlastně sémantickým rozšířením samotného RDF, které poskytuje mechanismy pro popis skupin souvisejících zdrojů a vztahů mezi těmito zdroji.

V RDFS se definují třídy a vlastnosti, které jsou pak použity k popisu tříd, vlastností a dalších zdrojů. Systém tříd a vlastností v RDFS vychází z podobných přístupů, jaké používají objektově orientované programovací jazyky, jako například Java.

RDFS rozděluje zdroje do tříd, které jsou samy o sobě též zdroji. Členy těchto tříd pak označujeme jako instance tříd. Stejně jako v RDF se i v RDFS třídy označují pomocí IRI a mohou být popsány použitím RDF vlastností. Pokud je některá třída součástí jiné, můžeme v RDFS využít pojmů „podtřída“ a „super-třída“, kde podtřída je třída obsažená ve třídě jiné, která se pro tuto stává super-třídou.

RDF rozlišuje mezi třídou a souborem jejích instancí. S každou třídou je spojen soubor, který představuje soubor instancí této třídy a který se označuje jako třída rozšíření třídy. Je důležité si uvědomit, že dvě různé třídy mohou mít stejný soubor instancí. Třída může být též instancí sebe sama či členem své vlastní třídy rozšíření.

RDFS obsahuje jen omezené množství tříd a vlastností, které je možné použít. Jejich seznam a použití vidíte v Tabulce 1 a v Tabulce 2.

Tabulka 1: RDF třídy


Třída

Popis

rdfs:Resource

zdroj třídy (může být cokoli)

rdfs:Literal

třída písemných hodnot jako jsou textové řetězce, čísla atd.

rdf:XMLLiteral

třída XML hodnot

rdfs:Class

třída tříd

rdf:Property

třída RDF vlastností

rdfs:Datatype

třída RDF datatypů

rdf:Statement

třída RDF příkazů

rdf:Bag

třída nezařazených kontejnerů

rdf:Seq

třída zařazených kontejnerů

rdf:Alt

třída kontejnerů alternativ

rdfs:Container

třída RDF kontejnerů

rdfs:ContainerMembership
Property

třída vlastností společenstva kontejneru, rdf:_1, rdf:_2,…, které jsou všechny podvlastnosti vlastnosti 'member'

rdf:List

třída RDF seznamů

Mezi RDF třídami se objevují speciální třídy pro tzv. kontejnery. Ty nám umožňují vytvářet sbírky a mohou být klidně nahrazeny pomocí vlastnosti rdf:type.

Tabulka 2: RDF vlastnosti


Vlastnost

Popis

Doména

Rozsah

rdf:type

subjekt je instancí třídy

rdfs:Resource

rdfs:Class

rdfs:subClassOf

subjekt je podtřídou třídy

rdfs:Class

rdfs:Class

rdfs:subPropertyOf

subjekt je podvlastností vlastnosti

rdf:Property

rdf:Property

rdfs:domain

doména vlastnosti subjektu

rdf:Property

rdfs:Class

rdfs:range

rozsah vlastnosti subjektu

rdf:Property

rdfs:Class

rdfs:label

název subjektu v přirozené řeči

rdfs:Resource

rdfs:Literal

rdfs:comment

popis zdroje subjektu

rdfs:Resource

rdfs:Literal

rdfs:member

člen zdroje subjektu

rdfs:Resource

rdfs:Resource

rdf:first

první položka v RDF listu

rdf:List

rdfs:Resource

rdf:rest

zbytek RDF listu po první položce

rdf:List

rdf:List

rdfs:seeAlso

další informace o zdroji subjektu

rdfs:Resource

rdfs:Resource

rdfs:isDefinedBy

definice zdroje subjektu

rdfs:Resource

rdfs:Resource

rdf:value

idiomatická vlastnost používaná pro strukturované hodnoty

rdfs:Resource

rdfs:Resource

rdf:subject

subjekt

rdf:Statement

rdfs:Resource

rdf:predicate

vlastnost

rdf:Statement

rdfs:Resource

rdf:object

objekt

rdf:Statement

rdfs:Resource

V RDF dále můžeme kromě těchto tříd a vlastností použít rdf:_1, rdf:_2, atd. Tyto vlastnosti jsou podtřídami třídy rdfs:member a instancemi třídy rdfs:ContainerMembershipProperty. Mimo to zde ještě existuje instance třídy rdf:List nazývaná rdf:nil, která je vlastně prázdným RDF seznamem.

Stejně jako RDF si i RDFS můžeme vyjádřit pomocí orientovaného grafu, který se dá samozřejmě přepsat do značkovacího jazyka. RDFS obsahuje jen velmi omezené množství předdefinovaných tříd a vlastností, které je možné použít. Tyto třídy a vlastnosti jsou však poměrně univerzální a dovolují zápis prakticky jakékoli informace.

Technologie RDFS se skvěle hodí pro zápis informací na sémantickém webu díky své jednoduchosti a zároveň univerzálnosti. Nevýhodou však stále zůstává neschopnost definovat různá omezení. Tuto možnost poskytují až pokročilejší a složitější technologie pro tvorbu sémantického webu.

OWL

OWL (Web Ontology Language) [15-19] je sémantický značkovací jazyk určený pro definování, publikování a sdílení ontologií na World Wide Webu. Používá se pro aplikace, které potřebují informace nejen prezentovat lidem, ale i zpracovávat. OWL byl vyvinut jako slovník rozšiřující RDF. Díky poskytnutí dalších slovníků pro popis tříd a vlastností spolu s formální sémantikou představuje mnohem účinnější nástroj pro interpretabilitu informací na webu než dosud popsané technologie XML, RDF a RDFS.

OWL je stejně jako RDF/XML vyjádřením trojic RDF grafu pomocí značkovacího jazyka. Hlavní využití jazyka OWL lze shrnout do třech základních bodů [16]:
1. vytváření domény definováním tříd a jejich vlastností.
2. definování instancí (prvků tříd) a jejich vlastností.
3. uvažování těchto tříd a instancí do přípustného stupně použitím formální sémantiky jazyka OWL.

Původní verze OWL poskytuje tři čím dál více významné podjazyky, které jsou určeny a používány specifickými skupinami uživatelů: OWL Lite, OWL DL a OWL Full [15].  

V OWL 2 jsou k dispozici další tři podjazyky: OWL 2 EL, OWL 2 QL a OWL 2 RL [20]. Těmito podjazyky se však nebudeme v rámci tohoto článku dále zabývat.

Pokud vytváříme ontologie pomocí OWL, je třeba dobře zvážit, který podjazyk bude nejlépe vyhovovat našim požadavkům. Je též důležité si uvědomit vztah mezi OWL a RDF. OWL Full může být chápán jako rozšíření RDF, zatímco OWL Lite a OWL DL jsou spíše rozšířením pouze omezeného pohledu na RDF. Každý OWL dokument, ať už Lite, DL nebo Full, je zároveň i RDF dokumentem a každý RDF dokument je taktéž OWL Full dokumentem. Ne každý RDF dokument může však být zároveň OWL Lite či OWL DL dokument. Z těchto důvodů si musíme dávat pozor, pokud převádíme RDF dokumenty do OWL. Mimo jiné musí být všechny IRI používané jako název třídy nebo vlastnosti převedeny na typ owl:Class, každá instance musí patřit alespoň pod jednu třídu, IRI používané pro třídy, vlastnosti a instance musí být vzájemně odděleny.

Každý z podjazyků OWL je rozšířením svého jednoduššího předchůdce:
·  každá správně napsaná OWL Lite ontologie platí též pro OWL DL.
·  každá správně napsaná OWL DL ontologie platí též pro OWL Full.
·  každý validní závěr v OWL Lite je validní též v OWL DL.
·  každý validní závěr v OWL DL je validní též v OWL Full.

OWL představuje stále ještě univerzální technologii pro zápis informací na sémantickém webu. Poskytuje mnohem účinnější nástroj pro interpretabilitu informací na webu než dosud zkoumané technologie. Jedná se o pokročilejší jazyk, který již dovoluje definovat různá omezení. Nevýhodou jazyka OWL je poměrně nepříjemný a složitý způsob zápisu jednotlivých informací. I tak se jedná v dnešní době asi o nejpoužívanější technologii sémantického webu.

OWL Lite

OWL Lite je určen hlavně pro uživatele, kteří potřebují klasifikovat především hierarchii a jednoduchá omezení. Vytvářet nástroje pro OWL Lite by mělo být jednodušší než pro ostatní rozšířenější verze jazyka OWL. OWL Lite poskytuje rychlý přechod pro tezaury a ostatní taxonomie. OWL Lite má nižší formální složitost než OWL DL a poskytuje jen omezené množství konstruktorů [15, 17],  které jsou vypsány v Tabulce 3.

Tabulka 3: konstruktory OWL Lite


Konstruktor

Popis

Vlastnosti RDF Schema

Class
- Thing
- Nothing

třída → skupina instancí, které sdílí stejné vlastnosti
- něco - třída všech instancí, nadtřída všech OWL tříd
- nic - třída bez instancí, podtřída všech OWL tříd

rdfs:subClassOf

podtřída - podřazená třída třídy

rdf:Property

vlastnost subjektu

rdfs:subPropertyOf

podvlastnost - podřazená vlastnost vlastnosti

rdfs:domain

doména vlastnosti subjektu

rdfs:range

rozsah vlastnosti subjektu

Individual

individuum - instance třídy

Rovnost / Nerovnost

equivalentClass

stejné třídy - vytváření synonym

equivalentProperty

stejné vlastnosti

sameAs

stejné instance

differentFrom

instance se liší od jiných instancí

AllDifferent

instance se liší od všech ostatních instancí

distinctMembers

odlišné členy seznamu

Charakterizace

ObjectProperty

spojení různých instancí tříd (např. máDítě)

DatatypeProperty

spojení instance třídy a datového typu (např. máVěk)

inverseOf

opačná vlastnost

TransitiveProperty

tranzitivní vlastnost → pokud je dvojice (a,b) instancí tranzitivní vlastnosti D a dvojice (b,c) je instancí D, pak i dvojice (a,c) je instancí D.

SymmetricProperty

symetrická vlastnost → pokud je dvojice (a,b) instancí symetrické vlastnosti D, i dvojice (b,a) je instancí D

FunctionalProperty

jedinečná vlastnost

InverseFunctionalProperty

inverzně funkční vlastnost - pokud je vlastnost inverzně funkční, pak opak vlastnosti je funkční

Omezení

Restriction

obalující element omezení

onProperty

omezená funkce

allValuesFrom

omezení rozsahu všech vlastností

someValuesFrom

omezení rozsahu některých vlastností

Omezení rozsahu vlastnosti instancí určité třídy
 (u OWL Lite povoleny pouze hodnoty 0 nebo 1)

minCardinality

minimální rozsah

maxCardinality

maximální rozsah

cardinality

rozsah - vymezení minima i maxima

Hlavní informace

Ontology

informace o ontologii

imports

odkaz na jiné ontologie; je instancí OntologyProperty

Prolínání třídy

intersectionOf

protínání názvů tříd a omezení

Datové typy

xsd datatypes

datové typy xsd (např. xsd:string atd.)

Poznámky

rdfs:label

název subjektu v přirozené řeči

rdfs:comment

popis zdroje subjektu

rdfs:seeAlso

další informace o zdroji subjektu

rdfs:isDefinedBy

definice zdroje subjektu

AnnotationProperty

poznámka

OntologyProperty

ontologie

Popis

versionInfo

informace o verzi, je instancí AnnotationProperty

priorVersion

odkaz na jinou ontologii; je instancí OntologyProperty

backwardCompatibleWith

odkaz na starší verzí dané ontologie, která je s ní kompatibilní; je instancí OntologyProperty

incompatibleWith

odkaz na novější verzi dané ontologie, která s ní však není kompatibilní

DeprecatedClass

neschvalovaná třída

DeprecatedProperty

neschvalovaná vlastnost

OWL DL

OWL DL je vhodný především pro ty uživatele, kteří chtějí co největší výmluvnost a zároveň požadují zachování výpočetní úplnosti a rozhodnutelnosti. To znamená, že všechny prováděné závěry jsou zaručeně vypočitatelné a všechny výpočty jsou ukončeny v konečném čase. OWL DL zahrnuje všechny konstruktory jazyka OWL, avšak může jich využívat pouze s určitým omezením, například pokud může být třída podtřídou více tříd, třída už nemůže být instancí jiné třídy. V OWL DL můžeme kromě konstruktorů používaných v OWL Lite využít i dalších konstruktorů, které jsou vypsány v Tabulce 4.

Tabulka 4: další OWL konstruktory


Konstruktor

Popis

Axiomy třídy

oneOf, dataRange

výčet možných instancí dané třídy

disjointWith

třída se neslučuje s jinou

equivalentClass

stejné třídy (použitelné na označení třídy)

rdfs:subClassOf

podtřída (použitelné na označení třídy)

Booleanovské kombinace označení třídy

unionOf

spojení

complementOf

doplnění

intersectionOf

protnutí

Libovolný rozsah

minCardinality

minimální rozsah

maxCardinality

maximální rozsah

cardinality

rozsah - vymezení minima i maxima

Informace o obsahu

hasValue

určité instance musí mít vlastnost s danou hodnotou

OWL Full

OWL Full využijí zejména ti uživatelé, kteří kladou důraz na maximální výmluvnost a syntaktickou svobodu RDF, avšak nepotřebují záruku vypočitatelnosti. V OWL Full může například být třída považována zároveň za sbírku instancí i za instanci samotnou. OWL Full povoluje ontologii rozšiřovat význam předdefinovaných RDF nebo OWL slovníků. Díky tomu je velmi nepravděpodobné, že by byl vytvořen software, který by byl schopný podporovat kompletní logiku všech vlastností OWL Full. OWL Full využívá stejných konstruktorů jako OWL DL.

SPARQL

SPARQL (SPARQL Protocol and RDF Query Language) [21-24] je dotazovací jazyk pro RDF. Stejně jako RDF se i SPARQL dotazy vyjadřují pomocí trojic objekt - vlastnost - subjekt, které zde mají možnost vystupovat jako proměnné. SPARQL dotaz může vracet žádnou, jednu nebo více odpovědí. Vytváření dotazů v jazyce SPARQL má svá pravidla:
·  na začátku SPARQL dotazu se definují prefixy.
· výběr se provádí pomocí příkazu SELECT nebo CONSTRUCT, za kterými následuje výčet proměnných, které chceme vrátit jako odpověď na náš dotaz. Příkaz SELECT vrací proměnné, zatímco pomocí příkazu CONSTRUCT můžeme získat jako odpověď RDF trojice.
·  podmínky dotazu se uvozují příkazem WHERE a uzavírají do složených závorek.
·  dotazy můžeme dále specifikovat pomocí funkce FILTER a regulárního výrazu, který při použití i nezohledňuje velká a malá písmena. 
·  dále platí pro psaní SPARQL dotazů vesměs stejné pravidla jako pro psaní Turtle, například pro zápis IRI či vyjádření datového typu. 

Jazyk SPARQL se stal výborným pomocníkem při vytváření dotazů na sémantickém webu. Pro sémantický web představuje tato technologie stejný nástroj jako pro relační databáze jazyk SQL.

Shrnutí

Informace na sémantickém webu jsou zapisovány pomocí technologií sémantického webu. Těch bylo v současné době vytvořeno již veliké množství a tento článek se omezuje jen na ty nejdůležitější a nejužívanější z nich.

Převážná většina technologií pro zápis informací na sémantickém webu je založena na značkovacím jazyku XML. Ten se však sám o sobě pro tyto účely nepoužívá, neboť umožňuje uživateli vytvářet si své vlastní značky a XML dokumenty tak nemusí být vždy čitelné ostatním softwarem či jinými uživateli.

Základní technologii pro vyjádření dat na sémantickém webu představuje technologie RDF. Zde se zavádí kódování pomocí RDF trojic a zároveň identifikování všech informací na sémantickém webu pomocí IRI, díky čemuž je zaručeno, že jednotlivé pojmy nejsou jen slova v dokumentu, ale jsou vázány k unikátní definici, kterou můžeme najít na webu. Přesto je RDF stále spíše základem pro pokročilejší technologie sémantického webu, jelikož stejně jako v XML si i zde uživatel zavádí své vlastní značky, které nemusí být pro ostatní čitelné. RDF je možné vyjádřit buď za pomoci orientovaných RDF grafů nebo značkovacího jazyka RDF/XML, jehož uživatelsky příjemnější alternativu přináší technologie TURTLE.

Sémantickým rozšířením RDF je RDF Schema (RDFS), které poskytuje mechanismy pro popis skupin souvisejících zdrojů a vztahů mezi těmito zdroji. RDFS zavádí omezené množství předdefinovaných tříd a vlastností, které je možné použít. Tyto třídy a vlastnosti jsou poměrně univerzální a dovolují zápis prakticky jakékoli informace, která se již stává čitelnou nejen pro tvůrce.

V současné době představuje asi nejvyužívanější a nejrozšířenější technologii sémantického webu OWL. Ten poskytuje oproti RDF další slovníky pro popis tříd a vlastností spolu s formální sémantikou. OWL přináší mnohem účinnější nástroj pro interpretabilitu informací na webu než předchozí technologie. Jedná se o pokročilejší jazyk, který již dovoluje definovat i různá omezení. Malou nevýhodou jazyka OWL je poměrně nepříjemný a složitý způsob zápisu jednotlivých informací.

Zvláštní postavení mezi technologiemi sémantického webu představuje dotazovací jazyk pro RDF SPARQL. Ten se stal výborným pomocníkem při vytváření dotazů na sémantickém webu. Pro sémantický web představuje tato technologie stejný nástroj jako pro relační databáze jazyk SQL.

Technologie typu RDFS či OWL mohou být použity pro zápis prakticky jakékoli informace na webu. Mimo takto univerzálních technologií však existují i technologie vhodné pouze pro některé skupiny uživatelů se specifickými požadavky či pro vyjádření pouze specifických informací. Některými z těchto technologií se bude zabývat článek o současnosti sémantického webu.

Použité zdroje:
  1. Berners-Lee, T., J. Hendler, and O. Lassila, The Semantic Web. Scientific American, 2001. 284(5): p. 34-+. ISBN: 0036-8733.
  2. Motejlková, A., Sémantický web, in Ikaros. 2011. Dostupné z adresy: http://www.ikaros.cz/node/7092.
  3. Extensible Markup Language (XML), W3C. Dostupné z adresy: http://www.w3.org/XML/.
  4. Extensible Markup Language (XML) 1.0 (Fifth Edition), T. Bray, et al., Editors. 2008, W3C. Dostupné z adresy: http://www.w3.org/TR/REC-xml/#dt-doctype.
  5. XML Schema, W3C. Dostupné z adresy: http://www.w3.org/XML/Schema.
  6. RELAX NG home page, M. Makoto, Editor. Dostupné z adresy: http://relaxng.org/.
  7. W3C, RDF Primer, F. Manola and E. Miller, Editors. 2004. Dostupné z adresy: http://www.w3.org/TR/rdf-primer/.
  8. Decker, S., et al., The semantic Web: The roles of XML and RDF. Ieee Internet Computing, 2000. 4(5): p. 63-74. ISBN: 1089-7801. DOI: 10.1109/4236.877487.
  9. Wielemaker, J., G. Schreiber, and B. Wielinga, Prolog-based infrastructure for RDF: Scalability and performance, in Semantic Web - Iswc 2003, D. Fensel, K. Sycara, and J. Mylopoulos, Editors. 2003. p. 644-658. ISBN: 3-540-20362-1. DOI: 10.1007/978-3-540-39718-2_41.
  10. Carroll, J.J., et al., Named graphs. Journal of Web Semantics, 2005. 3(4): p. 247-267. ISBN: 1570-8268. DOI: 10.1016/j.websem.2005.09.001.
  11. A Survey of RDF/Topic Maps Interoperability Proposals, S. Pepper, et al., Editors. 2006, W3C. Dostupné z adresy: http://www.w3.org/TR/rdftm-survey/.
  12. Beckett, D. and T. Berners-Lee, Turtle - Terse RDF Triple Language. 2008. Dostupné z adresy: http://www.w3.org/TeamSubmission/turtle/.
  13. RDF Primer — Turtle version F. Manola, et al., Editors. 2007, W3C. Dostupné z adresy: http://www.w3.org/2007/02/turtle/primer/.
  14. RDF Vocabulary Description Language 1.0: RDF Schema, D. Brickley and R.V. Guha, Editors. 2004, W3C. Dostupné z adresy: http://www.w3.org/TR/rdf-schema/.
  15. OWL Web Ontology Language Overview, D.L. McGuinness and F.v. Harmelen, Editors. 2004, W3C. Dostupné z adresy: http://www.w3.org/TR/owl-features/.
  16. OWL Web Ontology Language Guide, M.K. Smith, C. Welty, and D.L. McGuinness, Editors. 2004, W3C. Dostupné z adresy: http://www.w3.org/TR/owl-guide/.
  17. Bechhofer, S., et al., OWL Web Ontology Language Reference, M. Dean and G. Schreiber, Editors. 2004, W3C. Dostupné z adresy: http://www.w3.org/TR/owl-ref/.
  18. Horrocks, I., et al., OWL rules: A proposal and prototype implementation. Journal of Web Semantics, 2005. 3(1): p. 23-40. ISBN: 1570-8268. DOI: 10.1016/j.websem.2005.05.003.
  19. Motik, B., R. Studer, and U. Sattler, Query answering for OWL-DL with rules. Journal of Web Semantics, 2005. 3(1): p. 41-60. ISBN: 1570-8268. DOI: 10.1016/j.websem.2005.05.001.
  20. OWL 2 Web Ontology Language Profiles, B. Motik, et al., Editors. 2009, W3C.
  21. SPARQL Query Language for RDF, E. Prud'hommeaux and A. Seaborne, Editors. 2008, W3C. Dostupné z adresy: http://www.w3.org/TR/rdf-sparql-query/.
  22. Angles, R. and C. Gutierrez, The Expressive Power of SPARQL, in Semantic Web - Iswc 2008, A. Sheth, et al., Editors. 2008. p. 114-129. ISBN: 978-3-540-88563-4. DOI: 10.1007/978-3-540-88564-1_8.
  23. Perez, J., M. Arenas, and C. Gutierrez, Semantics and complexity of SPARQL, in Semantic Web - ISEC 2006, Proceedings, I. Cruz, et al., Editors. 2006. p. 30-43. ISBN: 3-540-49029-9. DOI: 10.1007/11926078_3.
  24. Quilitz, B. and U. Leser, Querying distributed RDF data sources with SPARQL, in Semantic Web: Research and Applications, Proceedings, S. Bechhofer, et al., Editors. 2008. p. 524-538. ISBN: 978-3-540-68233-2. DOI: 10.1007/978-3-540-68234-9_39.
Hodnocení: 
Průměr: 5 (hlasů: 3)
MOTEJLKOVÁ, Anna. Technologie sémantického webu. Ikaros [online]. 2011, ročník 15, číslo 10 [cit. 2024-11-14]. urn:nbn:cz:ik-13765. ISSN 1212-5075. Dostupné z: http://ikaros.cz/node/13765

automaticky generované reklamy
registration login password