SlideShare uma empresa Scribd logo
1 de 90
Baixar para ler offline
<?xml version=“1.0” ?>
Semantic Web                                          <curs desc=“…” />




                         Web semantic

                   Dr. Sabin­Corneliu Buraga
                     Facultatea de Informatica
               Universitatea “A.I.Cuza” – Iasi, Romania


              http://www.infoiasi.ro/~busaco/

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




      Resource Description Framework
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                              <curs desc=“…” />




                      “Lucrurile au si ele viata. 
                   Totul este sa le trezesti sufletul.”

                       Gabriel García Márquez




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                   intrebari


  Cum (re)folosim datele distribuite pe Web?




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  necesitati

  O maniera de a atasa date privitoare la date

    creare de vocabulare de termeni descriind “ceva” 
     (proprietati, domenii, lumi,...) – resurse Web




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  necesitati

    Un mod de a specifica relatii intre resurse

                structuri de organizare a datelor
            in cadrul unui sau mai multor web‐uri




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                          <curs desc=“…” />




                                    realitati

  Uzual, datele sunt reprezentate in forma tabelara
                   modelul relational

             un rand descrie un “obiect” (item) specific

    o coloana reprezinta o proprietate a tuturor item‐ilor 

            o celula desemneaza o valoare particulara
         a unei proprietati asociate obiectului de interes

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                    exemplu




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                   motivatie

                   Distribuirea datelor pe Web

         fragmente de informatii vor fi disponibile
                 pe calculatoare diferite,
           accesate via tehnologiile Web actuale




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                   motivatie

                   Distribuirea datelor pe Web

                           solutia 1:
            fiecare calculator mentine informatiile
       despre mai multe randuri complete dintr‐un tabel




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                    exemplu

                   Distribuirea datelor pe Web




      Care‐i schema 
        comuna?

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                   motivatie

                   Distribuirea datelor pe Web

                           solutia 1:
            fiecare calculator mentine informatiile
       despre mai multe randuri complete dintr‐un tabel

  necesitatea unui mecanism de coordonare intre servere
          e.g., partajarea schemei comune folosite


Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                   motivatie

                   Distribuirea datelor pe Web

                          solutia 2:
 fiecare calculator e responsabil cu una/mai multe coloane 
                complete din cadrul tabelului




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                 <curs desc=“…” />




                                    exemplu

                   Distribuirea datelor pe Web




                                                    Cine refera
                                                     pe cine?


Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                         <curs desc=“…” />




                                   motivatie

                   Distribuirea datelor pe Web

                          solutia 2:
 fiecare calculator e responsabil cu una/mai multe coloane 
                complete din cadrul tabelului

     necesitatea cunoasterii identitatii datelor modelate
    e.g., fiecare resursa are asociat un identificator global


Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                   motivatie

                   Distribuirea datelor pe Web

                              solutia 3:
              fiecare masina realizeaza managementul
                 unui numar de celule dintr‐un tabel




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                    exemplu

                   Distribuirea datelor pe Web




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                   motivatie

                   Distribuirea datelor pe Web

                              solutia 3:
              fiecare masina realizeaza managementul
                 unui numar de celule dintr‐un tabel

            combina avantajele abordarilor precedente



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                          <curs desc=“…” />




                                   motivatie

                   Distribuirea datelor pe Web

                              solutia 3:
              fiecare masina realizeaza managementul
                 unui numar de celule dintr‐un tabel

         fiecare celula trebuie referita de 3 valori unice:
           o referinta globala ce desemneaza un rand +
          o referinta globala ce desemneaza o coloana +
         o referinta globala ce specifica valoarea celulei
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                          <curs desc=“…” />




                                          rdf

          Resource Description Framework
          cadru (abstract) pentru descrierea resurselor
                     la nivelul calculatorului

                       fundatie a Web‐ului semantic




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                          rdf

                          Recomandare W3C
      RDF Model & Syntax Specification (1999)
    RDF/XML Syntax Specification – Revised (2004)




                   http://www.w3.org/RDF

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                              <curs desc=“…” />




                                          rdf

            Ofera modalitatile de specificare a triplelor
                  (rand, coloana, valoare de celula)
            via identificatori uniformi de resurse – URI
                                                    URI




                                                    URI
                              URI

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                          <curs desc=“…” />




                                  rdf: model


              Resursa – specificata de URI‐uri
    Proprietate – aspect, caracteristica, atribut sau relatie
    Declaratie – triplu de forma { subiect, predicat, obiect }




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model


    Subiect = rand (resursa despre care se “spune” ceva)
      Predicat = coloana (o proprietate a subiectului)
     Obiect = celula (valoare particulara a proprietatii)




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                         <curs desc=“…” />




                                  rdf: model

   Subiect
        Resursa – specificata de un URI – care este descrisa
        via predicat si obiect
   Predicat
        Relatie – desemnata de un URI – stabilita
        intre subiect si obiect
        Poate fi considerat si drept atribut (proprietate)
   Obiect
        Desemneaza resursa referita de un predicat
        sau specifica o valoare
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                    <curs desc=“…” />




                      rdf: model – exemplu
                    Subiect           Predicat       Obiect
                     Apple            produce        iTunes
                   Microsoft          produce         Office




                                                                     Vocabular de termeni
                      PHP            areStatut       Deschis
                     Office          areStatut      Comercial
                      IBM               este        Companie
                   Microsoft            este        Companie
                      Java              este         Limbaj
                     Excel           parteDin         Office
                     Sabin          localizatIn     Romania
                     Sabin           utilizeaza      iTunes
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                 <curs desc=“…” />




                                   rdf: model

Atunci cand mai multe triple refera aceeasi resursa, 
     le putem reprezenta sub forma de grafuri

                   triplu = muchie intre subiect si obiect

          predicat = eticheta asociata muchiei digrafului




