full-stack web developmentbusaco/teach/courses/... · necesitatea folosirii sistemelor de baze de...

165
Dr. Sabin Buragaprofs.info.uaic.ro/~busaco (re)găsirea resurselor Web de la motoare de căutare și SEO la date structurate searchcode.com Full-Stack Web Development Dr. Sabin Corneliu Buraga – profs.info.uaic.ro/~busaco/

Upload: others

Post on 31-Jan-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    (re)găsirea resurselor Webde la motoare de căutare și SEO la date structurate

    sear

    chco

    de.

    com

    Full-Stack Web Development

    Dr. Sabin Corneliu Buraga – profs.info.uaic.ro/~busaco/

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    “A well-defined problem is half solved.”

    Michael Osborne

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Ce activități realizează un motor de căutare?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Scop:localizarea resurselor existente pe Web

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Scop:localizarea resurselor existente pe Web

    conținut textual

    documente Web, știri, comentarii, cod-sursă,însemnări în cadrul aplicațiilor Web sociale etc.

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Scop:localizarea resurselor existente pe Web

    conținut multimedia

    imagini (fotografii, diagrame, ilustrații), audio, video, prezentări,… (în formă fizică și/sau electronică

    – gratuite ori comerciale)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Scop:localizarea resurselor existente pe Web

    entități

    persoane, organizații, evenimente, cunoaștere (cărți, software), de interes personal/social

    (bunuri reale/digitale – produse și/sau servicii),…

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Tipuri de căutări – maniera tradițională:

    pe bază de indecși

    explorare a Web-ului (crawling) +prelucrarea conținutului textual (indexing)

    Lycos – 1994 (Carnegie Mellon University)AltaVista – 1995 (Digital Equipment Corporation)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Tipuri de căutări – maniera tradițională:

    pe baza ierarhiilor de termeni(servicii de tip catalog – topic directory, taxonomii)

    Yahoo! – Yet Another Hierarchical Officious Oracle1994 (Stanford)

    Jerry and David’s guide to the World Wide Web

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Tipuri de căutări – maniera tradițională:

    hibrideindecși + taxonomiiportal Web

    Excite – 1994 (inițial Architext – Stanford)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Tipuri de căutări – maniera tradițională:

    pe baza legăturilor hipertext(hyperlink analysis)

    Google – 1996 (inițial BackRub – Stanford)

    vezi și S. Buraga, „Căutarea resurselor Web” (2016)www.slideshare.net/busaco/sabin-buraga-cutarea-resurselor-web

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Un motor de căutare trebuie să satisfacănevoia de informații a utilizatorului

    (user information-seeking)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Caracteristici ale unui motor de căutare ideal

    scop

    căutarea oricărei resurse existente

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Caracteristici ale unui motor de căutare ideal

    viteză

    rezultatele să fie disponibile imediat

    direcție de interes major: real-time Web search

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Caracteristici ale unui motor de căutare ideal

    disponibilitate

    actualizarea permanentă(orice modificare să fie indexată „instantaneu”)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Caracteristici ale unui motor de căutare ideal

    „reamintire” – recall

    găsirea tuturor resurselor relevantepentru o cerere dată

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Caracteristici ale unui motor de căutare ideal

    precizie

    rezultatul conține doar resurse relevante

    prezent: recurgerea la tehnici din inteligența artificială

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Caracteristici ale unui motor de căutare ideal

    categorisire eficientă – ranking

    cele mai relevante resurse Websunt plasate primele

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Care sunt principalele componenteale unui motor de căutare?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    coRobot Webextrage informații

    Index (catalog)stochează – în mod persistent – (meta)date

    despre resursele existente pe Web

    Mecanism de evaluare (ranking)pe baza cererii utilizatorului,

    oferă răspunsuri – de dorit, utile

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    structura generică a unui motor de căutare (Chakrabarti, 2003)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Preluarea + indexarea resurselor se pot realiza:

    automat – via roboți Webmanual – recurgând la experți umani

    hibrid

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Preluarea și indexarea resurselor

    strategii:natura datelor/relațiilor (data/relation mining)

    detectarea subiectului conținutului (topic distillation)

    meta-date – date descriind date (e.g., doar însemnări ca replici la alte mesaje)

    căutare socială (tag-uri, anturaj, aplicații Web sociale)

    context (e.g., localizare geografică, timp, dispozitiv)

    profil al utilizatorului – personalizare(e.g., istoric al căutărilor, preferințe lingvistice)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Am putea recurge la extragerea automatăa datelor expuse pe Web?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Roboți

    programe ce traversează automat Web-ul,cu scopul de a extrage date

    spiders, crawlers, Web bots

    robot Web navigator Web

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Roboți

    pornind de la un URL, realizează o conexiune HTTPla un server Web, pentru a întreprinde anumiteacțiuni privitoare la reprezentarea unei resurse– uzual, HTML – și, recursiv, din toate resursele

    (documentele) desemnate de legăturile existenteîn cadrul reprezentării

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Roboți

    pornind de la un URL, realizează o conexiune HTTPla un server Web, pentru a întreprinde anumiteacțiuni privitoare la reprezentarea unei resurse– uzual, HTML – și, recursiv, din toate resursele

    (documentele) desemnate de legăturile existenteîn cadrul reprezentării

    acțiuni: extrage de date, copiere, agregare de conținut, monitorizare, realizare a unui rezumat etc.

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: pericole

    Operarea în foc rapid (rapid-fire)

    trafic de rețea

    supraîncărcarea serverelor Webdenial of service

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: pericole

    Actualizarea cu întârziere a bazelor de dateale motoarelor de căutare

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: pericole

    Actualizarea cu întârziere a bazelor de dateale motoarelor de căutare

    necesitatea specificării timpului de revizitare a situluide către robotul Web

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: pericole

    Exploatarea (ne)controlată de către utilizatori

    atacuri „brute”

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: pericole

    Intrarea în „găurile negre”

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: pericole

    Accesarea unor date nerelevante

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: identificare

    Fiecare robot Web trebuie să se identifice(nume, domeniu, creator,...)

    uzual, va fi folosit câmpul User-Agent din antetul unei cereri HTTP

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: identificare

    Ai motoarelor de căutare majore

    Baidu – Baiduspider: www.baidu.com/search/spider.htmlBing – Bingbot, BingPreview, AdIxBot

    www.bing.com/webmaster/help/which-crawlers-does-bing-use-8c184ec0

    DuckDuckGo – duckduckgo.com/duckduckbotGoogle – APIs-Google, AdSense, AdsBot, Googlebot,

    Googlebot-Image, Googlebot-News, Googlebot-Video,… support.google.com/webmasters/answer/1061943

    Yahoo! – Slurp: help.yahoo.com/help/us/ysearch/slurpYandex – YandexBot, YandexImages etc.:

    yandex.com/support/webmaster/robot-workings/check-yandex-robots.html

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: identificare

    Specializați

    e.g., validarea codului HTML, scurtarea lungimiiURL-urilor, scanare de vulnerabilități, statistici,

    arhivarea conținutului disponibil pe Web,…

    exemplificări: ChangeDetection, citeseerxbot, Distill,Feedity, Heritrix (folosit de archive.org),

    extensii Nagios, Scrapy, W3C Validator

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: identificare

    Personali

    rulați de utilizatori

    exemplificare: software de „oglindire” (copiere) a conținutului unui (fragment de) sit Web

    aplicații notorii disponibile în regim deschis:curl – curl.haxx.se/ wget – www.gnu.org/software/wget/

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    roboți: identificare

    Roboți (potențial) malefici

    pot cauza breșe de securitate, exploatând diverse vulnerabilități ale siturilor/aplicațiilor Web

    exemple tipice: JS/PHP/SQL/link injection, atacuri XSS (Cross-Site Scripting)

    www.botreports.com/badbots/

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    66.249.65.173 - - [09/Nov/2019:11:26:31 +0200] "GET /~introp/ HTTP/1.1" 304 - "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"

    93.158.178.188 - - [09/Nov/2019:11:25:08 +0200] "GET /~adria/...pdf HTTP/1.1" 200 198738 "-" "Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)"

    66.249.65.70 - - [09/Nov/2019:11:22:06 +0200] "GET /~busaco/teach/courses/cliw/ HTTP/1.1" 200 2120 "-" "Mozilla/5.0 (iPhone; …Safari/600.1.4 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"

    180.76.5.101 - - [09/Nov/2019:11:22:02 +0200] "GET /~busaco/ HTTP/1.1" 200 1907 "-" "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)"

    98.137.206.250 - - [09/Nov/2019:11:21:07 +0200] "GET /~busaco/ HTTP/1.1" 200 1907 "-" "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)"

    157.55.39.73 - - [09/Nov/2019:11:20:43 +0200] "GET /~webdata/…/OCT.pdf HTTP/1.1" 403220 "-" "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)"

    208.115.111.71 - - [09/Nov/2019:11:20:42 +0200] "GET /%7Eorar/ HTTP/1.1" 200 12705 "-" "Mozilla/5.0 (DotBot/1.1; http://www.opensiteexplorer.org/dotbot, [email protected])"

    63.249.66.212 - - [09/Nov/2019:11:14:55 +0200] "GET /~croitoru/ag/ HTTP/1.1" 200 2575 "-" "Mozilla/4.0 (compatible; MSIE 6.0; http://www.changedetection.com/bot.html)"

    66.249.65.70 - - [09/Nov/2019:11:12:47 +0200] "GET /~busaco/paint/leaf/leaf-9.jpg HTTP/1.1" 304 - "-" "Googlebot-Image/1.0"

    157.55.39.177 - - [09/Nov/2019:11:11:53 +0200] "GET /~lrc/ HTTP/1.1" 200 1914 "-" "msnbot-media/1.1 (+http://search.msn.com/msnbot.htm)"

    136.243.9.23 - - [09/Nov/2019:09:40:35 +0200] "GET /~busaco/ HTTP/1.0" 200 1907 "-" "Mozilla/5.0 (… James BOT - WebCrawler http://cognitiveseo.com/bot.html"

    cereri HTTP efectuate de diverși roboți Web(menționate în fișierul de jurnalizare Apache)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    statistici + detalii:www.botsvsbrowsers.org

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Cum putem „instrui” roboții Websă nu viziteze anumite zone ale sitului?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Orice robot trebuie să respectestandardul de excludere

    „inhibă” vizitarea anumitor zone (secțiuni) ale unui sit Web

    în rădăcina unui domeniu Web se poate plasa fișierul robots.txtwww.robotstxt.org/robotstxt.html

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    # https://developer.mozilla.org/robots.txt

    User-agent: * # toți roboții

    Crawl-delay: 5 # 5 sec. între cereri

    Sitemap: https://developer.mozilla.org/sitemap.xml

    Disallow: /admin/ # căi ce nu trebuie vizitate

    Disallow: /*/dashboards/*

    Disallow: /*docs/feeds

    ...

    fișierul robots.txt poate cuprinde extensii recunoscute doar de un anumit crawler Web

    cazul Google: developers.google.com/search/reference/robots_txt

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    de studiat câteva exemple reale de fișiere robots.txt:www.amazon.com/robots.txt

    www.facebook.com/robots.txt

    github.com/robots.txt

    www.google.com/robots.txt

    User-agent: *

    Disallow: /user/*

    Disallow: /addtocart*

    Disallow: /proces_comanda

    Disallow: /cart/*

    Disallow: /checkout

    Disallow: /imagini/*

    Disallow: /images/*

    Disallow: /compare/*

    Disallow: /thank-you$

    Disallow: /cat-*/pid-*/ord-*/p-*

    Disallow: /adauga-review

    Disallow: /adauga-intrebare

    Disallow: /header-cart

    Disallow: /header-wl

    Disallow: /product_get_recommandations/*

    Disallow: /get_back_to_search_url

    Disallow: /search-tools/*

    Disallow: /ajax_live_products

    Disallow: /box_user_history

    Disallow: /gr_box_bottom_landing/*

    Disallow: /site_ajax_ads

    Allow: /*/*/*all-products

    User-agent: 008

    Disallow: /

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Orice robot trebuie să respectestandardul de excludere

    evitarea indexării conținutului:

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Activitatea generală a unui robot (crawler) simplu:

    F = mulțimea de URL-uri de start (frontiera)cât-timp F este nevidăextrage un URL u din Fpreia pagina (resursa Web) p cu adresa udacă p este relevantăstochează p în indexpentru-fiecare legătură v din p

    dacă v nu este în index și v nu aparține lui Fși v ar putea fi vizitată

    adaugă v la F

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Bazată pe învățare

    data mining

    (de exemplu, reinforcement learning)

    vezi materia „Învățare automată”

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Conținutul ce trebuie indexat nu e doar textual

    hiper-informația:INFORMATION = HYPERINFO + TEXTINFO

    dependența de legături

    ordonarea legăturilor(alegerea unor criterii vizând importanța)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Robotul/motorul de căutare decide momentulrevizitării resursei care urmează a fi reindexată

    sau doar verificată

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Aspect de interes:

    rezoluția adreselor Web(nume de domeniiadrese IP)

    DNS cachingpre-fetching

    address resolution

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Aspect de interes:

    realizarea cererilor concurente

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Aspect de interes:

    extragerea legăturilor

    e.g., normalizarea URI-urilor:www.Info.UAIC.Ro:80www.info.uaic.ro

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Aspect de interes:

    eliminarea adreselor deja vizitate

    evitarea „găurilor negre”

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Aspect de interes:

    monitorizarea accesărilor

    load monitoring + managing(evitarea supra-solicitării serverelor Web)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: căutarea

    Aspect de interes:

    strategii de revizitare/reîmprospătarea conținutului resurselor Web

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Cum se realizează indexarea?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: indexarea

    Necesitatea folosirii sistemelor de baze de date depozit distribuit de stocare (eventual, în cloud)

    optimizarea regăsirii

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: indexarea

    Necesitatea folosirii sistemelor de baze de date depozit distribuit de stocare (eventual, în cloud)

    optimizarea regăsirii

    modele non-relaționale de stocare – „mișcarea” NoSQL

    printre primele abordări: BigTable (Chang et al., 2006)research.google.com/archive/bigtable.html

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: indexarea

    Necesitatea folosirii sistemelor de baze de date depozit distribuit de stocare (eventual, în cloud)

    arhivarea datelor indexate

    e.g., recurgerea la algoritmul de compresiebzip2 – www.bzip.org (cazul Google)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: indexarea

    Utilizarea nu doar a datelor propriu-zise(conținutului textual), ci și a meta-datelor

    e.g., limbă, cuvinte-cheie, autor, format,data ultimei actualizări, frecvența modificărilor,…

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: indexarea

    Indexare bazată pe cuvinte-cheie

    relevanță, amplasare – e.g., context de apariție –, meta-date, procesarea limbajului natural,

    clasificare (semi-)automată via învățare automată(machine learning) sau alte tehnici,...

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: indexarea

    Indexare semantică – recurge la concepte

    clasificare socială via adnotare de resurse – tagging (folksonomy)

    + folosirea tehnologiilor Web-ului semantic

    (HTML5 schema.org, RDF, RDFa, SKOS, OWL,…)

    detalii la master

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: interogarea

    Cererile sunt formulate via o interfață Web

    unele motoare de căutare acceptăfolosirea unor operatori specifici

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    exemplificare: o parte dintre operatorii Google

    "expresie" ~termen –termen

    related: URL cache: URL link: URL

    intitle: termen(i) allintitle: termen(i)

    intext: termen(i) allintext: termen(i)

    inurl: termen(i) allinurl: termen(i)

    site: domeniu info: domeniu

    define: termen filetype: extensie

    unit1 in unit2 număr1 .. număr2

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: interogarea

    digital camera $700 .. $1400

    ~book

    intitle:design –intitle:web

    "burse de merit"

    site:uaic.ro

    inurl: art nouveau

    allinurl: ES6 library

    16 cm in inch

    related:www.w3.org

    js mvc inanchor:slideshare

    define:design

    cache:http://devdocs.io/

    map:iasi,romania

    firefox filetype:svg OR filetype:png

    unii operatori sunt permiși doar pentru anumite tipuri de căutări – e.g., știri, imagini, hărți

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: interogarea

    Interogările din prisma utilizatorului:

    grad mare de subiectivitate

    e.g., “miserable failure”

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: interogarea

    Interogările din prisma utilizatorului:

    depind de contextul social/cultural

    exemple:“pants” în UK versus US

    “madonna and child”

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: interogarea

    Interogările din prisma utilizatorului:

    dependente de scop (user intent)

    informațional (listă, locație, sfat)

    navigațional

    vizând accesul la (tipuri de) resurse(download, amuzament, interactivitate, tranzacții,…)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: interogarea

    semantici diferite ale unei interogărinecesitatea înțelegerii limbajului natural

    www.google.com/search/howsearchworks/algorithms/

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: interogarea

    Remarci:

    utilizatorii obișnuiți nu înțeleg limbajul logic – „booleana”

    exemplu:“hotels located in Bucharest and Iasi”

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: interogarea

    Remarci:

    interogările uzual sunt scurte (media: 2,6 cuvinte),dar focalizate – e.g., 25% pe business – conform Yahoo!

    apar confuzii:URI vs. text

    lipsa spațiilorvocabular

    etc.

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Remarci:

    implicit, termenii de căutare trebuie să se regăseascăidentic în cadrul conținutului unui document Web

    e.g., căutând “children”, nu vom obține neapărat și paginile care includ “kids”

    motoare: interogarea

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    interacțiunea cu motorul de căutare poate fi facilitată

    și de un agent software conversațional

    Apple Siri, Amazon Alexa, Google Assistant, Google Now,

    Microsoft Cortana, Mycroft.ai, Dragon Go!, SpeakToIt Assistant

    thereisabotforthat.com botpress.io

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Detalii despre calculul relevanței?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Evaluarea relevanței:

    1. Analizarea interogării (tokenizing)2. Căutarea în indecșii termenilor3. Scanarea documentelor4. Evaluarea relevanței paginilor5. Eliminarea duplicatelor + sortarea6. Afișarea primelor N documente relevante

    (URI + alte informații)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Conținutul fiecărui document extraseste analizat și divizat în token-uri

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Unele construcții se ignoră/constrâng

    e.g., “the”, “is”/“are”/“were” → “be”, “running” → “run”

    procesare de bază a conținutului textual

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Fiecărui token i se reține și poziția aparițieiîn document

    poziția poate fi folosităla determinarea relevanței termenului

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Criterii vizând calculul relevanței:

    ranking bazat pe clasificare umană

    resurse clasificate de oameni

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Criterii vizând calculul relevanței:

    ranking bazat pe informații privitoarela utilizarea unei resurse

    timpul de vizită, periodicitatea vizitei,frecvența actualizării resursei, importanța relativă etc.

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Criterii vizând calculul relevanței:

    ranking bazat pe conectivitate

    analiza relațiilor (legăturilor hipertext) cu alte pagini

    eventual, în funcție de reputațiee.g., importanța domeniului Internet

    (sunt luați în calcul factori ca vechimea, localizarea,…)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Calculul relevanței:

    tehnici privind IR (Information Retrieval)

    căutări bazate pe similaritate – similarity search

    recurgând la învățare automată

    clasificarea conținutului hipermedia

    social network analysis – bibliometrie, prestigiu,…

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Page Rank (Google)Larry Page & Sergey Brin, 1998

    evaluarea relevanței pe baza contextului de apariție

    exploatarea relațiilor dintre diferite pagini Web

    o legătură de la resursa A la B reprezintăun vot dat resursei B de către A

    infolab.stanford.edu/~backrub/google.html

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Page Rank (Google)

    recurgerea la tehnici adaptive, euristice

    determinarea corelației dintre relevanța calculatăautomat de sistem și cea precizată (in)direct

    de către utilizator

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    motoare: relevanță

    Actualmente, se iau în considerațieconcepte (cunoștințe), nu cuvinte

    “things, not strings”

    de vizionat prezentareaM. Lanthaler, “The Future of the Web– From Strings to Things” (2015)

    vimeo.com/133137907

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Motoarele tind să „recompenseze” siturile:

    de mari dimensiuni

    cu viață lungă

    specializate, de „nișă”

    aparținând unor autorități de încredere

    motoare: relevanță

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    timp strategie

    înainte de 2000

    conținut – indexarea textului(titlu, anteturi, URL, descriere via )

    2000—2010conținutautoritate (via legături desemnate de URL-uri)

    2010—prezent

    conținutautoritatepersonalizare (social media + profil utilizator)

    2012—prezent

    conținutautoritatepersonalizareconcepte (date structurate + Web of data)context (localizare geo, limbă, timp, dispozitiv,…)

    adaptare după (K. Bodnar & J. Hopkins, 2011)de studiat și www.slideshare.net/randfish/presentations

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    coInstrumente software open source pentru implementatori: Apache Lucene, Apache Nutch, Apache Solr,

    mnoGoSearch, Namazu, Xapian,…

    API-uri publice: www.programmableweb.com/category/search

    disponibilitatea datelor indexate în regim deschis în vederea analizării ulterioare:

    commoncrawl.org

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    (în loc de) pauză

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    SERP (Search Engine Result Page)

    specifică maniera de redare a rezultateloroferite de motorul de căutare

    motoare: afișarea rezultatelor

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    SERP (Search Engine Result Page)

    se includ recomandări pe baza:preferințelor utilizatorului

    istoricului căutărilorURL-urilor partajate via rețele sociale

    meta-datelor (rich snippets)adnotărilor realizate de utilizatorilocalizării geografice (local search)

    motoare: afișarea rezultatelor

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    a se considera și DuckDuckGo Instant Answers: duck.co/ia

    motorul de căutareDuckDuckGo este axat

    asupra asigurării intimitățiiutilizatorului în ceea ce privește

    căutările acestuia pe Web

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    “At any one time you rank #1 or #8 or #40based on who is searching, where they search,

    and what is happening.”

    K. Bodnar & J. Hopkins, 2011

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Cum putem proiectamijloacele de căutare internă?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Motor de căutare internă (la nivel de sit)

    oferirea de sugestii utilizatorului

    e.g., spelling suggestions,sinonime (car → automobile, truck,…)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Motor de căutare internă (la nivel de sit)

    sugestii de soluții

    de exemplu, răspunsuri la cele mai frecvente întrebări

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Motor de căutare internă (la nivel de sit)

    îmbunătățirea interacțiunii – utilizabilitatea

    integrarea în designul general al sitului

    tactici: oferirea unui următor pas de realizat(mai ales când nu există rezultate),

    sugestii privind căutarea, exemple, rafinarea cererii etc.

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Motor de căutare internă (la nivel de sit)

    în pagina de redare a rezultatelor, va fi afișată șiinterogarea inițială, cu posibilitatea modificării ei

    oferirea a cel puțin N rezultate/pagină +indicarea numărului total de pagini de rezultate

    sau încărcarea progresivă a următoarelor rezultate

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Motor de căutare internă (la nivel de sit)

    calitatea rezultatelor oferite e dependentăși de modul de structurare a datelor

    fiecare rezultat să includă informații utilefolosirea unui vocabular înțeles de către vizitator,

    utilizarea unor tehnici de vizualizare intuitivă,facilitarea filtrării și sortării datelor etc.

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Motor de căutare internă (la nivel de sit)

    utilizatorul să aibă libertatea de a efectuaoricând o nouă interogare

    evitarea „fundăturilor” – oferirea de ajutor, sugestii,…

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Motor de căutare internă (la nivel de sit)

    biblioteci JavaScript utile:JS Search – github.com/bvaughn/js-search

    Typeahead – github.com/twitter/typeahead.jsFuse.js – fusejs.ioLunr – lunrjs.com

    Elasticlunr.js – github.com/weixsong/elasticlunr.jssearch-index – github.com/fergiemcdowall/search-index

    YDN-DB – dev.yathit.com/ydn-db/

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    În ce mod prezentăm conținutulaltor clienți – diferiți de cei umani?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Cum trebuie scris codul HTMLpentru a obține o relevanță bună a conținutului?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    SEO – Search Engine Optimization

    suită de strategii de redactare a codului HTMLîn vederea obținerii unei relevanțe ridicate

    a conținutului, astfel încât pagina/situl să fieregăsite în urma unei căutări specifice efectuate

    cu un instrument de căutare

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Structurarea codului-sursă al documentelor Web

    Structurarea conținutului (textual, grafic,…)

    Structurarea legăturilor cu alte resurse

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Se recurge la semnificația logică a marcatorilor HTMLPOSH (Plain Old Semantic HTML)

    titluri plasate ierarhic via elementele , ,…

    conținut tabelar cu

    aranjament vizual (layout)via stiluri CSS și nu tabele ( …)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Se recurge la semnificația logică a marcatorilor HTMLPOSH (Plain Old Semantic HTML)

    divizarea conținutului: etc.

    marcajarea elementelor vizând navigabilitatea cu

    liste specificate cu …

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    h1

    nav

    aside

    section

    h2

    ul

    h2

    articlep

    header

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Se recurge la semnificația logică a marcatorilor HTMLPOSH (Plain Old Semantic HTML)

    conținut textual alternativ pentru imagini (), legături (), tabele (),

    multimedia,…

    atașarea de meta-date externe în antetul paginii Web via , și

    Josh Buchea, A free guide to elements – gethead.info

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Se recurge la semnificația logică a marcatorilor HTMLPOSH (Plain Old Semantic HTML)

    de evitat elementele învechite – e.g., cadre (frame-uri) –sau proprietare ( ori )

    documentul trebuie să fie bine-formatatverificarea corectitudinii codului HTML cu instrumentul

    oferit de Consorțiul Web – validator.w3.orga se considera și html5boilerplate.com

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    coConținutul primează – content is king

    o importanță majoră o are titlul paginiiUntitled Document – 68.8 de milioane de rezultate redate de Google

    situl trebuie actualizat periodic, frecvent

    numele fișierelor (imagini, stiluri,…) conteazătehnică utilă:

    „rescrierea” URL-urilor – e.g., mod_rewrite la Apache

    anumite date pot fi „ascunse” de roboți via robots.txt

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Realizarea legăturilor între pagini (hipermedia)

    obligatoriu, de inclus legături spre alte resurse(ale sitului propriu ori ale altor situri)

    dorim legături spre/de la situri importanteavând conținut similar cu situl nostru

    de verificat și menținut structura hipertextuluiinstrumentul LinkChecker – validator.w3.org/checklink

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Realizarea legăturilor între pagini (hipermedia)

    de citit cap. 2 din S. Buraga, Proiectarea siturilor Web, Polirom, 2005www.slideshare.net/busaco/sabin-buraga-proiectarea-siturilor-web

    tehnici clasiceașa-zis „demodate”:

    interschimb de adrese(link-uri) – banner-e, blogroll-uri

    marketing bazat pe contexte.g., produse/servicii înrudite

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Realizarea legăturilor între pagini (hipermedia)

    recurgerea la aplicații Web socialeSMO – Social Media Optimization

    partajare în rețeaua de „prieteni”,apreciere, comentarii, opinii,…

    S. Buraga, Design Patterns for Social (Web/mobile) Interactions, prelegere la materia Human-Computer Interaction, FII, UAIC, 2019

    profs.info.uaic.ro/~busaco/teach/courses/hci/hci-film.html#week7

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Realizarea legăturilor între pagini (hipermedia)

    de evitat paginile de eroare – 404 Not Found

    orice pagină de eroare poate fi „convertită”într-o resursă folositoare omului/robotului

    uzual, se oferă harta sitului (site map), legături relevante, motor intern de căutare,…

    alistapart.com/article/perfect404

    alistapart.com/article/amoreuseful404

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Realizarea legăturilor între pagini (hipermedia)

    a nu se folosi navigarea bazată pe JavaScript ori – mai desuet – pe tehnologii proprietare (Flash/Silverlight)

    participanții: aici

    la prima pagină

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Alte aspecte de interes despre SEO?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Specificarea structurii unui sit Web

    crearea documentului sitemap.xml pentru a fi ulterior procesat de motorul de căutare

    www.sitemaps.org/protocol.html

    complementar fișierului robots.txt

    furnizează structura hipertext a unui sit Web

    datele pot fi furnizate și în formatele Atom, RSS și text obișnuit

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Specificarea structurii unui sit Web

    https://developer.mozilla.org/en-US/docs/Archive

    2020-01-16

    cazuri concrete:developer.mozilla.org/sitemap.xml

    techcrunch.com/sitemap.xml

    instrument Web de generare: www.xml-sitemaps.com

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Evitarea spam-ului Web

    e.g., legături încrucișate între pagini similareale aceluiași sit Web ori ale unei colecții de situri

    motoarele de căutare detectează + penalizează spam-ul!searchenginewatch.com/?s=spam

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Paginile de „acoperire” (page cloaking)

    scop: oferirea de conținut diferit,în funcție de un anumit criteriu

    (aici, conținut special pentru roboții de căutare)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Paginile de „acoperire” (page cloaking)

    scop: oferirea de conținut diferit,în funcție de un anumit criteriu

    (aici, conținut special pentru roboții de căutare)

    black-hat page cloakingtehnică penalizată: support.google.com/webmasters/answer/66355

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Oferirea de conținut via documenteadoptând formate de date nestandardizate

    Titluri identice pentru toate paginile unui sit

    Pagini de eroare oferite de servervia codul de stare HTTP 200 Ok

    Redirecționări incorecte/malițioase

    Abuzul de transferuri asincrone (Ajax)

    de evitat

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Regăsirea informațiilor disponibile pe Web trebuie considerată într-un context mai larg

    accesibilitatea – utilizatorii cu nevoi speciale

    Web Accessibility Initiativewww.w3.org/WAI/

    Web Accessibility in Mindwebaim.org

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Regăsirea informațiilor disponibile pe Web trebuie considerată într-un context mai larg

    performanța aplicațiilor Web

    aspect important: timpul de încărcare a unei pagini Web

    vezi cursul anterior

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Resurse de interes:

    Google Webmaster Centraldevelopers.google.com/webmasters/

    Learn SEO and Search Marketingmoz.com/learn/seo

    Search Engine Landsearchengineland.com

    Search Engine Watchsearchenginewatch.com

    Search Engine Roundtablewww.seroundtable.com

    Search Engines @ VideoLecturesvideolectures.net/Top/Computer_Science/Search_Engines

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Invisible Web (Deep Web)

    acea parte a spațiului WWW care nu este detectată de motoarele de căutare sau

    de alte tipuri de aplicații de regăsire a resurselordisponibile pe Web

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Dark Web

    acea parte a spațiului informațional reprezentat de Deep Web care în mod intenționat e ascunsă

    și inaccesibilă via navigatoare Web comune

    exemplu notoriu:rețele anonime (VPN – Virtual Private Network)

    accesate cu TOR Browser

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Cum am putea descrie conținutul resurselor Webastfel încât să poată fi procesat „inteligent”?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Idee:specificarea unor meta-date direct în cadrul

    documentelor HTML pentru a „explica” unui program (software – e.g., motor de căutare)

    conținutul unei resurse Web

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Soluții actuale aliniate problematicilor Web-ului semantic – Web of Data

    microformate – microformats.org

    scheme de microdate HTML5 – schema.org

    RDFa (standard al Consorțiului Web) – rdfa.info

    la master

    demodat

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Microdata HTML 5

    specificație HTML Living Standard (15 ianuarie 2020)

    html.spec.whatwg.org/multipage/microdata.html

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Microdata HTML 5

    posibilitatea de a specifica perechi de proprietăținume—valoare „scufundate” în HTML

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Microdata HTML 5

    grupurile de perechi de proprietăți nume—valoare sunt denumite items

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Microdata HTML 5

    grupurile de perechi de proprietăți nume—valoare sunt denumite items

    creare via atributul itemscopestabilește și domeniul de vizibilitate

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Microdata HTML 5

    grupurile de perechi de proprietăți nume—valoare sunt denumite items

    pentru identificarea unui item se folosește itemid

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Microdata HTML 5

    grupurile de perechi de proprietăți nume—valoare sunt denumite items

    referire cu ajutorul atributului itemref

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Microdata HTML 5

    grupurile de perechi de proprietăți nume—valoare sunt denumite items

    asocierea unui tip de date se face cu atributul itemtype

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Microdata HTML 5

    grupurile de perechi de proprietăți nume—valoare sunt denumite items

    specificarea unei proprietăți prin atributul itemprop

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Există o serie de modele de date(exprimate via microdate)ce pot fi indexate și folosite

    de actualele motoare de căutare?

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    schema.org

    colecție de vocabulare (scheme de date)– e.g., Book, Event, LocalBusiness, Movie, Offer, Person,

    Place, Recipe, Review, TVSeries,… – recunoscute șiindexate de roboții principalelor motoare de căutare

    istoric și viziune:R. Wallis, “Schema.org: Structured Data – What, Why, & How”, 2018

    www.slideshare.net/rjw/schemaorg-structured-data-the-what-why-how-125885618

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    schema.org

    colecție de vocabulare (scheme de date)– e.g., Book, Event, LocalBusiness, Movie, Offer, Person,

    Place, Recipe, Review, TVSeries,… – recunoscute șiindexate de roboții principalelor motoare de căutare

    Bing, Google, Yahoo!, Yandex

    amănunte la schema.org/docs/gs.html

    modeleconceptuale

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    tipurile primare de date definite de schema.org

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    diverse proprietăți ce relaționează Integer cu alte concepte

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Thing – schema cea mai generală, incluzând conceptualizări(clasificări realizate riguros)

    Action

    BroadcastService

    CreativeWork

    Event

    Intangible

    MedicalEntity

    Organization

    Person

    Place

    Product

    Class

    Property

    modelare de cunoștințe(via o ontologie)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Person – modelează conceptul „persoană”http://schema.org/Person

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    MusicRecording – specifică o înregistrare muzicală (sub-clasă a conceptului CreativeWork)

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    schema.org

    relațiile dintre entități sunt precizate via proprietăți

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Tuxy Unlimited

    Banchiza, 1Iasi,Iasi700550

    Phone: +4032201090Details on OpenStreetMap

    fapte vizând domeniul imobiliar

    …pe baza modelului conceptual schema.org

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    This discipline is taught by

    Dr.

    Sabin-Corneliu Buraga

    .

    specificarea (adnotarea explicită a) faptului: „entitatea având numele Sabin-Corneliu Buraga este o persoană, posedă titlul Dr. și are situl Web propriu

    disponibil la adresa https://profs.info.uaic.ro/~busaco/”

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Web Supplement

    Tutorial: Web Application Development

    with Node.js

    Web, development, server,

    Node.js, JavaScript, programming, npm, tools

    specificarea în HTML5 a lucrărilor creative de tip CreativeWork conform schema.org

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    extragerea/verificarea de date structurate via Structured Data Testing Tool – search.google.com/structured-data/testing-tool

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    extragerea informațiilor din HTML5aici, despre prelegerile asociate unei materii

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Tema

    Concursul este destinat studenților

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    date pentru „consum” uman vs. date structurate interpretate și prelucrate, ulterior, de algoritmi

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    inspectarea datelor structurate cu OpenLink StructuredData Sniffer – extensie de browser: osds.openlinksw.com

    specificarea meta-datelor privitoare la instanța de Articol

    aici, o instanță ImageObject

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    alte exemplificări: pinterest.com/kidehen/structured-metadata-related/

    TripAdvisor

    construcții RDFa utilizând Open Graph Protocol (Facebook) – ogp.me

    utilizarea conceptelor Country și AggregateRating

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    acțiuni asociate vizualizării unui produs (instanță a Product)detalii la schema.org/docs/actions.html

    vezi și Increase user engagement with actions in emailsdevelopers.google.com/gmail/markup/

    eBay

    acțiuni ce pot fi efectuate de utilizator(ViewAction e sub-concept al Action)context: dispozitive mobile, e-mail,…

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Diverse utilizări practice:

    artefacte culturalevezi prezentările lui A. Isaac despre Europeana

    www.slideshare.net/antoineisaac/presentations

    biblioteci digitale (digital libraries)R. Wallis, prelegeri la Smart Data’15, BIBFRAME’18,…

    www.slideshare.net/rjw/presentations

    lucrări științificeformatul Scholarly HTML

    w3c.github.io/scholarly-html/

    medicină + sănătateschema.org/docs/meddocs.html

    health-lifesci.schema.org

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Diverse utilizări practice:

    finanțeextensia schema.org privitoare la FIBO (Financial Industry Business Ontology)

    wiki.edmcouncil.org

    schema.org/FinancialProduct

    industria autoauto.schema.org

    IoT (Internet of Things)iot.webschemas.org/docs/iot-gettingstarted.html

    turismC. Bizer, Schema.org Annotations in Websites. Opportunities

    & Challenges for the Tourism Industry, TFF’15www.slideshare.net/TourismFastForward/bizer-christian-schema-orgtourism

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Scheme de microdate HTML5 în sistemele de management de conținut (CMS – Content Management Systems)

    DokuWikiwww.dokuwiki.org/plugin:semantic

    Joomlaextensions.joomla.org/extension/google-structured-data-markup

    MediaWikiwww.mediawiki.org/wiki/Extension:GoogleRichCards

    TYPO3extensions.typo3.org/extension/schema_org/

    WordPresswordpress.org/plugins/all-in-one-schemaorg-rich-snippets/

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Microdatele HTML5 sunt indexate de motoarele de căutare

    Bing Webmastertinyurl.com/b9mx2f2

    Google Structured Datadevelopers.google.com/structured-data/

    research.googleblog.com/search/label/schema.org

    Yandex Webmasteryandex.com/support/webmaster/schema-org/

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    A se studia și inițiativa Web Data Commons

    extragere cu Common Crawl – commoncrawl.org –și acces la seturi de date modelate

    via microdate HTML5, plus microformate și RDFa

    webdatacommons.org/structureddata/

  • Dr.

    Sab

    in B

    ura

    ga

    profs.in

    fo.uaic.ro/~busa

    co

    Mult succes!☺