SlideShare une entreprise Scribd logo
1  sur  150
Télécharger pour lire hors ligne
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
Dezvoltarea aplicațiilor Web
💡
modelarea datelor & cunoștințelor
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
“If you haven’t got a word for a concept,
you can’t think about it; if you don’t think about it,
you won’t invent a word for it.”
Sapir-Whorf Hypothesis
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
DIKW (Data, Information, Knowledge, Wisdom)
adaptare după S. Carpenter, 2008 și J. Liebowitz, 2012
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
Datele trebuie accesate independent de:
locație – fișier, sistem de management al bazelor de date
maniera de reprezentare
formatul de serializare
protocol de transmisie
sistemul de operare
aplicațiile ce „consumă” acele date
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
La ce mijloace intelectuale putem recurge
pentru a explica lumea în care trăim?
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
exemplu:
<section>
<p><a href="cv.html">CV-ul meu</a></p>
</section>
Eu, autorul
acestui marcaj!
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
întrebări
…privitoare la structură:
<a> este parte obligatorie din <p>? Ori altceva?
cv.html este (identifică) o resursă?
un obiect?
o clasă de obiecte?
un atribut?
o relație?
orice altceva?
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
întrebări
…referitoare la vocabular/meta-date:
<a> e similar cu <a> din HTML?
autorul marcajului este cel care l-a și publicat?
dacă da, când?
sub ce termeni privind drepturile de autor?
ce proprietăți specifice pot fi definite?
formalizat,
eventual
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
necesități
Existența unor instrumente intelectuale
facilitând înțelegerea lumii (cunoașterea umană)
via descrieri abstracte
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
necesități
Existența unor instrumente intelectuale
facilitând înțelegerea lumii (cunoașterea umană)
via descrieri abstracte
modele
Allemang & Hendler (2011) și Daum & Merten (2003)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele utilizate facilitează comunicarea
între (grupuri de) persoane
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele utilizate facilitează comunicarea
între (grupuri de) persoane
un model poate descrie un context specific
într-o manieră ce poate fi înțeleasă de anumite persoane

jargon – e.g., un vocabular de termeni specifici
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele utilizate facilitează comunicarea
între (grupuri de) persoane
colaborare mediată de înțelegerea similară
a unui fenomenpartajarea cunoașterii umane
unul dintre scopurile
primare ale Web-ului
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
factualfapte
 set of examples
 set of traces
 set of statements
conceptualconcepte
 taxonomies & typologies
 component systems
 hybrid conceptual systems
proceduralacțiuni
 series procedures
 parallel procedures
 interactive procedures
prescriptiverestricții
 definitions, norms & constraints
 laws & theories
 decision trees
 control rules
processes & methodspractici
 processes
 methods
 collaborative systems
o clasificare a
modelelor de cunoștințe
(knowledge models)
adaptare după G. Paquette, 2010
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele explică un anumit concept
și pot realiza predicții
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele explică un anumit concept
și pot realiza predicții
punând în relație un fenomen cu altele (similare)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele explică un anumit concept
și pot realiza predicții
punând în relație un fenomen cu altele (similare)
premisa realizării de interpretări specifice
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele mediază puncte de vedere diferite
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele mediază puncte de vedere diferite
un model poate oferi mijloacele necesare explorării
diferențelor dintre conceptualizările unor fapte
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele mediază puncte de vedere diferite
un model poate oferi mijloacele necesare explorării
diferențelor dintre conceptualizările unor fapte
facilitează înțelegerea unui anumit web
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele pot reprezenta generalizări convenabile
ale universului pe care-l modelează

