+ All Categories
Home > Documents > Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak...

Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak...

Date post: 25-May-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
36
Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich Mynarz
Transcript
Page 1: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Jak číst a psát RDFReprezentace a zpracování znalostí na WWW, 1. 10. 2012

Jindřich Mynarz

Page 2: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

N3

RDF/XML

NTriplesTurtleRDFaJSON-LD

Serializace RDF

Page 3: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Serializace: NTriples<http://keg.vse.cz/resource/person/jindrich-mynarz><http://xmlns.com/foaf/0.1/knows> <http://keg.vse.cz/resource/person/vojtech-svatek> .

<http://keg.vse.cz/resource/person/jindrich-mynarz><http://xmlns.com/foaf/0.1/name> "Jind\u0159ich Mynarz" .

Page 4: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Serializace: Turtle@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix person: <http://keg.vse.cz/resource/person/> .

person:jindrich-mynarz foaf:knows person:vojtech-svatek .person:jindrich-mynarz foaf:name "Jindřich Mynarz" .

Page 5: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Serializace: RDF/XML<?xml version="1.0" encoding="utf-8"?><rdf:RDF

xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:person="http://keg.vse.cz/resource/person/"xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

<rdf:Description rdf:about="http://keg.vse.cz/resource/person/jindrich-mynarz"> <foaf:knows

rdf:resource="http://keg.vse.cz/resource/person/vojtech-svatek"/>

<foaf:name>Jindřich Mynarz</foaf:name></rdf:Description></rdf:RDF>

Page 6: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Převod mezi serializacemi RDF

● Serializace RDF jsou vzájemně převoditelné (isomorfické)

● Nástroje:○ Any23. http://any23.org/○ Raptor RDF parser. http://librdf.org/raptor/rapper.

html

Page 7: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Turtle

● Turtle = Terse RDF Triple Language● Textový formát RDF ve znakovém kódování

UTF-8, podmnožina serializace Notation 3● MIME type: text/turtle, přípona Turtle

souborů: .ttl● Hlavní užití

○ Manuální vytváření RDF○ Grafové vzory v jazyce SPARQL

● Specifikace Turtle má status W3C working draft (červenec 2012)

● Více na: http://www.w3.org/TR/turtle/

Page 8: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Prvky Turtle

1. URI2. Literál3. Blank node

Page 9: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Prvky Turtle: URI

Uniform Resource Identifier (resp. IRI - Internationalized Resource Identifier)

a. Absolutní URI: <http://example.com/uri>b. Relativní URI: <uri>

Page 10: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Prvky Turtle: Literál

● "Literál" nebo 'Literál'● """Víceřádkový

literál"""

● Anotace:○ Jazykový tag: "Literál"@cs○ Datový typ: "Literál"^^xsd:string

● Jednoduché literály:○ string: "Literál"○ integer: 12345○ double: 4.2E9○ decimal: -5.0○ boolean: true nebo false

Page 11: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Prvky Turtle: Blank node

● lokální, nepřenosný identifikátor zdroje○ _:identifikátorBlankNode

Page 12: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Další prvky Turtle

● Oddělovače○ Subjekt, predikát a objekt se oddělují bílými znaky○ Trojice, stejně jako věty, se oddělují tečkou

● Komentáře○ # komentář

Page 13: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: jmenné prostory

● Deklarace prefixů jmenných prostorů pomocí @prefix○ Přiřazení prefixu "rdf" k URI:

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

○ Užití pro kompaktní URI (CURIE):rdf:type■ rdf = prefix■ type = lokální jméno

○ Obvykle užívané prefixy - http://prefix.cc

Page 14: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: relativní URI

● Deklarace výchozího jmenného prostoru pomocí @base: ○ @base <http://example.com/> .○ Relativní URI <person> bude expandováno na

<http://example.com/person>

Page 15: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: list predikátů

List párů predikát-objekt oddělených středníkem (";"), které náleží k 1 subjektu.

Page 16: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: listy predikátů@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix kegperson: <http://keg.vse.cz/resource/person/> .

kegperson:jindrich-mynarzfoaf:knows kegperson:vojtech-svatek .kegperson:jindrich-mynarz foaf:name "Jindřich Mynarz" .

