Upload
sabin-buraga
View
98
Download
3
Embed Size (px)
Citation preview
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Dezvoltarea aplicațiilor Web
<⊷>date structurate în cadrul documentelor HTML
RDFa – declarații de triple RDF în paginile Web
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
„Dacă poți acorda ajutor, ajută-i pe ceilalți.Dacă nu poți, măcar nu-i deranja.”
Dalai Lama
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Folosind modelul RDF (subiect, predicat, obiect),n-am putea include triplele RDF în paginile Web?
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Specificarea construcțiilor RDF direct în (X)HTMLRDFa
reprezintă un alt format de serializare a modelului RDF
RDF + HTML = RDFa
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
recomandări ale Consorțiului Web
RDFa 1.0 (2008)RDFa 1.1 (2012 – ediția 1; 2013 – ediția 2; 2015 – ediția 3)
www.w3.org/TR/rdfa-core
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
„punte” între Web-ul social și Web-ul datelor
www.w3.org/TR/rdfa-primer/
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
utilizarea unor atribute HTML specifice menite a modeladatele disponibile într-o pagină Web
în vederea procesării acestora de către un program
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
minimal, se pot utiliza atributeleprecizate de recomandarea RDFa Lite 1.1 (W3C, 2015)
www.w3.org/TR/rdfa-lite/
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
vocab – desemnează URL-ul vocabularului de date (modelului conceptual) adoptat
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
vocab – desemnează URL-ul vocabularului de date (modelului conceptual) adoptat
exemplificări:scheme de date HTML5 – http://schema.org/
specificațiile DCMI, FOAF, SIOC,…diverse vocabulare deschise – http://vocab.org/
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
studiu de caz: BIO – vocabular privind biografia unei persoane
http://vocab.org/bio/
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
typeof – precizează un tip de date (clasă de „lucruri”)
exemple:Event
Person
Product
etc.
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
property – specifică o proprietate asociată tipului de date
e.g., pentru tipul Event sunt definite proprietățileduration, location, startDate, endDate, performers,…
(conform http://schema.org/Event)
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
resource – indică un identificator de resursă (subiectul)despre care se „vorbește” în termeni de meta-date
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa
prefix – desemnează prefixul unui vocabular specific,facilitând referirea acestuia
e.g., rdf pentru RDF, rdfa – RDFa, xsd – XML Schema
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
lista prefixelor predefinite:https://www.w3.org/2011/rdfa-context/rdfa-1.1
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Exemplu recurgând la vocabularul schema.org
adaptare după (Manu Sporny, 2012)
<p vocab="http://schema.org/" typeof="Person"
resource="#tux">
Salut, eu sunt
<span property="name">Tuxy Pinguinnesscool</span>
și vă invit să vizitați
<a property="url" href="http://tux.info/"
title="Situl lui Tuxy">situl meu</a>.
</p>
adnotare explicită direct în HTML: resursa identificată cu tux este o persoană având atașate
un nume și o adresă Web a sitului personal
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Exemplu recurgând la vocabularul schema.org
adaptare după (Manu Sporny, 2012)
<p vocab="http://schema.org/" typeof="Person"
resource="#tux">
Salut, eu sunt
<span property="name">Tuxy Pinguinnesscool</span>
și vă invit să vizitați
<a property="url" href="http://tux.info/"
title="Situl lui Tuxy">situl meu</a>.
</p>
@prefix s: <http://schema.org/> .
:tux rdf:type s:Person ;
s:name "Tuxy Pinguinnesscool" ;
s:url <http://tux.info/> .
aserțiunile RDF echivalente
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Exemplu: modelarea grafului social al unui utilizatorpe baza vocabularului FOAF (Friend Of A Friend)
<div vocab="http://xmlns.com/foaf/0.1"><div resource="#busaco" typeof="Person"><a property="url" href="http://purl.org/net/busaco">
<span property="name">Sabin Buraga</span></a> îi are drept cunoscuți pe
<a property="knows" href="#alecsandru">Alecsandru</a> și <a property="knows" href="#blankdots">Ștefan</a>.
</div><p resource="#alecsandru" typeof="Person">
<span property="name">Alecsandru Grigoriu</span></a> </p>…
</div>
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
date adnotatesemantic via RDFa
triplele RDF extrase
redareaconținutului
marcat
http://rdfa.info/play/un instrument Web de editare și vizualizare a construcțiilor RDFa
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
graful RDF corespunzător
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Exemplu: specificarea „punctajului” dat unei resurse(adnotare semantică via review vocabulary de la Google)
<div xmlns:v="http://rdf.data-vocabulary.org/#" typeof="v:Review"><span rel="v:itemreviewed">
<span about="urn:ISBN:978-973-46-0249-0" typeof="bib:book">Titlu: <span property="v:name" xml:lang="ro">Tehnologii XML</span></span>
</span>Evaluare: <span property="v:rating" content="5">*****</span><span property="v:summary">…</span>
</div>
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa transformă o pagină Web într-un API
acces la date structurate – „purtând” un înțeles –, nu doar la conținut textual
(things, not strings)
rdfa.info
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
RDFa transformă o pagină Web într-un API
diverse biblioteci/module de prelucrare:clj-rdfa (Closure), EasyRDF (PHP), librdfa (C),Green Turtle (JavaScript), PyRDFa (Python),
quadstore (Node.js), semargl (Java), vie (Node.js)
http://rdfa.info/dev/
vezi și www.w3.org/community/rdfjs/wiki/Comparison_of_RDFJS_libraries
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Diverse studii de caz privitoare la RDFa?
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
rNews
model conceptual vizând includerea de meta-date din domeniul publicațiilor
(e.g., știri, articole, periodice) în documentele HTML
standard IPTC (International Press Telecommunications Council)
https://iptc.org/standards/rnews/
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
rNews
se bazează pe microdate HTML5 și/sau RDFa
detalii în prezentarea E. Sandhaus, S. Myles & A. Gebhard,“The State of rNews”, Semantic Technology & Business
Conference, San Francisco (2012)
https://speakerdeck.com/u/agebhard/p/the-state-of-rnews
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Generarea de construcții RDFape baza editorului on-line RDFaCE
abordare WYSIWYG (What You See Is What You Get)
generează reprezentări RDFa – inclusiv rNews
recurge la API-uri de adnotare a conținutului textual(e.g., Alchemy, Ontos, DBpedia)
disponibil și ca extensie pentru WordPress
http://aksw.org/Projects/RDFaCE.html
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Generarea de constructii RDFape baza editorului on-line RDFaCE
A. Khalili, S. Auer & D. Hladky (2012)
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
rdf: utilizari – rdfa
extragerea cu instrumentul RDFa 1.1 Distiller and Parser a triplelor RDF dintr-un document HTML ce include RDFa
http://www.w3.org/2012/pyRdfa/Overview.html
aici, o resursă Web oferită de publicația Telegraph
URL-ul resursei conținând (meta-)date exprimate prin RDFa
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
rdf: utilizari – rdfa
pe baza construcțiilor RDFa specificate în codul HTML, sunt extrase date RDF disponibile în format Turtle
în acest caz, se recurge la vocabularul OGP (Open GraphProtocol) utilizat de Facebook – http://ogp.me/
@prefix og: <http://opengraphprotocol.org/schema/> .
<http://www.telegraph.co.uk/science/2016/11/06/forgotten-oil-painting-could-be-
lost-raphael-as-scientists-date/>
og:description "When collector Stephen Hibberts discovered..."@en-gb ;
og:image "http://www.telegraph.co.uk/content/...6f62EI5U.jpg" ;
og:site_name "The Telegraph"@en-gb;
og:title "Forgotten oil painting could be lost Raphael,
as scientists date it to 16th century…"@en-gb;
og:type "article"@en-gb;
og:url "http://www.telegraph.co.uk/...forgotten-oil-painting.../"@en-gb .
subiect
predicat
obiect
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
rdf: utilizari – rdfa
extensia de browser OpenLink Structured Data Sniffer poate extrage și construcții RDFa
aici, cunoștințe modelate cu vocabularele Dublin Core Terms, FOAF, OGP și SIOC
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
coAserțiunile RDFa sunt indexate de motoarele de căutare
Bing Webmasterhttp://tinyurl.com/b9mx2f2
Google Structured Datadevelopers.google.com/structured-data/
Yahoo! BOSS (Build your Own Search Service)http://developer.yahoo.com/search/boss/
Yandex Semantic Markup Validatorhttps://webmaster.yandex.com/microtest.xml
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
Crawl Date October 2016
Total Data 56 TB (compressed)
Parsed HTML URLs 3,181,199,447
URLs with Triples 1,242,727,852
Domains in Crawl 34,076,469
Domains with Triples 5,638,796
Typed Entities 9,590,731,005
Triples 44,242,655,138
statistici oferite de Web Data Commons
webdatacommons.org/structureddata/
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
microformate↔microdate↔RDFa
Microformatele pot fi exprimatevia microdate HTML care, la rândul lor,
pot avea asociate construcții RDF(a)
a se parcurge și articolul lui Manu Sporny, „Mythical Differences: RDFa Lite vs. Microdata” (2012):
http://manu.sporny.org/2012/mythical-differences/
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
microformate↔microdate↔RDFa
Cel mai expresiv – general – model este RDF(a)
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
<li class="conference" itemscope="" itemid="/2016/oscon/"
itemtype="http://schema.org/SocialEvent
http://schema.org/BusinessEvent http://schema.org/EducationEvent">
<h2><a itemprop="url" href="/2016/oscon/">
<span itemprop="name">OSCON 2016</span></a></h2>
<p itemprop="location" itemscope="" itemid="/places/london/"
itemtype="http://schema.org/Place">
<span itemprop="name">
<a href="https://www.wikidata.org/wiki/Q145">UK</a> in
<a itemprop="url"
href="https://www.wikidata.org/wiki/Q84">London</a></span></p>
<p class="date">
<time itemprop="startDate" datetime="2016-10-17">17</time> –
<time itemprop="endDate" datetime="2016-10-19">19 Oct.</time>
</p>
...
</li>modelarea unui eveniment via microdate HTML5,pe baza schemelor de date oferite de schema.org
adaptare după Jeni Tennison (2011)
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
@prefix s: <http://schema.org/>
</2016/oscon/> a s:SocialEvent , s:BusinessEvent ,
s:EducationEvent ;
s:url <http://lanyrd.com/2016/oscon/> ;
s:name "OSCON 2016" ;
s:location </places/london/> ;
s:startDate "2016-10-17"^^xsd:date ;
s:endDate "2016-10-19"^^xsd:date .
</places/london/> a s:Place ;
s:url <https://www.wikidata.org/wiki/Q84> ;
s:name "London (UK)" .
construcțiile RDF (în format Turtle) echivalente pe baza asocierilor (mappings) realizate – Jeni Tennison, 2011
referire la resurse (entități) Wikidata
precizare explicită a tipului de date
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
datele RDFa verificate și extrase via instrumentul WebStructured Data linter – http://linter.structured-data.org/
detalii de interes la www.structured-data.org
de revăzut cele discutate la curs
Dr.
Sab
in B
ura
ga
profs.in
fo.uaic.ro/~busa
co
rezumat
<⊷>RDFa: specificarea triplelor RDF direct în HTML