abstractizări
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele pot reprezenta generalizări convenabile
ale universului pe care-l modelează
exemple:
modelul utilizatorului în interacțiunea om-calculator
modelul relațional al bazelor de date
modelul de comunicare în rețele de calculatoare
modelul computațional al unui sistem software
…
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
modelele facilitează structurarea unor „lucruri”
de interes dintr-un domeniu (web) complex
ce intervine în dezvoltarea unei aplicații
complexitate(privindstructura)
gradul de generalitate a modelării cunoștințelor domeniului
ontologie
lexicon
taxonomie
(clasificare)
vocabular
(nomenclatură)
folksonomie
după(KatrinWeller,2010)
Dr.SabinBuragaprofs.info.uaic.ro/~busacodupă(KatrinWeller,2010)
sisteme tradiționale
de organizare
a cunoștințelor
Web
social
Web
semantic
modelele facilitează structurarea unor „lucruri”
de interes dintr-un domeniu (web) complex
ce intervine în dezvoltarea unei aplicații
complexitate(privindstructura)
gradul de generalitate a modelării cunoștințelor domeniului
ontologie
lexicon
taxonomie
(clasificare)
vocabular
(nomenclatură)
folksonomie
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Semantica = atașarea un formalism
– ce explică „semnificația” unui concept –
la o construcție sintactică
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Semantica = atașarea un formalism
– ce explică „semnificația” unui concept –
la o construcție sintactică
exemplu: semantica limbajelor de programare
e.g., specificată via axiome logice ori algebre
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Semantica = atașarea un formalism
– ce explică „semnificația” unui concept –
la o construcție sintactică
în cazul limbajului natural, se referă la modalitatea de a
înțelege o apariție a unei construcții (litere și/sau sunete)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Oamenii/mașinile trebuie să utilizeze
în același mod cunoștințele
partajarea aceleași conceptualizări a informației
în cadrul unei comunități ori a unui web
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Necesitatea exprimarii (in)formale
a semanticii – meaning
relația (relation) dintre concepte
„pătrat” în relație cu „dreptunghi”
constrângerea/restricția (constraint)
„dreptunghi” constrâns la „pătrat”
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Necesitatea existenței
unui vocabular comun (familiar)
elementele sintactice – cuvintele, marcatorii etc. –
au același înțeles atât pentru transmițător,
cât și pentru destinatar
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Necesitatea existenței
unui set comun de constrângeri
exprimate formal, de dorit
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Necesitatea existenței
unui cadru conceptual prevalent
ce poate specifica relații între (clase de) informații
înțelegerea nu va fi influențată de
cunoștințele inițiale nespecificate
(unspecified background knowledge)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Implicitul nu poate fi citit/procesat
de către software
„moartea  proces biologic”
(posibilă interpretare realizată de un algoritm,
folosind cunoștințele expuse de o enciclopedie)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Informațiile de background – deseori, implicit
cunoscute de scriitorul/cititorul uman –
nu sunt accesibile pentru mașină
(Brewster, 2003)
exemple: articolele științifice, beletristica
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: entitate
Modelele comunicative umane se bazează pe limba
(maternă) și implică percepția relațiilor dintre entități
constatări
(observations)
persoane, locuri, documente, calendare, resurse multimedia,…
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: entitate
Entitate = „lucru” identificabil în mod distinct
pe baza unei semnificații (denotation)
și a unui conținut (connotation)
Kingsley Idehen, 2014
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: entitate
Identificarea unei entități se realizează
via un identificator – eventual, specificat de un standard
exemplificări uzuale: cod de bare, QR, UUID, URI
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: entitate
Descrierea unei entități e mijlocită de relații
(entity relationships) reprezentate într-o formă
reutilizabilă prin intermediul conținutului unui document
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: entitate
Descrierea unei entități e mijlocită de relații
(entity relationships) reprezentate într-o formă
reutilizabilă prin intermediul conținutului unui document
reprezentările relațiilor dintre entități
se bazează pe notații asociate unui limbaj specific
exemple: diagrame ER (Entity-Relation), tabele,
microdate HTML5, triple RDF
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: entitate
Specificarea descrierii unei entități date se realizează
prin intermediul unor propoziții (sentences)
și a unor afirmații (statements)
acestea sunt stocate – fizic și/sau electronic
(fișiere, pagini Web,…) – și transmise via formate de date
(textuale și/sau binare), de dorit deschise
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Observație:
lăsând oamenii să interpreteze semnificația unui model,
putem asista la proliferarea confuziei – vezi legislația
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele comune folosite de oameni
au – în general – un caracter informal
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele comune folosite de oameni
au – în general – un caracter informal
semnificația termenilor utilizați nu poate fi unic definită
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Modelele comune folosite de oameni
au – în general – un caracter informal
semnificația termenilor utilizați nu poate fi unic definită
exemplu: „explicarea” unor resurse recurgând exclusiv
la termeni de conținut (tag-uri) stabiliți de utilizator
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
diverse conotații pentru a desemna
(categorii de) fotografii oferite de Flickr
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
Cum pot fi adnotate manual resursele Web?
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
puncte de vedere
adnotarea automată a resurselor Web via modele formale
(abordare academică – full semantics)
versus
abordări pragmatice pe baza tehnologiile Web actuale
(punct de vedere al industriei – simple/vertical semantics)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Tag-urile definite de utilizator reprezintă
clasificări ad-hoc realizate de oameni,
partajate în cadrul unei comunități
context:
social bookmarking
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging – definiții
Bookmark
referință creată manual
ce vizează o resursă de interes
e.g., imagine, documentație, însemnare, multimedia,…
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging – definiții
Tag
(meta)dată simplă – termen arbitrar ales –
asociată extern unui obiect (unei resurse)
cu scopul de a identifica, sorta, agrega, regăsi etc.
acea resursă
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging – definiții
Aplicație de bookmarking
aplicație Web facilitând descoperirea de
conținuturi și persoane – resurse – de interes
pe baza tag-urilor partajate + bookmark-urilor existente
S. Braun, Social Semantic Bookmarking (2008)
www.slideshare.net/vzach/social-semantic-bookmarking-pakm-presentation
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Folksonomy = folk + taxonomy
“…is the result of personal free tagging of pages
and objects for one’s own retrieval”
Thomas Vander Wal, 2007
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Uzual, tagging-ul are loc într-un mediu social
legat de procesele cognitive
relevă echivalentul digital al „cărărilor dezirabile”
– desire lines (Merholz, 2004)
landscaping concept used on campus
for creating walk ways through the grass
www.cs.colorado.edu/~kena/classes/7818/f06/lectures/folksonomy.pdf
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Obiect
de
interes
Asocieri
mentale
multiple
(concepte)
t
t
t
t
tagging
tagging-ul reprezintă o modalitate particulară de adnotare
a resurselor electronice – digital content annotation
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
mental
reprezentare
(în limba maternă)
reprezentare
simbolică (grafică)
reprezentare
(în altă limbă)
reprezentare reprezentare
reprezentare
interpretare
interpretare
interpretare
“Apple”
pomme [FR]
mela [IT]
リンゴ [JP]
măr [RO]
adaptare după Gilbert Paquette (2010)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Tipuri de tag-uri (conform Sinha):
description
categorization
opinion
action
relation
insider reference
spam
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Tagging-ul are un caracter subiectiv
bazat pe limitele tag-urilor lingvistice
(i.e. vocabularul manipulat de un individ)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Feedback-ul propriu + feedback-ul social
Rashmi Sinha, 2006
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
tag-urile personale sunt mai memorabile
decât cele (strict) semantice – i.e. predefinite
https://github.com/topics
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Fiecare persoana este expertă
în propriul vocabular (set de termeni de conținut)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
RT @ontoligent Folksonomy is meta-data.
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Tagging-ul poate depinde și de context
(comunitatea de utilizatori)
design ≡ “visual design”
versus
design ≡ “software design”
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema lipsei preciziei – după (Happel et al., 2008)
jargon
plural – “inițiativă” versus “inițiative” [RO]
abrevieri – “SAX” versus “saxofon”
cuvinte compuse – “opensource” versus “open-source”
erori de redactare – “elephant” versus “elefant” [EN]
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema lipsei preciziei – după (Happel et al., 2008)
polisemie
semnificații multiple ale aceluiași tag
exemplificare:
“pasta” – as dish, “pasta” – as ingredient
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema lipsei preciziei – după (Happel et al., 2008)
omonimie
tag-uri care au înțelesuri multiple neînrudite
exemple: “book” [EN], „toc” [RO]
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema lipsei preciziei – după (Happel et al., 2008)
multilingvism
tag-uri cu semnificații diferite, în funcție de limbă
exemple:
„paste” – substantiv [RO] vs. “paste” – verb [EN]
“the” – articol hotărât [EN], “the” (« thé ») – substantiv [FR]
„bulgari” vs. „bulgari” („bulgări”) vs. „Bulgari” [RO]
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema lipsei preciziei – după (Happel et al., 2008)
sinonimie
același concept este referit prin termeni diferiți
exemplu: „design” versus „proiectare”
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema lipsei preciziei – după (Happel et al., 2008)
nepotriviri la nivel abstract
lipsa relațiilor (semantice) dintre tag-uri
la diverse niveluri de abstractizare
datorată intențiilor sau expertizei utilizatorilor
exemplificări:
„băutură” vs. „vin” vs. „Merlot” vs. „Merlot de Murfatlar”
„scriere” vs. „literatură” vs. „beletristică” vs. „nuvelă”
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Setul de tag-uri asociate resurselor Web de interes
are caracter dinamic
modelul de clasificare bazat pe tagging nu este rigid
(uzual, poate evolua)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Sistemele bazate pe tagging oferă suport pentru
organizarea informală a unui volum semnificativ
de informații eterogene existente pe Web
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Sistemele bazate pe tagging oferă suport pentru
organizarea informală a unui volum semnificativ
de informații eterogene existente pe Web
organizarea este informală,
deoarece interpretarea tag-urilor necesită
aportul utilizatorilor într-un context dat
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema asigurării interoperabilității
“interoperability with tagging systems”
(Peter Mika, 2006)
consistență
identificare viabilă
partajarea încrederii
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
musicbrainz.org/search?query=classical&type=tag&method=indexed
versus medium.com/tag/classical versus websta.me/tag/classical
???
???
???
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema privind tag spam-ul
rezolvări actuale:
manuale (bazate pe factorul uman), algoritmice, mixte
detalii în articolul N. Spirin, J. Han, “Survey on Web Spam Detection:
Principles and Algorithms”, SIGKDD Explorations 13 (2), 2011
http://kdd.org/exploration_files/V13-02-08-Spirin.pdf
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema privind tag spam-ul
detection-based methods
prevention-based methods
demotion-based methods
de studiat și P. Heymann, G. Koutrika, H. Garcia-Molina,
“Fighting Spam on Social Websites: A Survey of Approaches
and Future Challenges”, IEEE Internet Computing, 11 (6), 2007
http://ilpubs.stanford.edu:8090/818/
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Interacțiuni într-un sistem de social tagging:
salvare + asociere de tag-uri (tagging)
re-detectare (refinding)
clicking, pivoting, exploring
căutare – a propriilor tag-uri ori a altora
(în cadrul grupului de interes sau în general)
descoperire – eventual, întâmplătoare
interacțiune în cadrul grupului social
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Determinarea importanței
cine determină „tăria” semnificației tag-urilor:
aplicația, proprietarul sitului sau utilizatorul?
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Determinarea importanței
extragerea celor mai „semnificative” tag-uri (entități)
prin tehnici de prelucrare a limbajului natural
diverse soluții – uzual, doar pentru limba engleză:
AlchemyAPI, Bitext API, BracketPy, MeaningCloud,
OpenAmplify, OpenCalais, Semantria API
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
model conceptual
(specificat de un web)
via linked data
extragere de entități via AlchemyLanguage
oferit de IBM Watson
www.ibm.com/watson/developer/
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Determinarea „zgomotului”
detecția și eliminarea tag-urilor inutile:
dezambiguizare, facilități de căutare, spelling etc.
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Instagram: tag-uri populare
22 octombrie 2017
conform http://websta.me/
#love #instagood #photooftheday
#fashion #beautiful #happy #tbt #cute
#like4like #followme #picoftheday
#follow #me #selfie #summer
???
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
semantici
stabilite
de utilizatori
?
a se vizita tagdef.com și hashtags.org
tagging în contextul microblog-urilorhashtag analytics
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema vizualizării tag-urilor
adoptarea diverselor tehnici de vizualizare
e.g., tag clouds, clustering, semantic zoom
O. Kaser, D. Lemire, “Tag-Cloud Drawing: Algorithms for Cloud
Visualization”, WWW2007 Workshop on Tagging and Metadata
for Social Information Organization, 2007 – http://slidesha.re/cpkPLi
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema vizualizării tag-urilor
instrumente utile:
ngtagcloud – www.npmjs.com/package/ngtagcloud
TagCrowd – tagcrowd.com
WordCloud – github.com/jasondavies/d3-cloud
WordCloud2 – timdream.org/wordcloud2.js/
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema monitorizării dinamicii și
analizei evoluției tag-urilor
detalii în J. Lehmann et al., “Dynamical Classes of Collective Attention
in Twitter”, WWW2012 Conference, ACM Press, 2012
www2012.wwwconference.org/proceedings/proceedings/p251.pdf
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Problema clasificării resurselor (Sinha, 2006)
clasificările populare (folksonomies) sunt plate,
spre deosebire de taxonomii – ierarhii de concepte
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Sistemele de tagging reprezintă oamenii
care participă în cadrul acestora
puncte de vedere și perspective posibil limitate
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Pot apărea conflicte:
tag-urile folosite de experți diferă de cele ale novicilor
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Pot apărea conflicte:
grupurile de interes sunt mai focalizate
în ceea ce privește clasificarea mai bună a resurselor
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Pot apărea conflicte:
dificultăți în detectarea unui punct de vedere minoritar
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging – exemple de utilizare
social bookmarking: Evernote, Pocket
(micro-)blogging: Medium, Tumblr, Twitter, WordPress
multimedia: 500px, Flickr, Last.fm, Scribd, Vimeo
știri: Digg, Feedly, Reddit
e-business: Amazon, Lulu
știință: CiteULike, Connotea, myExperiment
sisteme de operare (fișiere): macOS, Windows
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Remarci:
“In essence tag systems mirror the PageRank structure of
Google’s system, but make the internal structures
browsable and viewable directly.”
Lee Iverson
FolkRank (A. Hotho et al., 2006)
www.kde.cs.uni-kassel.de/stumme/papers/2006/hotho2006folkrank.pdf
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Necesitatea existenței adnotărilor semantice
(semantic annotation) a resurselor Web
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: tagging
Necesitatea existenței adnotărilor semantice
(semantic annotation) a resurselor Web
utilizarea unui termen descris
pe baza unui model de specificare a cunoștințelor
e.g., relația sa cu alți termeni, indiferent de limba utilizată
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
studiu de caz:
determinarea și prezicerea
stării de spirit via tag-uri
asociate resurselor
muzicale (aici: Last.fm)
P. Saari, T. Eerola, “Semantic
Computing of Moods Based on Tags
in Social Media of Music”, IEEE
Transactions on Knowledge and Data,
2014 – arxiv.org/pdf/1308.1817.pdf
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
Putem recurge la modele formale?
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: formalizare
Explicarea și prezicerea unui fenomen necesită
modele având un grad mai mare de formalism
decât comunicarea umană
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: formalizare
Explicarea și prezicerea unui fenomen necesită
modele având un grad mai mare de formalism
decât comunicarea umană
explicarea unui fenomen îl pune în legătură
cu anumite „principii de bază” (first principles)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: formalizare
Explicarea și prezicerea unui fenomen necesită
modele având un grad mai mare de formalism
decât comunicarea umană
aceste principii (axiome, reguli) nu depind de o anumită
interpretare particulară umanăobiectivitate
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: formalizare
Formalismele – uzual, exprimate matematic –
oferă suport pentru realizarea predicțiilor
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: formalizare
Formalismele – uzual, exprimate matematic –
oferă suport pentru realizarea predicțiilor
utile în diverse contexte
precum e-business-ul
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: formalizare
Formalismele – uzual, exprimate matematic –
oferă suport pentru realizarea predicțiilor
exemplu (în cazul unui joc electronic):
explicarea – și prezicerea – traiectoriei unui obiect
via un model formal implicând concepte
ca forță, gravitație, viteză, masă descrise matematic
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: formalizare
Formalismul ne ajută să evaluăm
când un anumit model e aplicabil
formalismul (matematic) permite ca evaluarea
să fie independentă de factorii umani
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: formalizare
Formalismul ne ajută să evaluăm
când un anumit model e aplicabil
putem explica anumite aspecte ale Web-ului,
recurgând la diferite modele formale
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: exemple
Modelul diagramelor entitate-relație
Entity-Relation Model – E/R (Chen, 1976)
Semantic Object Modeling – SOM (Kroenke, 1995)
Unified Modeling Language – UML (OMG, 1997)
Higher Order Entity Relationship Model (Thalheim, 2000)
Asset-Oriented Model – AOM (Daum & Merten, 2003)
utilizare tipică: specificarea schemelor de baze de date
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: exemple
Posibile modele de date facilitate de un cadru conceptual:
Data (What) Activities (How)
Objectives/Scope
(Planner’s View)
List of things
important
to the enterprise
List of functions
the enterprise
performs
Enterprise Model
(Leadership’s View)
Language,
divergent
data model
Business process
model
Model of Fundamental
Concepts (Architect’s View)
Convergent
E/R model
Essential data
flow diagram
Technology Model
(Data Designer’s View)
Database
design
System design,
program structure
Detailed Representation
(Builder’s View)
Physical storage
design
Detailed program
design
David C. Hay, Data Model Patterns, Morgan Kaufmann, 2006
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: yql
Yahoo! Query Language
abstractizează accesul la surse de date eterogene
ce pot fi obținute via servicii Web
developer.yahoo.com/yql/
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: yql
Permite – pe baza unui limbaj similar SQL –
interogarea, filtrarea, combinarea datelor la nivel de Web
(suport pentru realizarea de mash-up-uri)
facilitează atașarea la aplicația Web dezvoltată
a surselor de date de interes:
fluxuri de știri, informații cartografice,
resurse multimedia etc.
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: yql
Adoptă o sintaxă SQL
show, desc, select, use, insert, update, delete
surse de date publice Yahoo! (built-in tables)
sau oferite de terți (community tables) – e.g., Amazon,
Apple, arXiv, Deviant Art, Europarliament, GitHub,
Last.fm, PayPal, Spotify, Steam, Tumblr, Yelp,…
răspunsul la o interogare ≡ rânduri (rows) de date
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
creații muzicale
oferite de iTunes
select * from apple.itunes
where term='Eclipse' and
media='music';
URL-ul corespunzător
cererii
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
Graph Query Language
“a query language for APIs and a runtime for fulfilling
those queries with your existing data”
graphql.org
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
Graph Query Language
declarativ
inspirat de JSON
strict (strong-typed)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
Graph Query Language
sunt permise interogări (queries) – operații de citire –
și actualizări (mutations) – operații de alterare a datelor
se oferă suport pentru a anticipa ce date
vor fi întoarse + structura acestora
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
Graph Query Language
răspunsul oferit include doar datele ce au fost solicitate
îmbunătățirea performanței la nivel de client
rezolvarea problemelor vizând over/under fetching
(preluare a mai multor sau prea puține date)
philsturgeon.uk/api/2017/01/24/graphql-vs-rest-overview/
nordicapis.com/is-graphql-the-end-of-rest-style-apis/
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
GraphQL ca alternativă la dezvoltarea de servicii via paradigma REST
GraphQL REST
entitate resursă resursă
format JSON
orice Media Type (MIME)
frecvent: JSON
protocol
HTTP – uzual, adoptă convenții
proprii
independent de protocol
(uzual, HTTP)
cine decide ce date
vor fi întoarse
clientul serverul
puncte terminale
(endpoints)
un singur punct terminal pentru
a oferi date conexe, dacă au fost
specificate relații între ele
puncte terminale multiple
(independente)
tipuri de date strong (tipuri declarate explicit)
weak (verificarea tipurilor
de date nu e obligatorie)
relație client-server fat client—fat server thin client—fat server
documentare autodescriptiv (self-describing)
necesită terțe soluții (e.g.,
OpenAPI Specification)
viziune
limbaj de interogare, specificație,
colecție de instrumente
stil arhitectural
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
Aspecte de considerat de către implementatori:
probleme de securitate
– e.g., autentificare, autorizare, refuz al serviciilor
suportul pentru caching trebuie oferit explicit
managementul versiunilor
blog.pusher.com/rest-versus-graphql/
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
Instrumente pentru dezvoltatori:
implementare de referință pentru server (Node.js)
GraphQL.js – graphql.org/graphql-js/
biblioteci disponibile pentru C, Go, Java, .NET,
PHP, Python, Ruby, Swift, Typescript,… – graphql.org/code/
resurse de interes: github.com/chentsulin/awesome-graphql
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
Instrumente pentru dezvoltatori:
de experimentat și Apollo – www.apollodata.com
suport la nivel de client (e.g., React, Vue) + server
pentru aplicații bazate pe React,
a se folosi Relay (Modern) – facebook.github.io/relay/
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
interogare interactivă cu GraphQL a API-ului
vizând „Războiul Stelelor” – graphql.org/swapi-graphql/
schemarezultateinterogare
variabilă
(parametru)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
exemple de interogări via GraphQL ale unor API-uri publice
(e.g., Giphy, Hacker News, Reddit): www.graphqlhub.com
în acest caz, Twitter
# primele 33 de mesaje (+meta-date vizând utilizatorii care le-au expus)
{
twitter {
search(q: "Web application development", count: 33, result_type: mixed)
{
user {
screen_name
name
followers_count
}
text
created_at
}
}
}
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de acces la date: graphql
testarea interactivă a API-ul GitHub
implementat via GraphQL
developer.github.com/v4/
conceptul Repository
(depozit de cod-sursă)
și proprietățile aferente
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model de
acces la dateServicii Web
model de calcul
Ofertant
de servicii de
telefonie mobilă
mash-up-uri la nivel
de dispozitiv mobil
model de implementare
model de interacțiune
model de acces la date – scenariu
adaptare după Tom Croucher
model de comunicare
model
al fluxului
de date
⚙
⚙
⚙
⚙
GraphQL
YQL
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: puncte de vedere
Web-ul având un caracter multidisciplinar,
modelele utilizate pot fi diferite
reprezentarea unei varietăți de opinii
(posibil, contradictorii)
care nu pot fi reconciliate la nivel global
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Necesitate:
o infrastructură oferind suport atât pentru
AAA (Anyone can say Anything about Any topic),
cât și pentru a media puncte de vedere diferite
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model
Necesitate:
o infrastructură oferind suport atât pentru
AAA (Anyone can say Anything about Any topic),
cât și pentru a media puncte de vedere diferite
partajarea + concilierea modelelor (in)formale utilizate
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: expresivitate
Fiecare model oferă un anumit nivel de expresivitate
exemplu: expresivități diferite ale modelelor
de specificare a unei molecule de apă
H2O H—O—H
H H
O
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: expresivitate
Modele cu niveluri de expresivitate și sintaxe diferite
rețea semantică (semantic network)
asociere de subiecte (topic map)
diagramă UML – Unified Modeling Language
graf conceptual (conceptual graph/structure)
graf RDF – Resource Description Framework
logica de ordin I (FOL – first-order logic)
adaptare după Sean Bechhofer
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: expresivitate
semantic network
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: expresivitate
topic map
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: expresivitate
UML (class) diagram
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: expresivitate
conceptual graph
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: expresivitate
RDF graph
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: expresivitate
Every programmer likes the Web.
(x) programmer (x) likes (x, Web)
You can fool some of the people all of the time.
(x) (t) (person (x) time (t))  canFool (x, t)
Tux is not human.
¬ human (Tux)
first-order logic
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
model: expresivitate
Limbajele de modelare conceptuală a resurselor
în contextul Web-ului semantic
au grade diferite de expresivitate
RDFRDFS (RDF Schema)SKOSOWL
detalii în
cursurile viitoare
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„noul” Web
În contextul Web-ului, scopul principal este
modelarea unei arii (domeniu) de cunoaștere
concepte primare – entități ori „lucruri” ale domeniului
relații între concepte
atribute/proprietăți (nume + valori) ale conceptelor
reguli de asociere privind concepte, relații, atribute
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
componente (servicii) tipice
ale unei aplicații aliniate
problematicilor Web-ului semantic
Kingsley Idehen,
Understanding Data (2014)
www.slideshare.net/kidehen/understanding-29894555
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„noul” Web – componente de bază
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„noul” Web
Faze privind evoluția:
1. infrastructura de bază (HTTP, RDF, OWL)
finalizată
www.w3.org/2013/data/
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„noul” Web
Faze privind evoluția:
2. formularea necesităților
de promovare + implementare
identificarea grupurilor de lucru relevante
atragerea comunităților de interes
(științe ale vieții, GIS – Geographical Information Systems,
ofertanți de bunuri digitale, guverne etc.)
+ intersecția Web-ului semantic cu alte tehnologii
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
viziunea stratificată privitoare la Semantic Web
(Tim Berners-Lee)
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„noul” Web
Semantic Web (Web of Data)
actualele „cărămizi” ale Web-ului semantic oferă
modalități de modelare conceptuală a resurselor
pentru a permite efectuarea de raționamente automate
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„noul” Web
Constituirea unei științe a Web-ului
(Science of the Web) – Berners-Lee et al., 2006
Web science = combinație între științe analitice
(e.g., biologia) și cele sintetice (computer science)
caracter inerent inter-disciplinar
www.webscience.org
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„noul” Web
“Web science is about more than modeling
the current Web. It is about engineering
new infrastructure protocols and
understanding the society that uses them,
and it is about the creation of
beneficial new systems.”
Tim Berners-Lee et al., Science, 313, august 2006
www.webscience.org/2016/08/26/creating-a-science-of-the-web-10th-anniversary/
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„concluzii”
“Creating an online digital ecosystem in which
knowledge, logic and presentation can all evolve
in a globe-spanning, self-organizing, peer to peer
system of Web servers which is also
the software substrate for
an emergent global collective intelligence.”
Shawn Murphy
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„concluzii”
It’s not the wires – it’s the computers