Page 17: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: listy predikátů@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix kegperson: <http://keg.vse.cz/resource/person/> .

kegperson:jindrich-mynarzfoaf:knows kegperson:vojtech-svatek ;

foaf:name "Jindřich Mynarz" .

Page 18: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: list objektů

List objektů oddělených čárkou (","), které náleží k 1 predikátu.

Page 19: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: list objektů@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix kegperson: <http://keg.vse.cz/resource/person/> .

kegperson:jindrich-mynarzfoaf:knows kegperson:vojtech-svatek .kegperson:jindrich-mynarzfoaf:knows kegperson:ondrej-svab-zamazal .

Page 20: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: list objektů@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix kegperson: <http://keg.vse.cz/resource/person/> .

kegperson:jindrich-mynarzfoaf:knows kegperson:vojtech-svatek ,

kegperson:ondrej-svab-zamazal .

Page 21: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: blank nodes@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix kegperson: <http://keg.vse.cz/resource/person/> .

kegperson:jindrich-mynarzfoaf:knows _:tomas-knap ._:tomas-knap foaf:name "Tomáš Knap" .

Page 22: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: blank nodes@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix kegperson: <http://keg.vse.cz/resource/person/> .

kegperson:jindrich-mynarzfoaf:knows [

foaf:name "Tomáš Knap" ] .

Page 23: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: kolekce@prefix owl: <http://www.w3.org/2002/07/owl#> .@prefix pc: <http://purl.org/procurement/public-contracts#> .@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

_:itemDomain owl:unionOf [ rdf:first pc:Contract ; rdf:rest [ rdf:first pc:Tender ; rdf:rest rdf:nil ]] .

Page 24: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: kolekce@prefix owl: <http://www.w3.org/2002/07/owl#> .@prefix pc: <http://purl.org/procurement/public-contracts#> .

_:itemDomain owl:unionOf (pc:Contract pc:Tender

) .

Page 25: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: rdf:type

rdf:type se zkracuje jako a ("is a" vztah)

Page 26: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: rdf:type@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix kegperson: <http://keg.vse.cz/resource/person/> .@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

kegperson:jindrich-mynarz rdf:type foaf:Person .

Page 27: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Zkracování: rdf:type@prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix kegperson: <http://keg.vse.cz/resource/person/> .@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

kegperson:jindrich-mynarz a foaf:Person .

Page 28: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Slabikář RDF

Page 29: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Česky

"Tim Berners-Lee mele maso."

Page 30: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

RDF graf

meleTim

Berners-Lee

"maso"

subjekt predikát objekt

Page 31: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

RDF trojice<http://example.com/lide/Tim-Berners-Lee> <http://example.com/akce/mele>"maso"@cs.

Page 32: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Prefixy@prefix akce: <http://example.com/akce/> .@prefix lide: <http://example.com/lide/> .

lide:Tim-Berners-Lee akce:mele "maso"@cs .

Page 33: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Relativní URI@base <http://example.com/> .@prefix akce: <akce/> .@prefix lide: <lide/> .

lide:Tim-Berners-Lee akce:mele "maso"@cs .

Page 34: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Cvičení: zkracování<http://www.w3.org/People/Berners-Lee/card#i> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person>.

Page 35: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Cvičení: zkracování<http://www.w3.org/People/Berners-Lee/card#i> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person>.<http://www.w3.org/People/Berners-Lee/card#i><http://xmlns.com/foaf/0.1/knows><http://richard.cyganiak.de/foaf.rdf#cygri>.<http://www.w3.org/People/Berners-Lee/card#i><http://xmlns.com/foaf/0.1/knows><http://mhausenblas.info/#i>.

Page 36: Jindřich Mynarz na WWW, 1. 10. 2012 Reprezentace a ...nb.vse.cz/~svatek/rzzw/Turtle.pdf · Jak číst a psát RDF Reprezentace a zpracování znalostí na WWW, 1. 10. 2012 Jindřich

Cvičení: zkracování<http://example.com/day1> <http://example.com/property/temperature>"-0.3"^^<http://www.w3.org/2001/XMLSchema#decimal>.


Recommended