Dr. Sabin Buraga    http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                         <curs desc=“…” />




                      rdf: model – exemplu
       Graful unui model conceptual referitor la un web:
                                               utilizeaza
                                                                 Sabin
               parteDin
                                                                         este
  Excel                         Office
                                                                    Persoana
                                                    areStatut
               produsDe
                                 produce
                                                      Comercial
               Microsoft
                                                                    areStatut
             este
                                             Apple
                                este                             Mac OS X
                                                       produce
           Companie
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model


     Predicatele specifica natura relatiilor ce pot fi
             stabilite intre subiect si obiect

    se pot exprima folosind vocabulare publicate pe Web,
        ce sunt disponibile liber si sunt referite de URI




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                              <curs desc=“…” />




                                  rdf: model


          Modelul pus la dispozitie poate fi folosit
        la asocierea de meta­date resurselor Web
         si la specificarea relatiilor dintre resurse


                     se poate utiliza si o sintaxa XML 



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                   <curs desc=“…” />




                      rdf: model – exemplu

                Autorul resursei desemnate de URI‐ul
             http://www.infoiasi.ro/~web/ este Sabin Buraga

         <rdf:RDF>
           <rdf:Description rdf:about=http://www.infoiasi.ro/~web/>
                 <s:Autor>Sabin Buraga</s:Autor>
           </rdf:Description>
         </rdf:RDF>



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                            <curs desc=“…” />




                      rdf: model – exemplu


                          Alternative sintactice:
         autor (http://www.infoiasi.ro/~web/, Sabin Buraga)




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                              <curs desc=“…” />




                      rdf: model – exemplu


                          Alternative sintactice:
    isA sau a
                          este (#Java, #Limbaj)
                       este (#Sabin, #Persoana)
                      utilizeaza (#Sabin, #iTunes)
                utilizeaza (#Sabin, http://twitter.com/)
refera (http://twitter.com/busaco, http://www.purl.org/net/busaco)



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                               <curs desc=“…” />




                      rdf: model – exemplu


               Cuvintul englezesc “book” e tradus
                 in limba romana prin “carte”
                       translatedInto (#book, carte)

              Termenul “book” este un substantiv
                             isA (#book, #noun)



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                           <curs desc=“…” />




                                  rdf: model


    Un nod al grafului RDF e referit unic via un URI

                  doar etichetind resursele cu nume
               – e.g., “Companie”, “produce”, “Java”,… –
                    nu se garanteaza ca specificam
                   acelasi concept (aceeasi resursa)



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                            <curs desc=“…” />




                                  rdf: model


    Un nod al grafului RDF e referit unic via un URI

             pot exista alte entitati care refera aceleasi
               conventii sintactice cu alte semantici

 Java (insula) vs. Java (sortiment de cafea) vs. Java (limbaj)



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model


    Un nod al grafului RDF e referit unic via un URI

         folosind URI‐uri, putem fuziona (merge) grafuri
                 referitoare la concepte comune

        daca doi agenti doresc sa refere aceeasi resursa,
       trebuie ales un URI menit a desemna in mod unic
                         aceasta resursa

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                         <curs desc=“…” />




                                  rdf: model


  Un URI ofera o identificare globala a unei resurse

       putem stabili – via URI – semnificatia unui termen
                  http://geo.locations.info#java
                          urn:coffee:java
                  http://programming.org/Java

          in cazul grafurilor, un nod fuzioneaza cu altul
                    daca e referit de acelasi URI
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                  <curs desc=“…” />




                                  rdf: model


      Putem exprima URI‐urile via nume calificate
             (qualified names – qnames)

                          spatiu de nume:termen

                                                    constructie XML 
                                                     (e.g., nume de 
                                                        element)


Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model


    Via nume calificate desemnam vocabulare de termeni

                              coffee:Java
                  geo:Java geo:Romania geo:USA
              lang:C# lang:Java lang:PHP lang:Ruby
                    s:areStatut s:este s:produce
                 soft:iTunes soft:Office soft:XWiki
                        xsd:integer xsd:string

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                   <curs desc=“…” />




                                  rdf: model
            Subiect      Predicat                        Obiect
          com:Apple    s:produce                      soft:iTunes
        com:Microsoft s:produce                       soft:Office
           lang:PHP    s:areStatut                    lic:Deschis
          soft:Office  s:areStatut                  lic:Comercial
           com:IBM        s:este                     s:Companie
           lang:Java      s:este                        s:Limbaj
           soft:Excel  s:parteDin                     soft:Office
          pers:Sabin  s:localizatIn                 geo:Romania
          pers:Sabin  s:utilizeaza                   soft:iTunes

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                           <curs desc=“…” />




                                  rdf: model


         Spatiile de nume implicite (default) pot fi omise

               util daca se utilizeaza vocabularul local

                                     :Persoana
                                    :cunoastePe
                                     :localizatIn



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                         <curs desc=“…” />




                                  rdf: model


    Meta‐datele pot fi asociate unor resurse deja definite:

   <rdf:Description rdf:ID=csb>
       <s:Rol>prezentator la &lt;Web /&gt;</s:Rol>
   </rdf:Description>                              Vocabular
                                                   de termeni
   ...
   <rdf:Description rdf:about=#csb>
       <s:Adresa>http://www.purl.org/net/busaco</s:Adresa>
   </rdf:Description>
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                     <curs desc=“…” />




                                  rdf: model
  Colectii de resurse: bag (multi‐set), secventa, alternativa
       “Cartea Programarea in Web 2.0 are ca autori
                pe Anca, Ciprian si Ecaterina.”
  <rdf:RDF>
     <rdf:Description rdf:about=http://webpro20.blogspot.com/>
       <s:Autor>
        <rdf:Bag>
         <rdf:li rdf:resource=http://students.infoiasi.ro/~lucaa/ />
         <rdf:li rdf:resource=http://www.2wit.com/ />
         <rdf:li rdf:resource=http://students.infoiasi.ro/~evalica/ />
        </rdf:Bag>
       </s:Autor>                                    Bag, Seq, Alt
     </rdf:Description>
  </rdf:RDF>
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model


  Specificarea tipurilor de date intr‐un model RDF
 se realizeaza via proprietatea predefinita rdf:type




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                  <curs desc=“…” />




                      rdf: model – exemplu

              Subiect                 Predicat          Obiect
            com:Adobe                 rdf:type       s:Companie
          com:Microsoft               rdf:type       s:Companie
             lang:Java                rdf:type         s:Limbaj
           geo:Romania                rdf:type         geo:Stat
          pers:Ecaterina              rdf:type          s:Autor
            s:utilizeaza              rdf:type      rdf:Property
            s:parteDin                rdf:type      rdf:Property
            foaf:knows                rdf:type      rdf:Property

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                 <curs desc=“…” />




                                   rdf: model
                    Se pot exprima si relatii non‐binare, 
                   apelindu‐se la o resursa intermediara
<rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#
          xmlns:un=http://www.schemas.org/Units/>
   <rdf:Description rdf:about=urn:ISBN:0-201-00023-7>
    <un:price rdf:parseType=Resource>
      <rdf:value>33.00</rdf:value>
      <un:units rdf:resource=http://www.schemas.org/Units/USdollar/>
    </un:price>
   </rdf:Description>
</rdf:RDF>

          Costul cartii referite de ISBN‐ul ei este de 33 $
Dr. Sabin Buraga    http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model
         Reificare: declaratii despre declaratii
   faptul 1: Sabin‐Corneliu Buraga este autorul resursei
  desemnate de URI‐ul http://www.infoiasi.ro/~busaco/

    faptul 2: Dan Cristea afirma ca Sabin‐Corneliu Buraga
              este autorul resursei desemnate de 
          URI‐ul http://www.infoiasi.ro/~busaco/

  astfel, pot fi modelate meta‐date privitoare la meta‐date

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model


    Stabilirea modului de procesare a declaratiilor
                se face prin parseType




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model
         Atributul parseType=Literal poate fi utilizat
           pentru ca procesorul RDF sa nu prelucreze
                continutul unui anumit element

    <dc:title rdf:parseType=Literal>
    F.Kafka: <html:strong>Procesul</html:strong>
    </dc:title>




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model
         Atributul parseType=Resource se foloseste
         pentru a semnala faptul ca e vorba de o resursa
                       si nu de o valoare




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                          <curs desc=“…” />




                                  rdf: model
        Pentru a specifica explicit o asertiune privitoare
       la o alta asertiune, RDF ofera trei resurse speciale:

                                     rdf:subject
                                    rdf:predicate
                                      rdf:object

                              explicit reification



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                        <curs desc=“…” />




                      rdf: model – exemplu
      “Wikipedia afirma faptul ca Apple produce iTunes.”

    p:prop        rdf:subject                       com:Apple ;
                  rdf:predicate                     s:produce ;
                  rdf:object                        soft:iTunes .
    web:Wikipedia s:afirma                          p:prop .




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                        <curs desc=“…” />




                      rdf: model – exemplu
      “Wikipedia afirma faptul ca Apple produce iTunes.”

    p:prop        rdf:subject                       com:Apple ;
                  rdf:predicate                     s:produce ;
                  rdf:object                        soft:iTunes .
    web:Wikipedia s:afirma                          p:prop .


                     A nu se confunda cu declaratia:
    com:Apple              s:produce                soft:iTunes .

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                              <curs desc=“…” />




                              rdf: serializare
  Modelul RDF nu este “legat” de o anumita sintaxa

                   Sintaxele “standard” utilizate sunt:
                     digrafuri (reprezentari grafice)
                                 N­triple
                                   N3
                                RDF/XML


    http://internetalchemy.org/2005/09/the-sixteen-faces-of-eve

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                         <curs desc=“…” />




                   rdf: serializare – N‐triples
Refera resursele via URI‐uri absolute scrise intre “<“ si “>”, 
     in ordinea subiect‐predicat‐obiect, urmate de “.”

                <http://www.infoiasi.ro/SW.rdf#Sabin>
         <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
               <http://www.infoiasi.ro/SW.rdf#Autor> .




 a se consulta si www.w3.org/2007/02/turtle/primer/

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                         <curs desc=“…” />




                        rdf: serializare – N3
                     Notation 3 RDF (N3)
              recurge la nume calificate – qnames

    @prefix s: <http://www.infoiasi.ro/SW.rdf#>
    @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
    s:Sabin rdf:type s:Autor .

    uzual, specificat prin a



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                        rdf: serializare – N3
                           Notation 3 RDF (N3)
    faptul “Sabin este o persoana si‐i cunoaste pe Andrei,
         Ciprian si Emanuel” se poate modela prin: 

    @prefix s: <http://www.infoiasi.ro/SW.rdf#>
    @prefix foaf: <http://xmlns.com/foaf/0.1>
    s:Sabin a               s:Persoana ;
              foaf:knows s:Andrei ;
              foaf:knows s:Ciprian ;
              foaf:knows s:Emanuel .

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                <curs desc=“…” />




                   rdf: serializare – RDF/XML
   “Formatul cartii referite printr‐un ISBN este disponibil
          ca text obisnuit, HTML sau Postscript.”
    <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#
           xmlns:dc=http://purl.org/dc/elements/1.1/>
       <rdf:Description rdf:about=urn:0-201-00023-7>
        <dc:format>
           <rdf:Alt>
             <rdf:li>text/html</rdf:li>
             <rdf:li>text/plain</rdf:li>
             <rdf:li>application/postscript</rdf:li>
           </rdf:Alt>
        </dc:format>
       </rdf:Description>
    </rdf:RDF>
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                    rdf: serializare – grafuri
   “Formatul cartii referite printr‐un ISBN este disponibil
          ca text obisnuit, HTML sau Postscript.”




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                            <curs desc=“…” />




                           rdf – noduri vide

                      Problema:
 Cum reprezentam o resursa ce nu are identitate pe Web?


           in unele situatii, cunoastem anumite aspecte
             privitoare la “ceva”, fara a‐i sti identitatea




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                  <curs desc=“…” />




                           rdf – noduri vide

    Exemplu: o companie/persoana lucreaza la un produs
          a carui identitate ramine necunoscuta

    soft:ProdusX           rdf:type    soft:Aplicatie ;
                           s:areStatut lic:Deschis .
    com:Google             s:produce soft:ProdusX .

                                                    Cum procedam
                                                    daca nu‐i stim
                                                      numele?


Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                               <curs desc=“…” />




                            rdf – noduri vide

                   Recurgem la specificarea unui nod vid
                          (blanc node – bnode)

       “Exista o aplicatie (software) produsa de Google.” 

         [ rdf:type    soft:Aplicatie ;
           s:areStatut lic:Deschis ]


                    un nod blanc nu are asociat un URI

Dr. Sabin Buraga    http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                               <curs desc=“…” />




                            rdf – noduri vide

                   Recurgem la specificarea unui nod vid
                          (blanc node – bnode)

       “Exista o aplicatie (software) produsa de Google.” 

         com:Google s:produce
              [ rdf:type    soft:Aplicatie ;
                s:areStatut lic:Deschis ] .



Dr. Sabin Buraga    http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                          <curs desc=“…” />




                                 rdf: utilizari


   Uzual, asertiunile RDF specifica meta‐date privitoare la
        aspecte care privesc caracteristicile “externe”
   ale unei resurse: autor, tip, data publicarii, copyright,...

    RDF poate fi util pentru descrierea resurselor “opace”
            (cu reprezentari in formate binare)
          e.g., multimedia – fisiere audio, video,…


Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                            <curs desc=“…” />




                                 rdf: utilizari

  Asocierea de vocabulare de meta‐date privind resursele:
          DCMI (Dublin Core Metadata Initiative)
                 FOAF (Friend Of A Friend)
              DOAP (Description Of A Project)
                          RDFa
     SKOS (Simple Knowledge Organizational System)
                            …


                   a se vizita http://purl.org/vocab/

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                              <curs desc=“…” />




                                 rdf: utilizari


                Vocabulare de meta‐date
         DCMI – Dublin Core Metadata Initiative

            proprietati pentru descrierea resurselor:
    <dc:Title>, <dc:Description>, <dc:Contributor>, <dc:Publisher>, 
                  <dc:Date>, <dc:Type>, <dc:Subject>,…

                            www.dublincore.org
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                 rdf: utilizari


                        Relatii intre persoane
                      FOAF – Friend Of A Friend

            exprima informatii despre o persoana
             si relatiile acesteia cu alte persoane

    suport pentru e‐comunitati (social networking)

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                               <curs desc=“…” />




                                 rdf: utilizari

                        Relatii intre persoane
                      FOAF – Friend Of A Friend
                           http://rdfweb.org/
                meta‐date privitoare la o persoana:
         <foaf:Person>, <foaf:name>, <foaf:gender>, <foaf:title>,
             <foaf:mbox>, <foaf:homepage>, <foaf:weblog>,
                    <foaf:Image>, <foaf:depiction>,...

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                               <curs desc=“…” />




                                 rdf: utilizari


                        Relatii intre persoane
                      FOAF – Friend Of A Friend
                                 relatia knows
                    nu se specifica relatii mai rafinate
                       e.g., friendOf, collaboratorOf

      specializari: http://purl.org/vocab/relationship

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                   <curs desc=“…” />




                                  rdf: utilizari

                         Relatii intre persoane
                       FOAF – Friend Of A Friend
                                    Exemplu:
                         “Sabin il cunoaste pe Cristi.” 

                   @prefix foaf: <http://xmlns.com/foaf/0.1>
                     <#sabin> <foaf:knows> <#cristi> .


Dr. Sabin Buraga    http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  rdf: model




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                 rdf: utilizari
<foaf:Person rdf:nodeID=busaco>
   <foaf:name>Sabin Buraga</foaf:name>
   <foaf:title>Dr</foaf:title>
   <bio:keywords>...</bio:keywords>
   <bio:event>
    <bio:Birth>
     <bio:date>1974-07-01</bio:date>
     <bio:place>Iasi, Romania</bio:place>
    </bio:Birth>
                                          FOAF + BIO
   </bio:event>
</foaf:Person>
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                           <curs desc=“…” />




                                 rdf: utilizari


                   Relatii intre comunitati virtuale
   SIOC – Semantically­Interlinked Online Communities
    cadru pentru interconectarea siturilor de comunitati
     (blog, calendar, aggregator,…) & listele de discutii
      (precum bulletin board, mailing list, newsgroup)

                         foloseste RDF, FOAF, DCMI

                         http://sioc­project.org/
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                              <curs desc=“…” />




                                 rdf: utilizari

               Descrierea unui proiect (software)
               DOAP – Description Of A Project
                meta‐date privitoare la un proiect:
            <doap:Project>, <doap:name>, <doap:homepage>,
            <doap:description>, <doap:wiki>, <doap:maintainer>,
                   <doap:programming-language>,...

                       se bazeaza pe RDF si FOAF
                    http://usefulinc.com/ns/doap
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                 rdf: utilizari

 Asocierea de meta‐date documentelor hipermedia
   Adobe XMP (Extensible Metadata Platform)
              meta‐date “scufundate” in resursa Web
                utilizeaza XML si un subset al RDF
                bazat pe vocabulare DCMI, EXIF,...
             XMP SDK disponibil gratuit (ECMAScript)

                           www.adobe.com/xmp

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                 rdf: utilizari

   Specificarea constructiilor RDF direct in XHTML
                        RDFa
 utilizarea unor atribute XHTML specifice menite a modela
     informatiile disponibile intr‐o pagina Web in vederea
             procesarii acestora de catre calculator

                www.w3.org/TR/rdfa­syntax
              www.w3.org/TR/xhtml­rdfa­primer/

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                 rdf: utilizari

   Specificarea constructiilor RDF direct in XHTML
                        RDFa
  specificarea relatiilor unei pagini cu alt document extern 
                       folosind atributul rel
      asocierea de proprietati unor elemente XHTML
                      via atributul property
   specificarea de proprietati unei resurse date de about
      desemnarea tipului unei constructii prin typeof

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                <curs desc=“…” />




                                 rdf: utilizari
     Exemplu: modelarea retelei sociale a unui utilizator

<div about=#me rel=foaf:knows>
 <ul>
  <li typeof=foaf:Person>
    <a property=foaf:name rel=foaf:homepage href=...>Tux</a></li>
  <li typeof=foaf:Person>
    <a property=foaf:name rel=foaf:homepage href=...>Anca</a></li>
  <li typeof=foaf:Person>
    <a property=foaf:name rel=foaf:homepage href=...>Cip</a></li>
 </ul>
 <p>Created by <span property=dc:creator>WordPress</span>.</p>
</div>

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                           <curs desc=“…” />




                               rdf: exemplu

                   Despre documentul de la adresa 
                   http://www.infoiasi.ro/~busaco/
                    se specifica următoarele fapte: 
                  are titlul „Situl lui Sabin”
                    a fost vizitat de „ceva”
                  …care se numeşte Dragoş
  …şi care are situl personal la adresa http://www.adt.ro/




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                         <curs desc=“…” />




                               rdf: exemplu

  <rdf:Description rdf:about=http://www.infoiasi.ro/~busaco/>
  <viz:vizitatDe>
    <rdf:Description>
     <foaf:homepage rdf:resource=http://www.adt.ro/ />
     <foaf:name>Dragoş</foaf:name>
    </rdf:Description>
  </viz:vizitatDe>
  <dc:title>Situl lui Sabin</dc:title>
                                               RDF/XML
  </rdf:Description>


Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                            <curs desc=“…” />




                               rdf: exemplu




                                                    Ca graf…


Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                              <curs desc=“…” />




                               rdf: exemplu
  <http://www.infoiasi.ro/~busaco/>
     <http://purl.org/dc/elements/1.1/title> Situl lui Sabin .
  _:blanc <http://xmlns.com/foaf/0.1/homepage>
     <http://www.adt.ro/> .
  _:blanc <http://xmlns.com/foaf/0.1/name> Dragoş .
  <http://www.infoiasi.ro/~busaco/>
     <urn:infoiasi.ro:Vizite#vizitatDe> _:blanc .
                                                      Triple

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                             <curs desc=“…” />




                               rdf: exemplu
  <meta about=http://www.infoiasi.ro/~busaco/>
   <meta property=viz:vizitatDe>
     <meta property=foaf:name>Dragoş</meta>
     <link rel=foaf:homepage href=http://www.adt.ro/ />
    </meta>
    <meta property=dc:title>Situl lui Sabin</meta>
  </meta>

                                                    XHTML 2.0


Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                           <curs desc=“…” />




                                    concluzii

     Modelul RDF permite formularea de asertiuni
        explicite privitoare la resursele Web

            se folosesc triple (subiect, predicat, obiect)
                        referite prin URI‐uri




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                           <curs desc=“…” />




                                    concluzii

    RDF “helps you to create Web­like relationships 
        between data, which is not easily done
           in a typical relational database.”

                   Microsoft Developer Network, 2006




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                         <curs desc=“…” />




                                    concluzii

    RDF ofera premisa modelarii interconexiunilor
         web‐urilor diferite existente pe Web


       a se (re)vedea initiativa Linked Open Data
                            www.linkeddata.org

                   >2 miliarde de triple RDF
      >3 milioane de legaturi stabilite intre seturi de date

Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                   Rezumat




            Baza Web‐ului semantic: modelul RDF



Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                         ?

Dr. Sabin Buraga   http://www.purl.org/net/busaco

Mais conteúdo relacionado

Mais 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 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
 
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
 

Mais 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 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...
 
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
 

Último

Català Individual 3r - Víctor.pdf JOCS FLORALS
Català Individual 3r - Víctor.pdf JOCS FLORALSCatalà Individual 3r - Víctor.pdf JOCS FLORALS
Català Individual 3r - Víctor.pdf JOCS FLORALSErnest Lluch
 
Castellà parelles 2n - Abril i Irina.pdf
Castellà parelles 2n - Abril i Irina.pdfCastellà parelles 2n - Abril i Irina.pdf
Castellà parelles 2n - Abril i Irina.pdfErnest Lluch
 
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...Eesti Loodusturism
 
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptxRESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptxscbastidasv
 
Català parelles 3r - Emma i Ariadna (1).pdf
Català parelles 3r - Emma i Ariadna (1).pdfCatalà parelles 3r - Emma i Ariadna (1).pdf
Català parelles 3r - Emma i Ariadna (1).pdfErnest Lluch
 
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdfمحاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdfKhaled Elbattawy
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning ProjectNuckles
 

Último (8)

Català Individual 3r - Víctor.pdf JOCS FLORALS
Català Individual 3r - Víctor.pdf JOCS FLORALSCatalà Individual 3r - Víctor.pdf JOCS FLORALS
Català Individual 3r - Víctor.pdf JOCS FLORALS
 
Castellà parelles 2n - Abril i Irina.pdf
Castellà parelles 2n - Abril i Irina.pdfCastellà parelles 2n - Abril i Irina.pdf
Castellà parelles 2n - Abril i Irina.pdf
 
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
 
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptxRESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
 
Català parelles 3r - Emma i Ariadna (1).pdf
Català parelles 3r - Emma i Ariadna (1).pdfCatalà parelles 3r - Emma i Ariadna (1).pdf
Català parelles 3r - Emma i Ariadna (1).pdf
 
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdfمحاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
Díptic IFE (2) ifeifeifeife ife ife.pdf
Díptic IFE (2)  ifeifeifeife ife ife.pdfDíptic IFE (2)  ifeifeifeife ife ife.pdf
Díptic IFE (2) ifeifeifeife ife ife.pdf
 

Web03 Semantic Web: Resource Description Framework

  • 1. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> Web semantic Dr. Sabin­Corneliu Buraga Facultatea de Informatica Universitatea “A.I.Cuza” – Iasi, Romania http://www.infoiasi.ro/~busaco/ Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 2. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> Resource Description Framework Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 3. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> “Lucrurile au si ele viata.  Totul este sa le trezesti sufletul.” Gabriel García Márquez Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 4. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> intrebari Cum (re)folosim datele distribuite pe Web? Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 5. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> necesitati O maniera de a atasa date privitoare la date creare de vocabulare de termeni descriind “ceva”  (proprietati, domenii, lumi,...) – resurse Web Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 6. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> necesitati Un mod de a specifica relatii intre resurse structuri de organizare a datelor in cadrul unui sau mai multor web‐uri Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 7. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> realitati Uzual, datele sunt reprezentate in forma tabelara modelul relational un rand descrie un “obiect” (item) specific o coloana reprezinta o proprietate a tuturor item‐ilor  o celula desemneaza o valoare particulara a unei proprietati asociate obiectului de interes Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 8. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> exemplu Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 9. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> motivatie Distribuirea datelor pe Web fragmente de informatii vor fi disponibile pe calculatoare diferite, accesate via tehnologiile Web actuale Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 10. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> motivatie Distribuirea datelor pe Web solutia 1: fiecare calculator mentine informatiile despre mai multe randuri complete dintr‐un tabel Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 11. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> exemplu Distribuirea datelor pe Web Care‐i schema  comuna? Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 12. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> motivatie Distribuirea datelor pe Web solutia 1: fiecare calculator mentine informatiile despre mai multe randuri complete dintr‐un tabel necesitatea unui mecanism de coordonare intre servere e.g., partajarea schemei comune folosite Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 13. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> motivatie Distribuirea datelor pe Web solutia 2: fiecare calculator e responsabil cu una/mai multe coloane  complete din cadrul tabelului Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 14. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> exemplu Distribuirea datelor pe Web Cine refera pe cine? Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 15. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> motivatie Distribuirea datelor pe Web solutia 2: fiecare calculator e responsabil cu una/mai multe coloane  complete din cadrul tabelului necesitatea cunoasterii identitatii datelor modelate e.g., fiecare resursa are asociat un identificator global Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 16. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> motivatie Distribuirea datelor pe Web solutia 3: fiecare masina realizeaza managementul unui numar de celule dintr‐un tabel Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 17. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> exemplu Distribuirea datelor pe Web Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 18. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> motivatie Distribuirea datelor pe Web solutia 3: fiecare masina realizeaza managementul unui numar de celule dintr‐un tabel combina avantajele abordarilor precedente Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 19. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> motivatie Distribuirea datelor pe Web solutia 3: fiecare masina realizeaza managementul unui numar de celule dintr‐un tabel fiecare celula trebuie referita de 3 valori unice: o referinta globala ce desemneaza un rand + o referinta globala ce desemneaza o coloana + o referinta globala ce specifica valoarea celulei Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 20. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf Resource Description Framework cadru (abstract) pentru descrierea resurselor la nivelul calculatorului fundatie a Web‐ului semantic Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 21. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf Recomandare W3C RDF Model & Syntax Specification (1999) RDF/XML Syntax Specification – Revised (2004) http://www.w3.org/RDF Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 22. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf Ofera modalitatile de specificare a triplelor (rand, coloana, valoare de celula) via identificatori uniformi de resurse – URI URI URI URI Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 23. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Resursa – specificata de URI‐uri Proprietate – aspect, caracteristica, atribut sau relatie Declaratie – triplu de forma { subiect, predicat, obiect } Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 24. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Subiect = rand (resursa despre care se “spune” ceva) Predicat = coloana (o proprietate a subiectului) Obiect = celula (valoare particulara a proprietatii) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 25. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Subiect Resursa – specificata de un URI – care este descrisa via predicat si obiect Predicat Relatie – desemnata de un URI – stabilita intre subiect si obiect Poate fi considerat si drept atribut (proprietate) Obiect Desemneaza resursa referita de un predicat sau specifica o valoare Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 26. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model – exemplu Subiect Predicat Obiect Apple produce iTunes Microsoft produce Office Vocabular de termeni PHP areStatut Deschis Office areStatut Comercial IBM este Companie Microsoft este Companie Java este Limbaj Excel parteDin Office Sabin localizatIn Romania Sabin utilizeaza iTunes Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 27. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Atunci cand mai multe triple refera aceeasi resursa,  le putem reprezenta sub forma de grafuri triplu = muchie intre subiect si obiect predicat = eticheta asociata muchiei digrafului Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 28. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model – exemplu Graful unui model conceptual referitor la un web: utilizeaza Sabin parteDin este Excel Office Persoana areStatut produsDe produce Comercial Microsoft areStatut este Apple este Mac OS X produce Companie Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 29. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Predicatele specifica natura relatiilor ce pot fi stabilite intre subiect si obiect se pot exprima folosind vocabulare publicate pe Web, ce sunt disponibile liber si sunt referite de URI Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 30. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Modelul pus la dispozitie poate fi folosit la asocierea de meta­date resurselor Web si la specificarea relatiilor dintre resurse se poate utiliza si o sintaxa XML  Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 31. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model – exemplu Autorul resursei desemnate de URI‐ul http://www.infoiasi.ro/~web/ este Sabin Buraga <rdf:RDF> <rdf:Description rdf:about=http://www.infoiasi.ro/~web/> <s:Autor>Sabin Buraga</s:Autor> </rdf:Description> </rdf:RDF> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 32. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model – exemplu Alternative sintactice: autor (http://www.infoiasi.ro/~web/, Sabin Buraga) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 33. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model – exemplu Alternative sintactice: isA sau a este (#Java, #Limbaj) este (#Sabin, #Persoana) utilizeaza (#Sabin, #iTunes) utilizeaza (#Sabin, http://twitter.com/) refera (http://twitter.com/busaco, http://www.purl.org/net/busaco) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 34. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model – exemplu Cuvintul englezesc “book” e tradus in limba romana prin “carte” translatedInto (#book, carte) Termenul “book” este un substantiv isA (#book, #noun) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 35. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Un nod al grafului RDF e referit unic via un URI doar etichetind resursele cu nume – e.g., “Companie”, “produce”, “Java”,… – nu se garanteaza ca specificam acelasi concept (aceeasi resursa) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 36. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Un nod al grafului RDF e referit unic via un URI pot exista alte entitati care refera aceleasi conventii sintactice cu alte semantici Java (insula) vs. Java (sortiment de cafea) vs. Java (limbaj) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 37. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Un nod al grafului RDF e referit unic via un URI folosind URI‐uri, putem fuziona (merge) grafuri referitoare la concepte comune daca doi agenti doresc sa refere aceeasi resursa, trebuie ales un URI menit a desemna in mod unic aceasta resursa Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 38. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Un URI ofera o identificare globala a unei resurse putem stabili – via URI – semnificatia unui termen http://geo.locations.info#java urn:coffee:java http://programming.org/Java in cazul grafurilor, un nod fuzioneaza cu altul daca e referit de acelasi URI Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 39. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Putem exprima URI‐urile via nume calificate (qualified names – qnames) spatiu de nume:termen constructie XML  (e.g., nume de  element) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 40. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Via nume calificate desemnam vocabulare de termeni coffee:Java geo:Java geo:Romania geo:USA lang:C# lang:Java lang:PHP lang:Ruby s:areStatut s:este s:produce soft:iTunes soft:Office soft:XWiki xsd:integer xsd:string Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 41. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Subiect Predicat Obiect com:Apple s:produce soft:iTunes com:Microsoft s:produce soft:Office lang:PHP s:areStatut lic:Deschis soft:Office s:areStatut lic:Comercial com:IBM s:este s:Companie lang:Java s:este s:Limbaj soft:Excel s:parteDin soft:Office pers:Sabin s:localizatIn geo:Romania pers:Sabin s:utilizeaza soft:iTunes Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 42. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Spatiile de nume implicite (default) pot fi omise util daca se utilizeaza vocabularul local :Persoana :cunoastePe :localizatIn Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 43. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Meta‐datele pot fi asociate unor resurse deja definite: <rdf:Description rdf:ID=csb> <s:Rol>prezentator la &lt;Web /&gt;</s:Rol> </rdf:Description> Vocabular de termeni ... <rdf:Description rdf:about=#csb> <s:Adresa>http://www.purl.org/net/busaco</s:Adresa> </rdf:Description> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 44. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Colectii de resurse: bag (multi‐set), secventa, alternativa “Cartea Programarea in Web 2.0 are ca autori pe Anca, Ciprian si Ecaterina.” <rdf:RDF> <rdf:Description rdf:about=http://webpro20.blogspot.com/> <s:Autor> <rdf:Bag> <rdf:li rdf:resource=http://students.infoiasi.ro/~lucaa/ /> <rdf:li rdf:resource=http://www.2wit.com/ /> <rdf:li rdf:resource=http://students.infoiasi.ro/~evalica/ /> </rdf:Bag> </s:Autor> Bag, Seq, Alt </rdf:Description> </rdf:RDF> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 45. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Specificarea tipurilor de date intr‐un model RDF se realizeaza via proprietatea predefinita rdf:type Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 46. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model – exemplu Subiect Predicat Obiect com:Adobe rdf:type s:Companie com:Microsoft rdf:type s:Companie lang:Java rdf:type s:Limbaj geo:Romania rdf:type geo:Stat pers:Ecaterina rdf:type s:Autor s:utilizeaza rdf:type rdf:Property s:parteDin rdf:type rdf:Property foaf:knows rdf:type rdf:Property Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 47. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Se pot exprima si relatii non‐binare,  apelindu‐se la o resursa intermediara <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# xmlns:un=http://www.schemas.org/Units/> <rdf:Description rdf:about=urn:ISBN:0-201-00023-7> <un:price rdf:parseType=Resource> <rdf:value>33.00</rdf:value> <un:units rdf:resource=http://www.schemas.org/Units/USdollar/> </un:price> </rdf:Description> </rdf:RDF> Costul cartii referite de ISBN‐ul ei este de 33 $ Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 48. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Reificare: declaratii despre declaratii faptul 1: Sabin‐Corneliu Buraga este autorul resursei desemnate de URI‐ul http://www.infoiasi.ro/~busaco/ faptul 2: Dan Cristea afirma ca Sabin‐Corneliu Buraga este autorul resursei desemnate de  URI‐ul http://www.infoiasi.ro/~busaco/ astfel, pot fi modelate meta‐date privitoare la meta‐date Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 49. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Stabilirea modului de procesare a declaratiilor se face prin parseType Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 50. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Atributul parseType=Literal poate fi utilizat pentru ca procesorul RDF sa nu prelucreze continutul unui anumit element <dc:title rdf:parseType=Literal> F.Kafka: <html:strong>Procesul</html:strong> </dc:title> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 51. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Atributul parseType=Resource se foloseste pentru a semnala faptul ca e vorba de o resursa si nu de o valoare Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 52. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Pentru a specifica explicit o asertiune privitoare la o alta asertiune, RDF ofera trei resurse speciale: rdf:subject rdf:predicate rdf:object explicit reification Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 53. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model – exemplu “Wikipedia afirma faptul ca Apple produce iTunes.” p:prop rdf:subject com:Apple ; rdf:predicate s:produce ; rdf:object soft:iTunes . web:Wikipedia s:afirma p:prop . Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 54. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model – exemplu “Wikipedia afirma faptul ca Apple produce iTunes.” p:prop rdf:subject com:Apple ; rdf:predicate s:produce ; rdf:object soft:iTunes . web:Wikipedia s:afirma p:prop . A nu se confunda cu declaratia: com:Apple s:produce soft:iTunes . Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 55. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: serializare Modelul RDF nu este “legat” de o anumita sintaxa Sintaxele “standard” utilizate sunt: digrafuri (reprezentari grafice) N­triple N3 RDF/XML http://internetalchemy.org/2005/09/the-sixteen-faces-of-eve Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 56. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: serializare – N‐triples Refera resursele via URI‐uri absolute scrise intre “<“ si “>”,  in ordinea subiect‐predicat‐obiect, urmate de “.” <http://www.infoiasi.ro/SW.rdf#Sabin> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.infoiasi.ro/SW.rdf#Autor> . a se consulta si www.w3.org/2007/02/turtle/primer/ Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 57. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: serializare – N3 Notation 3 RDF (N3) recurge la nume calificate – qnames @prefix s: <http://www.infoiasi.ro/SW.rdf#> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> s:Sabin rdf:type s:Autor . uzual, specificat prin a Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 58. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: serializare – N3 Notation 3 RDF (N3) faptul “Sabin este o persoana si‐i cunoaste pe Andrei, Ciprian si Emanuel” se poate modela prin:  @prefix s: <http://www.infoiasi.ro/SW.rdf#> @prefix foaf: <http://xmlns.com/foaf/0.1> s:Sabin a s:Persoana ; foaf:knows s:Andrei ; foaf:knows s:Ciprian ; foaf:knows s:Emanuel . Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 59. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: serializare – RDF/XML “Formatul cartii referite printr‐un ISBN este disponibil ca text obisnuit, HTML sau Postscript.” <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# xmlns:dc=http://purl.org/dc/elements/1.1/> <rdf:Description rdf:about=urn:0-201-00023-7> <dc:format> <rdf:Alt> <rdf:li>text/html</rdf:li> <rdf:li>text/plain</rdf:li> <rdf:li>application/postscript</rdf:li> </rdf:Alt> </dc:format> </rdf:Description> </rdf:RDF> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 60. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: serializare – grafuri “Formatul cartii referite printr‐un ISBN este disponibil ca text obisnuit, HTML sau Postscript.” Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 61. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf – noduri vide Problema: Cum reprezentam o resursa ce nu are identitate pe Web? in unele situatii, cunoastem anumite aspecte privitoare la “ceva”, fara a‐i sti identitatea Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 62. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf – noduri vide Exemplu: o companie/persoana lucreaza la un produs a carui identitate ramine necunoscuta soft:ProdusX rdf:type soft:Aplicatie ; s:areStatut lic:Deschis . com:Google s:produce soft:ProdusX . Cum procedam daca nu‐i stim numele? Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 63. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf – noduri vide Recurgem la specificarea unui nod vid (blanc node – bnode) “Exista o aplicatie (software) produsa de Google.”  [ rdf:type soft:Aplicatie ; s:areStatut lic:Deschis ] un nod blanc nu are asociat un URI Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 64. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf – noduri vide Recurgem la specificarea unui nod vid (blanc node – bnode) “Exista o aplicatie (software) produsa de Google.”  com:Google s:produce [ rdf:type soft:Aplicatie ; s:areStatut lic:Deschis ] . Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 65. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Uzual, asertiunile RDF specifica meta‐date privitoare la aspecte care privesc caracteristicile “externe” ale unei resurse: autor, tip, data publicarii, copyright,... RDF poate fi util pentru descrierea resurselor “opace” (cu reprezentari in formate binare) e.g., multimedia – fisiere audio, video,… Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 66. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Asocierea de vocabulare de meta‐date privind resursele: DCMI (Dublin Core Metadata Initiative) FOAF (Friend Of A Friend) DOAP (Description Of A Project) RDFa SKOS (Simple Knowledge Organizational System) … a se vizita http://purl.org/vocab/ Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 67. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Vocabulare de meta‐date DCMI – Dublin Core Metadata Initiative proprietati pentru descrierea resurselor: <dc:Title>, <dc:Description>, <dc:Contributor>, <dc:Publisher>,  <dc:Date>, <dc:Type>, <dc:Subject>,… www.dublincore.org Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 68. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Relatii intre persoane FOAF – Friend Of A Friend exprima informatii despre o persoana si relatiile acesteia cu alte persoane suport pentru e‐comunitati (social networking) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 69. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Relatii intre persoane FOAF – Friend Of A Friend http://rdfweb.org/ meta‐date privitoare la o persoana: <foaf:Person>, <foaf:name>, <foaf:gender>, <foaf:title>, <foaf:mbox>, <foaf:homepage>, <foaf:weblog>, <foaf:Image>, <foaf:depiction>,... Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 70. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Relatii intre persoane FOAF – Friend Of A Friend relatia knows nu se specifica relatii mai rafinate e.g., friendOf, collaboratorOf specializari: http://purl.org/vocab/relationship Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 71. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Relatii intre persoane FOAF – Friend Of A Friend Exemplu: “Sabin il cunoaste pe Cristi.”  @prefix foaf: <http://xmlns.com/foaf/0.1> <#sabin> <foaf:knows> <#cristi> . Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 72. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: model Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 73. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari <foaf:Person rdf:nodeID=busaco> <foaf:name>Sabin Buraga</foaf:name> <foaf:title>Dr</foaf:title> <bio:keywords>...</bio:keywords> <bio:event> <bio:Birth> <bio:date>1974-07-01</bio:date> <bio:place>Iasi, Romania</bio:place> </bio:Birth> FOAF + BIO </bio:event> </foaf:Person> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 74. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Relatii intre comunitati virtuale SIOC – Semantically­Interlinked Online Communities cadru pentru interconectarea siturilor de comunitati (blog, calendar, aggregator,…) & listele de discutii (precum bulletin board, mailing list, newsgroup) foloseste RDF, FOAF, DCMI http://sioc­project.org/ Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 75. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Descrierea unui proiect (software) DOAP – Description Of A Project meta‐date privitoare la un proiect: <doap:Project>, <doap:name>, <doap:homepage>, <doap:description>, <doap:wiki>, <doap:maintainer>, <doap:programming-language>,... se bazeaza pe RDF si FOAF http://usefulinc.com/ns/doap Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 76. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Asocierea de meta‐date documentelor hipermedia Adobe XMP (Extensible Metadata Platform) meta‐date “scufundate” in resursa Web utilizeaza XML si un subset al RDF bazat pe vocabulare DCMI, EXIF,... XMP SDK disponibil gratuit (ECMAScript) www.adobe.com/xmp Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 77. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Specificarea constructiilor RDF direct in XHTML RDFa utilizarea unor atribute XHTML specifice menite a modela informatiile disponibile intr‐o pagina Web in vederea procesarii acestora de catre calculator www.w3.org/TR/rdfa­syntax www.w3.org/TR/xhtml­rdfa­primer/ Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 78. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Specificarea constructiilor RDF direct in XHTML RDFa specificarea relatiilor unei pagini cu alt document extern  folosind atributul rel asocierea de proprietati unor elemente XHTML via atributul property specificarea de proprietati unei resurse date de about desemnarea tipului unei constructii prin typeof Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 79. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: utilizari Exemplu: modelarea retelei sociale a unui utilizator <div about=#me rel=foaf:knows> <ul> <li typeof=foaf:Person> <a property=foaf:name rel=foaf:homepage href=...>Tux</a></li> <li typeof=foaf:Person> <a property=foaf:name rel=foaf:homepage href=...>Anca</a></li> <li typeof=foaf:Person> <a property=foaf:name rel=foaf:homepage href=...>Cip</a></li> </ul> <p>Created by <span property=dc:creator>WordPress</span>.</p> </div> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 80. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: exemplu Despre documentul de la adresa  http://www.infoiasi.ro/~busaco/ se specifica următoarele fapte:  are titlul „Situl lui Sabin” a fost vizitat de „ceva” …care se numeşte Dragoş …şi care are situl personal la adresa http://www.adt.ro/ Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 81. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: exemplu <rdf:Description rdf:about=http://www.infoiasi.ro/~busaco/> <viz:vizitatDe> <rdf:Description> <foaf:homepage rdf:resource=http://www.adt.ro/ /> <foaf:name>Dragoş</foaf:name> </rdf:Description> </viz:vizitatDe> <dc:title>Situl lui Sabin</dc:title> RDF/XML </rdf:Description> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 82. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: exemplu Ca graf… Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 83. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: exemplu <http://www.infoiasi.ro/~busaco/> <http://purl.org/dc/elements/1.1/title> Situl lui Sabin . _:blanc <http://xmlns.com/foaf/0.1/homepage> <http://www.adt.ro/> . _:blanc <http://xmlns.com/foaf/0.1/name> Dragoş . <http://www.infoiasi.ro/~busaco/> <urn:infoiasi.ro:Vizite#vizitatDe> _:blanc . Triple Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 84. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> rdf: exemplu <meta about=http://www.infoiasi.ro/~busaco/> <meta property=viz:vizitatDe> <meta property=foaf:name>Dragoş</meta> <link rel=foaf:homepage href=http://www.adt.ro/ /> </meta> <meta property=dc:title>Situl lui Sabin</meta> </meta> XHTML 2.0 Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 85. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> concluzii Modelul RDF permite formularea de asertiuni explicite privitoare la resursele Web se folosesc triple (subiect, predicat, obiect) referite prin URI‐uri Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 86. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> concluzii RDF “helps you to create Web­like relationships  between data, which is not easily done in a typical relational database.” Microsoft Developer Network, 2006 Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 87. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> concluzii RDF ofera premisa modelarii interconexiunilor web‐urilor diferite existente pe Web a se (re)vedea initiativa Linked Open Data www.linkeddata.org >2 miliarde de triple RDF >3 milioane de legaturi stabilite intre seturi de date Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 88. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 89. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> Rezumat Baza Web‐ului semantic: modelul RDF Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 90. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> ? Dr. Sabin Buraga http://www.purl.org/net/busaco