It’s not the computers – it’s the documents

It’s not the documents – it’s the things
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
„concluzii”
“The last level of abstraction is
the Web of real things,
built on top of the Web of documents,
which is in turn built on the network of computers.”
Tim Berners-Lee
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
rezumat
💡modelarea cunoștințelor – de la tagging la Web science
Dr.SabinBuragaprofs.info.uaic.ro/~busaco
episodul viitor: modelul de date RDF
Firebug Firefox
extinde
Mozilla
produsDe
produce
Deschis
areStatut
areStatut
Hadoop
Organizație
este
Apache
produce
este
Sabin
utilizează
Persoană
este
Lucene

Contenu connexe

Similaire à WADe 2017-2018 (4/12) Aspects regarding Data and Knowledge Modeling

WADe 2014—2015 (12/12): Semantic Web—Inginerie ontologică: Alinierea ontologi...
WADe 2014—2015 (12/12): Semantic Web—Inginerie ontologică: Alinierea ontologi...WADe 2014—2015 (12/12): Semantic Web—Inginerie ontologică: Alinierea ontologi...
WADe 2014—2015 (12/12): Semantic Web—Inginerie ontologică: Alinierea ontologi...Sabin Buraga
 
WADe 2017-2018 (7/12) Architecture of RDF-based Applications. Linked Open Dat...
WADe 2017-2018 (7/12) Architecture of RDF-based Applications. Linked Open Dat...WADe 2017-2018 (7/12) Architecture of RDF-based Applications. Linked Open Dat...
WADe 2017-2018 (7/12) Architecture of RDF-based Applications. Linked Open Dat...Sabin Buraga
 
WADe 2017-2018 (8/12) Modeling Vocabularies, Taxonomies, and Thesauri with RD...
WADe 2017-2018 (8/12) Modeling Vocabularies, Taxonomies, and Thesauri with RD...WADe 2017-2018 (8/12) Modeling Vocabularies, Taxonomies, and Thesauri with RD...
WADe 2017-2018 (8/12) Modeling Vocabularies, Taxonomies, and Thesauri with RD...Sabin Buraga
 
WADe 2017-2018 (11/12) Ontology Engineering: Knowledge Management. Methodolog...
WADe 2017-2018 (11/12) Ontology Engineering: Knowledge Management. Methodolog...WADe 2017-2018 (11/12) Ontology Engineering: Knowledge Management. Methodolog...
WADe 2017-2018 (11/12) Ontology Engineering: Knowledge Management. Methodolog...Sabin Buraga
 
CLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansamblu
CLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansambluCLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansamblu
CLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansambluSabin Buraga
 
WADe 2014—2015 (01/12): Dezvoltarea de aplicaţii Web: Concepte & viziune
WADe 2014—2015 (01/12): Dezvoltarea de aplicaţii Web: Concepte & viziuneWADe 2014—2015 (01/12): Dezvoltarea de aplicaţii Web: Concepte & viziune
WADe 2014—2015 (01/12): Dezvoltarea de aplicaţii Web: Concepte & viziuneSabin Buraga
 
Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Lo...
Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Lo...Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Lo...
Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Lo...Sabin Buraga
 
Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cun...
Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cun...Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cun...
Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cun...Sabin Buraga
 
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #1): Interacţiune Web...
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #1): Interacţiune Web...Dezvoltarea aplicaţiilor Web la nivel de client (cursul #1): Interacţiune Web...
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #1): Interacţiune Web...Sabin Buraga
 
WADe 2014—2015 (07/12): Semantic Web—Arhitectura aplicaţiilor RDF. Iniţiativa...
WADe 2014—2015 (07/12): Semantic Web—Arhitectura aplicaţiilor RDF. Iniţiativa...WADe 2014—2015 (07/12): Semantic Web—Arhitectura aplicaţiilor RDF. Iniţiativa...
WADe 2014—2015 (07/12): Semantic Web—Arhitectura aplicaţiilor RDF. Iniţiativa...Sabin Buraga
 
Dezvoltarea aplicatiilor orientate spre servicii Web. De la REST la mash-up-u...
Dezvoltarea aplicatiilor orientate spre servicii Web. De la REST la mash-up-u...Dezvoltarea aplicatiilor orientate spre servicii Web. De la REST la mash-up-u...
Dezvoltarea aplicatiilor orientate spre servicii Web. De la REST la mash-up-u...Sabin Buraga
 
Dezvoltarea aplicațiilor Web (7/12): Arhitectura aplicaţilor RDF. Linked Open...
Dezvoltarea aplicațiilor Web (7/12): Arhitectura aplicaţilor RDF. Linked Open...Dezvoltarea aplicațiilor Web (7/12): Arhitectura aplicaţilor RDF. Linked Open...
Dezvoltarea aplicațiilor Web (7/12): Arhitectura aplicaţilor RDF. Linked Open...Sabin Buraga
 
Dezvoltarea aplicațiilor Web (8/12): Modelarea taxonomiilor şi lexicoanelor c...
Dezvoltarea aplicațiilor Web (8/12): Modelarea taxonomiilor şi lexicoanelor c...Dezvoltarea aplicațiilor Web (8/12): Modelarea taxonomiilor şi lexicoanelor c...
Dezvoltarea aplicațiilor Web (8/12): Modelarea taxonomiilor şi lexicoanelor c...Sabin Buraga
 
WADe 2014—2015 (08/12): Semantic Web—Modelarea taxonomiilor şi lexicoanelor c...
WADe 2014—2015 (08/12): Semantic Web—Modelarea taxonomiilor şi lexicoanelor c...WADe 2014—2015 (08/12): Semantic Web—Modelarea taxonomiilor şi lexicoanelor c...
WADe 2014—2015 (08/12): Semantic Web—Modelarea taxonomiilor şi lexicoanelor c...Sabin Buraga
 
Web 2016 (07/13) Modelarea datelor. Extragerea datelor cu XPath. Validări XML...
Web 2016 (07/13) Modelarea datelor. Extragerea datelor cu XPath. Validări XML...Web 2016 (07/13) Modelarea datelor. Extragerea datelor cu XPath. Validări XML...
Web 2016 (07/13) Modelarea datelor. Extragerea datelor cu XPath. Validări XML...Sabin Buraga
 
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #3): Design Web. Inte...
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #3): Design Web. Inte...Dezvoltarea aplicaţiilor Web la nivel de client (cursul #3): Design Web. Inte...
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #3): Design Web. Inte...Sabin Buraga
 
Web 2016 (06/13) Modelarea datelor. Familia XML + spații de nume
Web 2016 (06/13) Modelarea datelor. Familia XML + spații de numeWeb 2016 (06/13) Modelarea datelor. Familia XML + spații de nume
Web 2016 (06/13) Modelarea datelor. Familia XML + spații de numeSabin Buraga
 
CLIW 2014—2015 (5/12): Vizualizarea datelor
CLIW 2014—2015 (5/12): Vizualizarea datelorCLIW 2014—2015 (5/12): Vizualizarea datelor
CLIW 2014—2015 (5/12): Vizualizarea datelorSabin Buraga
 
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...Sabin Buraga
 
WADe 2017-2018 (1/12) Web Application Development: Concepts & Vision
WADe 2017-2018 (1/12) Web Application Development: Concepts & VisionWADe 2017-2018 (1/12) Web Application Development: Concepts & Vision
WADe 2017-2018 (1/12) Web Application Development: Concepts & VisionSabin Buraga
 

Similaire à WADe 2017-2018 (4/12) Aspects regarding Data and Knowledge Modeling (20)

WADe 2014—2015 (12/12): Semantic Web—Inginerie ontologică: Alinierea ontologi...
WADe 2014—2015 (12/12): Semantic Web—Inginerie ontologică: Alinierea ontologi...WADe 2014—2015 (12/12): Semantic Web—Inginerie ontologică: Alinierea ontologi...
WADe 2014—2015 (12/12): Semantic Web—Inginerie ontologică: Alinierea ontologi...
 
WADe 2017-2018 (7/12) Architecture of RDF-based Applications. Linked Open Dat...
WADe 2017-2018 (7/12) Architecture of RDF-based Applications. Linked Open Dat...WADe 2017-2018 (7/12) Architecture of RDF-based Applications. Linked Open Dat...
WADe 2017-2018 (7/12) Architecture of RDF-based Applications. Linked Open Dat...
 
WADe 2017-2018 (8/12) Modeling Vocabularies, Taxonomies, and Thesauri with RD...
WADe 2017-2018 (8/12) Modeling Vocabularies, Taxonomies, and Thesauri with RD...WADe 2017-2018 (8/12) Modeling Vocabularies, Taxonomies, and Thesauri with RD...
WADe 2017-2018 (8/12) Modeling Vocabularies, Taxonomies, and Thesauri with RD...
 
WADe 2017-2018 (11/12) Ontology Engineering: Knowledge Management. Methodolog...
WADe 2017-2018 (11/12) Ontology Engineering: Knowledge Management. Methodolog...WADe 2017-2018 (11/12) Ontology Engineering: Knowledge Management. Methodolog...
WADe 2017-2018 (11/12) Ontology Engineering: Knowledge Management. Methodolog...
 
CLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansamblu
CLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansambluCLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansamblu
CLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansamblu
 
WADe 2014—2015 (01/12): Dezvoltarea de aplicaţii Web: Concepte & viziune
WADe 2014—2015 (01/12): Dezvoltarea de aplicaţii Web: Concepte & viziuneWADe 2014—2015 (01/12): Dezvoltarea de aplicaţii Web: Concepte & viziune
WADe 2014—2015 (01/12): Dezvoltarea de aplicaţii Web: Concepte & viziune
 
Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Lo...
Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Lo...Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Lo...
Dezvoltarea aplicațiilor Web (10/12): Specificarea ontologiilor via OWL 2. Lo...
 
Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cun...
Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cun...Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cun...
Dezvoltarea aplicațiilor Web (11/12): Inginerie ontologică: Management de cun...
 
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #1): Interacţiune Web...
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #1): Interacţiune Web...Dezvoltarea aplicaţiilor Web la nivel de client (cursul #1): Interacţiune Web...
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #1): Interacţiune Web...
 
WADe 2014—2015 (07/12): Semantic Web—Arhitectura aplicaţiilor RDF. Iniţiativa...
WADe 2014—2015 (07/12): Semantic Web—Arhitectura aplicaţiilor RDF. Iniţiativa...WADe 2014—2015 (07/12): Semantic Web—Arhitectura aplicaţiilor RDF. Iniţiativa...
WADe 2014—2015 (07/12): Semantic Web—Arhitectura aplicaţiilor RDF. Iniţiativa...
 
Dezvoltarea aplicatiilor orientate spre servicii Web. De la REST la mash-up-u...
Dezvoltarea aplicatiilor orientate spre servicii Web. De la REST la mash-up-u...Dezvoltarea aplicatiilor orientate spre servicii Web. De la REST la mash-up-u...
Dezvoltarea aplicatiilor orientate spre servicii Web. De la REST la mash-up-u...
 
Dezvoltarea aplicațiilor Web (7/12): Arhitectura aplicaţilor RDF. Linked Open...
Dezvoltarea aplicațiilor Web (7/12): Arhitectura aplicaţilor RDF. Linked Open...Dezvoltarea aplicațiilor Web (7/12): Arhitectura aplicaţilor RDF. Linked Open...
Dezvoltarea aplicațiilor Web (7/12): Arhitectura aplicaţilor RDF. Linked Open...
 
Dezvoltarea aplicațiilor Web (8/12): Modelarea taxonomiilor şi lexicoanelor c...
Dezvoltarea aplicațiilor Web (8/12): Modelarea taxonomiilor şi lexicoanelor c...Dezvoltarea aplicațiilor Web (8/12): Modelarea taxonomiilor şi lexicoanelor c...
Dezvoltarea aplicațiilor Web (8/12): Modelarea taxonomiilor şi lexicoanelor c...
 
WADe 2014—2015 (08/12): Semantic Web—Modelarea taxonomiilor şi lexicoanelor c...
WADe 2014—2015 (08/12): Semantic Web—Modelarea taxonomiilor şi lexicoanelor c...WADe 2014—2015 (08/12): Semantic Web—Modelarea taxonomiilor şi lexicoanelor c...
WADe 2014—2015 (08/12): Semantic Web—Modelarea taxonomiilor şi lexicoanelor c...
 
Web 2016 (07/13) Modelarea datelor. Extragerea datelor cu XPath. Validări XML...
Web 2016 (07/13) Modelarea datelor. Extragerea datelor cu XPath. Validări XML...Web 2016 (07/13) Modelarea datelor. Extragerea datelor cu XPath. Validări XML...
Web 2016 (07/13) Modelarea datelor. Extragerea datelor cu XPath. Validări XML...
 
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #3): Design Web. Inte...
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #3): Design Web. Inte...Dezvoltarea aplicaţiilor Web la nivel de client (cursul #3): Design Web. Inte...
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #3): Design Web. Inte...
 
Web 2016 (06/13) Modelarea datelor. Familia XML + spații de nume
Web 2016 (06/13) Modelarea datelor. Familia XML + spații de numeWeb 2016 (06/13) Modelarea datelor. Familia XML + spații de nume
Web 2016 (06/13) Modelarea datelor. Familia XML + spații de nume
 
CLIW 2014—2015 (5/12): Vizualizarea datelor
CLIW 2014—2015 (5/12): Vizualizarea datelorCLIW 2014—2015 (5/12): Vizualizarea datelor
CLIW 2014—2015 (5/12): Vizualizarea datelor
 
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
 
WADe 2017-2018 (1/12) Web Application Development: Concepts & Vision
WADe 2017-2018 (1/12) Web Application Development: Concepts & VisionWADe 2017-2018 (1/12) Web Application Development: Concepts & Vision
WADe 2017-2018 (1/12) Web Application Development: Concepts & Vision
 

Plus de Sabin Buraga

Web 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturaleWeb 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturaleSabin Buraga
 
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni WebWeb 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni WebSabin Buraga
 
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie WebWeb 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie WebSabin Buraga
 
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP Sabin Buraga
 
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...Sabin Buraga
 
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object ModelWeb 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object ModelSabin Buraga
 
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...Sabin Buraga
 
Web 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma RESTWeb 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma RESTSabin Buraga
 
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...Sabin Buraga
 
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...Sabin Buraga
 
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţialeWeb 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţialeSabin Buraga
 
STAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor WebSTAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor WebSabin Buraga
 
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţialeSTAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţialeSabin Buraga
 
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.Sabin Buraga
 
STAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.jsSTAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.jsSabin Buraga
 
STAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului WebSTAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului WebSabin Buraga
 
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uriSTAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uriSabin Buraga
 
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScriptSTAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScriptSabin Buraga
 
STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5Sabin Buraga
 
STAW 09/12: Programare Web. API-uri JavaScript în contextul HTML5 (I)
STAW 09/12: Programare Web. API-uri JavaScript în contextul HTML5 (I)STAW 09/12: Programare Web. API-uri JavaScript în contextul HTML5 (I)
STAW 09/12: Programare Web. API-uri JavaScript în contextul HTML5 (I)Sabin Buraga
 

Plus de Sabin Buraga (20)

Web 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturaleWeb 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturale
 
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni WebWeb 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
 
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie WebWeb 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
 
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
 
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
 
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object ModelWeb 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
 
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
 
Web 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma RESTWeb 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma REST
 
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
 
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
 
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţialeWeb 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
 
STAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor WebSTAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor Web
 
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţialeSTAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
 
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
 
STAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.jsSTAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.js
 
STAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului WebSTAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului Web
 
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uriSTAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
 
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScriptSTAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
 
STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5
 
STAW 09/12: Programare Web. API-uri JavaScript în contextul HTML5 (I)
STAW 09/12: Programare Web. API-uri JavaScript în contextul HTML5 (I)STAW 09/12: Programare Web. API-uri JavaScript în contextul HTML5 (I)
STAW 09/12: Programare Web. API-uri JavaScript în contextul HTML5 (I)
 

WADe 2017-2018 (4/12) Aspects regarding Data and Knowledge Modeling