SlideShare una empresa de Scribd logo
1 de 106
Descargar para leer sin conexión
<?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=“…” />




                     Inginerie ontologica




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




             “It is not the strongest of the species 
            that survive, nor the most intelligent, 
           but the ones most responsive to change.”

                              Charles Darwin




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




                                       intro


   Folosind ontologiile, putem modela cunostintele
                knowledge modeling

      Apare necesitatea managementului acestora
               knowledge management



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




                                       intro


     Aspecte privind managementul cunostintelor
              (Shadbolt & O’Hara, 2004):
                            achizitia (acquiring)
                          modelarea (modelling)
                           reutilizarea (reusing)
                           preluarea (retrieving)
                          publicarea (publishing)
                         mentinerea (maintaining)

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




              managementul cunostintelor

                    Achizitia (acquiring)
        aplicatiile Web trebuie sa preia cunostinte,
              nu date brute, fara semnificatie
           e.g., texte (formatate) preluate din formulare

              utilizatorii obisnuiti nu vor marca datele
                        in XML, RDF sau OWL

      conceptele trebuie stocate ca informatii structurate

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




              managementul cunostintelor

                         Modelarea (modelling)
   ideal, fiecare fragment de informatie trebuie modelat
                     riguros la nivel semantic
       in practica, acest aspect este aproape imposibil
  vezi dificultatile de dezambiguizare a limbajului natural

             pasi de urmat: identificarea claselor,
     definirea proprietatilor, completarea datelor despre
       indivizi (input explicit, tagging, microformate etc.)

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




              managementul cunostintelor


                          Reutilizarea (reusing)
      fiecare entitate trebuie definita doar o singura data

              informatiile trebuie sa poata fi accesate
            la nivel global (eventual, via politici de acces)

     facilitarea reutilizarii este data de usurinta utilizarii
       sistemului (e.g., sintaxa simpla, asistenti digitali, 
                          flexibilitate etc.)

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




              managementul cunostintelor


                          Preluarea (retrieving)
      mecanisme de interogare si filtrare a cunostintelor

oferirea de suport pentru efectuarea de agregari, procesari
    si extrageri de informatii, in maniera (semi)automata,
       pe baza meta‐datelor si relatiilor dintre entitati

            exemplu: extragerea intereselor comune
          ale membrilor unui grup dintr‐o retea sociala

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




              managementul cunostintelor

                          Publicarea (publishing)
            cunostintele trebuie sa poata fi publicate
                     in formate standardizate, 
          care sa incurajeze refolosirea in alte contexte
                    accesul la cunostinte are in vedere
                   atit utilizatorii umani, cit si aplicatiile




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




              managementul cunostintelor

                         Publicarea (publishing)
            cunostintele trebuie sa fie usor redate, 
        conform necesitatilor si preferintelor utilizatorilor
        depozitele de cunostinte trebuie sa ofere export
               in formate consacrate (RDF, OWL)




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




              managementul cunostintelor


                       Mentinerea (maintaining)
       necesitatea existentei unor servicii care sa asigure
                   consistenta cunostintelor

            un suport manual poate fi oferit de wiki‐uri

           serviciile automate se pot baza pe reasoners



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




              managementul cunostintelor




                                                                         Adaptare dupa Horrocks & Rector, 2004
             Ontologiile pot fi considerate drept
           lego‐uri conceptuale (Conceptual Lego)
  Masterand
  urm(ar)ind
    cursul
                                                    Agent Web
  “Semantic 
     Web”




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




              managementul cunostintelor

Ontologiile pot proveni din sau pot fi salvate sub forma de:
                       scheme XML,
                  scheme de baze de date,
                      diagrame UML,
                       spreadsheets,
                      alte specificatii




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




              managementul cunostintelor

  Probleme: 
      Crearea de ontologii din diverse surse
      Managementul versiunilor
      Realizarea colectiilor de ontologii (asocieri, 
        comparatii, reconcilieri, validari, conversii,...)
      Obtinerea, organizarea & vizualizarea domeniului de 
        cunoastere inainte si in timpul crearii unei ontologii
      Utilizarea ontologiilor in functie de context



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




                                  necesitate
          Existenta unor metodologii de inginerie
                      a cunostintelor
          (knowledge engineering methodologies)
    procesul prin care experti ai domeniului si ingineri
vor constitui o baza de cunostinte, specificata de un limbaj
            de reprezentare a cunostintelor si
           de o suita de instrumente aditionale

   procesele, limbajele si instrumentele care pot fi folosite
     se bazeaza pe diverse paradigme de reprezentare
                       a cunostintelor
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                          <curs desc=“…” />




                                    abordari


        Traditionale din ingineria software clasica
                 (knowledge engineering) 
                   CommonKADS (Scheriber et al., 2000)

                     Agile (mai flexibile & facile)
                       eXtreme Programming
                          XP.K (Knublauch, 2002), 
                          RapidOWL (Auer, 2005)

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




                                  observatii

             Dezvoltarea unei ontologii implica
            partajarea de informatii si colaborare

        “Knowledge is fractal” (Alan Rector, 2004)
     ontologiile prezinta aceeasi structura la fiecare nivel
                   de granularitate (detaliu)

 Atentie la dezvoltarile exponentiale ale ontologiei!
                      fenomenul “exploding bicycle”

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




                                   inginerie

                                  Complicatii:
         necunoasterea a­priori a dimensiunii ontologiei

                     numarul persoanelor implicate

               utilizarea ontologiei de catre utilizatori
                         care nu sunt experti

                               natural laziness ☺

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




                        inginerie: dificultati
                    Conflicte privitoare la intuitii

             intuitiile sunt dificil de formalizat
expertii in domeniu sunt condusi de obisnuinte si practica
   (sabloane de proiectare) prototipuri & generalizari

      logicienii sunt motivati de logica si computabilitate
                   definitii & operatori universali



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




                        inginerie: dificultati

                   Transparenta & predictibilitate
                   versus rigoare & completitudine



                      Utilizatorii fara experienta



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




                        inginerie: dificultati

              Studiu de caz – Peter Morville, 2007
                alergia la alune (peanut allergy):
          Acces urgent la informatii exacte & utile
            Credibilitatea surselor este esentiala
               Orice cautare pe Google esueaza
            (popularitate ≠ autoritate in domeniu)
      Cunostintele trebuie sa poate fi regasite pe Web
    (necesita expertiza in domeniu + abilitati avansate de 
                      cautare via motoare)
          Context: Information Architecture (IA)
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                        inginerie: dificultati

                                  Modelarea
Semantica (meaning): corectitudinea clasificarilor
               & extragerii cunostintelor
      Indexarea: desfasurarea activitatilor de 
     descoperire, cautare si gasire a cunostintelor
Utilizarea: introducerea datelor, luarea de decizii,...
         Achizitia: capt(ur)area cunoasterii


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




                        inginerie: dificultati

 Asigurarea calitatii & managementul modificarilor
                            Calitatea:
    stabilirea de criterii privitoare la ceea ce este “corect”

                            Evolutia: 
     luarea in calcul a schimbarilor viitoare ale ontologiei

                           Testarea: 
        controlul modificarilor, asigurarea calitatii (QA)

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




                        inginerie: dificultati

            Privitoare la persoanele implicate
         Aparitia confuziilor privitoare la termeni
                 si la utilizarea ontologiei

         Persoane provenind din medii eterogene
  filosofie, interactiune om‐calculator, inginerie software, 
                 lingvistica, stiinte cognitive,...

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




                          inginerie: realitati

           Gasirea dificila unor criterii formale
         (consistenta, completitudine, concizie,...)




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




                           inginerie: realitati

                   Generarea manuala a ontologiilor

         taxonomii navigabile: Open Directory, Yahoo!,...

                                     folksonomii

          ontologii publice – de exemplu, Gene Ontology

              ontologii interne – e.g., Daimler‐Chrysler


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




                          inginerie: realitati


Ontologiile generale (top­level) nu sunt cu adevarat
                 utile in practica




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




                          inginerie: realitati

        Apar probleme teoretice/practice privind:
                  asigurarea coerentei, 
                  facilitarea procesarii, 
           folosirea surselor de date multiple




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




                           inginerie: realitati

                    Diferite vocabulare in vigoare

                      clasa ≈ concept ≈ categorie ≈ tip

                                instanta ≈ individ

                      entitate ≈ obiect (clasa/individ)

                   proprietate ≈ slot ≈ relatie ≈ atribut ≈ 
                        ≈ rol ≈ legatura semantica
Dr. Sabin Buraga    http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                           <curs desc=“…” />




                          inginerie: realitati

                       Diferite sintaxe existente:
                             sintaxa abstracta,
                                     N3, 
                                 XML/RDF, 
                              logica de ordin I, 
                             formatul Protégé, 
                         limbaj natural (parafraza),
                                      ...

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




  metodologie (Noy & McGuinness, 2003)

             Stabilirea domeniului de cunoastere
                    Organizarea ontologiei
                     “Umplerea” ontologiei
                     Verificarea ontologiei
                      Publicarea ontologiei




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




                               metodologie


         Stabilirea domeniului de cunoastere

  asamblarea resurselor de informatie si expertiza
      a ceea ce vor deveni concepte (things)
            ale domeniului de interes

           se vor asigura consensul si consistenta

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




                               metodologie

                       Organizarea ontologiei
 proiectarea pe ansamblu a structurii conceptuale:
           Identificarea principalelor concepte concrete 
                     si a proprietatilor acestora
              Identificarea relatiilor dintre concepte
                   Crearea conceptelor abstracte
                      Identificarea instantelor
             Referentierea/includerea altor ontologii
                                  ...

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




                               metodologie

                       “Umplerea” ontologiei
                    adaugarea conceptelor
              inserarea relatiilor/constringerilor
                     adaugarea indivizilor



                  …la nivelul de detaliere necesar
               pentru realizarea scopurilor ontologiei

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




                               metodologie


                        Verificarea ontologiei

    reconcilierea inconsistentelor dintre elemente,
          la nivel sintactic, logic & semantic

 verificarea consistentei poate implica o clasificare
      automata, rezultind noi concepte bazate
  pe proprietati individuale sau relatii intre clase
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                               metodologie

                        Publicarea ontologiei

   verificarea finala de catre experti ai domeniului

       publicarea in cadrul comunitatii de practica




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




                                 metodologie

      Procesul ideal de dezvoltare a unei ontologii:
   determine       consider    enumerate     define     define       define          create
     scope          reuse        terms      classes   properties   constraints     instances




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




                                  metodologie

    Procesul realist de dezvoltare a unei ontologii:
    determine      consider    enumerate     consider        define    enumerate         define
      scope         reuse        terms        reuse         classes      terms          classes


     define         define      define         define        create      define         create
   properties      classes    properties     constraints   instances    classes       instances


   consider       define         define        create
    reuse       properties     constraints   instances




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




   metodologie (Rector & Horrocks, 2004)
                           Stabilirea scopului
                        Colectarea cunostintelor
                   (la nivel informal ori semi‐formal)
             Rafinarea cerintelor & testarea
         Implementarea (modelarea propriu‐zisa)
             Evaluarea & asigurarea calitatii
           Monitorizarea utilizarii si a evolutiei



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




                               metodologie

                           Stabilirea scopului
                                     cerinte, 
                                    evaluare,
                                   reutilizare,
                                        …




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




                               metodologie
                  Colectarea cunostintelor
             la nivel informal ori semi‐formal
                    Stabilirea termenilor
             Organizarea informala a termenilor
            Parafrazarea si clarificarea termenilor
               definitii informale ale conceptelor
              Realizarea de diagrame informale

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




                               metodologie
    Implementarea – modelarea propriu‐zisa
          Parafrazare & comentare la fiecare faza
          Dezvoltarea unei scheme normalizate si
                a unui “schelet” de ontologie
               Implementarea unui prototip
                   (consemnind intentiile) 
                   Verificarea scalabilitatii
             Popularea ontologiei – text mining,
           procesare a limbajului uman, microformate,
             XHTML/XML structurat (semantic) etc.
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                          <curs desc=“…” />




                               metodologie
              Evaluarea si asigurarea calitatii
                       Urmarirea scopului initial

 Includerea de verificari privind evolutia ontologiei
      si ajustarea manierei de management al ei

                   Proiectarea de teste si “probe”
            in mod similar testarii aplicatiilor software


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




                               metodologie

         Monitorizarea utilizarii si a evolutiei
                   (mentenanta)

         “Process not product” (Alan Rector, 2004)




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




                        aspecte importante
        Rationamentul lumilor inchise vs. deschise
          lumi deschise (open world reasoning)
   Negatia reprezinta contradictie (orice poate fi adevarat
           pina cind se poate demonstra ca e fals)
                   Se rationeaza in maniera:
      “orice alta lume poate fi consistenta cu aceasta”

              lumi inchise (close world reasoning)
   Negatia inseamna esec (orice nu poate fi gasit este fals)
         “Totul este valabil numai in aceasta lume”

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




                        aspecte importante

   Rationamentul lumilor inchise vs. deschise

        ontologiile sunt considerate lumi deschise,
              iar bazele de date lumi inchise




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




                        aspecte importante
                   Knowledge Base vs. Data Base

O baza de cunostinte (knowledge base) nu defineste
un model unic, ci reprezinta un set de constringeri
   care pot defini o multime de modele posibile

        nici o constringere orice model e posibil

            cu cit exista mai multe constringeri, 
         cu atit numarul modelelor posibile scade
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                <curs desc=“…” />




                        aspecte importante
                   Knowledge Base vs. Data Base

           O baza de date defineste un model unic

     numele diferite sunt interpretate ca indivizi distincti

  domeniul e compus numai din indivizii numiti in cadrul
           bazei de date (modelul lumii inchise)

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




                        aspecte importante
                   Knowledge Base vs. Data Base
                   Modelul unic (Bechhofer, 2004):
       expresivitate redusa – nu exista negatii/disjunctii

               nu poate captura informatii incomplete

              non‐monoton – adaugarea de informatii
                     nu pastreaza adevarul

     procesul de reasoning (interogare) este facil si rapid 

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




                        aspecte importante
                   Knowledge Base vs. Data Base
            Modelele multiple (Bechhofer, 2004):
   expresivitate ridicata – conectori booleeni, reuniune,...

          poate captura/exprima informatii incomplete

 monotonic – adaugarea de informatii pastreaza adevarul

     procesul de reasoning (interogare) este dificil si lent


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




                        aspecte importante

                      Activitatea de reasoning
         poate fi realizata automat de un reasoner

               clasificarea conceptelor – rezultind:
           un arbore (ierarhie stricta, taxonomie)
    un digraf aciclic – DAG (poli‐ierarhie, graf conceptual) 

     normalizare = separarea conceptelor de baza
   in arbori disjuncti, arborii avind legaturi intre ei
                 via definitii si restrictii
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                <curs desc=“…” />




                        aspecte importante
        Exemplu: o ontologie privitoare la animale
  Inainte de clasificare                            Dupa clasificare
     Arbore de concepte                                   DAG




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




                        aspecte importante

    Dezvoltarea unei ontologii normalizate presupune:
      Identificarea conceptelor de baza de sine‐statoare
      Separarea conceptelor in arbori de concepte
      Identificarea relatiilor
      Crearea descrierilor & definitiilor
      Identificarea modului in care elementele‐cheie
        trebuie clasificate
      Utilizarea clasificatorului pentru a forma DAG‐ul
      Verificarea satisfacerii testelor

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




                        aspecte importante
Dezvoltarea unei ontologii normalizate presupune:
    Identificarea conceptelor de baza de sine‐statoare
      (cu comentarea celor mai putin evidente)
    Separarea conceptelor in arbori de concepte
      (poate implica specific. unor proprietati/concepte auxiliare)
    Identificarea relatiilor
      (comentarea acelor relatii care nu sunt evidente)
    Crearea descrierilor & definitiilor
      (cu oferirea de parafraze pentru fiecare)
    Identificarea modului in care elementele‐cheie trebuie clasificate
      (crearea unor teste de regresie)
    Utilizarea clasificatorului pentru a forma DAG‐ul
    Verificarea satisfacerii testelor
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                               studiu de caz

    Modelarea unei ontologii privitoare la animale

                   adaptare dupa (Rector, 2004)




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




                               studiu de caz

                 Intentii & scopuri:
 realizarea unui index al unei carti despre animale,
             oferind informatii precum: 
                      locul unde traiesc
         ce consuma (carnivore, ierbivore, omnivore)
                  cit de periculoase pot fi
     ce anatomie de baza au – e.g., numarul picioarelor,...
                        ce greutate au
                              ...

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




                               studiu de caz


                      Colectarea conceptelor:
                   se pot folosi carduri de concepte

           se lucreaza in grupuri mici de persoane

               se pot atrage experti ai domeniului

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




                               studiu de caz
      Dog                                             Dangerous
                              Carnivore
      Cat                                             Pet
                              Plant
      Cow                                             Domestic animal
                              Animal
      Person                                          Farm animal
                              Fur
      Tree                                            Food animal
                              Child
      Grass                                           Fish
                              Parent
      Herbivore                                       Goldfish
                              Mother
      Male
                              Father                 Clase
      Female
                                                    posibile
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                <curs desc=“…” />




    studiu de caz: organizarea conceptelor

                              Carnivore
       Dog
                                                    Dangerous
                              Plant
       Cat
                                                    Pet
                              Animal
       Cow
                                                    Domestic 
                              Fur
       Person
                                                      animal
       Tree                   Child
                                                    Farm animal
       Grass                  Parent                Food animal
       Herbivore              Mother                Fish
       Male                   Father                Goldfish
       Female
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                               studiu de caz

                      Extinderea conceptelor
                  gruparea unor concepte
         si determinarea caracteristicilor comune:
                 Plant, Animal ↦ Living Thing 
ar putea fi adaugati ulterior si termeni ca Bacteria, Fungi,…
              Cat, Dog, Cow, Person ↦ Mammal
          alti candidati ar putea fi Goat, Sheep, Horse
                              etc.


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




                               studiu de caz

 Pentru facilitarea clasificarii, colectiile de subclase
          trebuie declarate explicit disjuncte

                          Plant disjointWith Animal




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




                               studiu de caz

Alegerea unor axe conceptuale
    Adaugarea de termeni abstracti
         De exemplu: “Living thing”
    Identificarea relatiilor
         De exemplu: “eats”, “owns”, “parent of”
    Identificarea entitatilor ce pot fi definite
         E.g., “child”, “parent”, “Mother”, “Father”
    Numirea explicita a conceptelor
         Utilizarea cunostintelor anterioare
         (background knowledge) – axiome
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                   <curs desc=“…” />




                               studiu de caz          Relations
 Living Thing                                            eats
                                                         owns
                                Modifiers
      Animal                                             parent‐of
                                     Domestic
          Mammal                                         …
                                           Pet
               Cat                         Farmed
               Dog                             Food
                                                      Definables
               Cow                   Wild
               Person                                    Carnivore
                                     Health
          Fish                             healthy       Herbivore
                                           sick
               Goldfish
                                                         Child
                                     Gender
      Plant                                              Parent
                                           Male
          Tree                                           Mother
                                           Female
          Grass                      Age                 Father
                                           Adult
          Fruit                                          Food Animal
                                           Child


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




                               studiu de caz

      Stabilirea entitatilor de sine‐statatoare:

     “Lucruri” ce exista conform substantivelor lor
              Oameni, animale, case, actiuni, procese,…
              Se utilizeaza majoritatea substantivelor

                        Modificatori (modifiers)
               “Lucruri” ce se pot preschimba in altele
                 Se folosesc adjectivele si adverbele

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




                               studiu de caz

       Reorganizam conceptele, grupind entitatile
          care pot fi definite in arbori separati

        constituirea conceptelor de baza (primitives)




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




                               studiu de caz
                                                           Relations
 Self_standing                                                eats
                                   Modifiers
     Living Thing                                             owns
                                        Domestication         parent‐of
         Animal                                Domestic
                                                              …
               Mammal                          Wild
                                        Use
                   Cat
                                                           Definables
                                               Food
                   Dog
                                               Pet            Carnivore
                   Cow
                                        Risk
                                                              Herbivore
                   Person                      Dangerous
               Fish                                           Child
                                               Safe
                   Gold                 Gender                Parent
                                               Male
                     fish
                                                              Mother
                                               Female
          Plant                         Age                   Father
               Tree                            Adult
                                                              Food Animal
               Grass                           Child
               Fruit

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




                               studiu de caz
 Self_standing
      Living Thing          Concept abstract incluzind toate entitatile vii 
          Animal           – restrictionat la plante si animale in acest moment
               Mammal
                   Cat
                   Dog
                   Cow
                   Person
               Fish
                   Gold
                     fish
                                        Adaugarea comentariilor
           Plant
                                        clarificatoare (parafraze)
               Tree
               Grass
               Fruit

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




                               studiu de caz

     Identificarea constringerilor privitoare la domeniu
   (domain) si interval (range) pentru fiecare proprietate:
    Animal eats Living_thing
         eats              domain:           Animal 
                           range:            Living_thing
    Person owns Living_thing except Person
         owns              domain:           Person
                           range:            Living_thing and not Person
    Living_thing parent_of Living_thing
         parent_of         domain:           Animal
                           range:            Animal

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




                               studiu de caz

   Pentru entitatile ce pot fi definite trebuie comentate si
   formalizate definitiile acestora in termeni de primitive,
           relatii si alte entitati ce pot fi definite




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




                               studiu de caz

   Exemplul 1: “A ‘Parent’ is an animal that is the parent of 
         some other animal” (Ignore plants for now)

      Parent =  Animal and parent_of some Animal

        Exemplul 2: “A ‘Herbivore’ is an animal that eats
       only plants” (NB: All animals eat some living thing)

           Herbivore = Animal and eats only Plant

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




                               studiu de caz

            Stabilirea proprietatilor ce pot aparea
                        la nivel de clasa

  Ce se poate afirma privitor la toti membrii clasei?

                             exemplu: eats 
                       All cows eat some plants
                      All cats eat some animals
           All pigs eat some animals and eat some plants

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




                               studiu de caz

                        Verificarea clasificarii

                     “Cows should be Herbivores”

           Cows are animals and, amongst other things,
                       eat some grass and 
                      eat some leafy_plants



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




                               studiu de caz

                        Verificarea clasificarii

Trebuie specificata axioma de inchidere (closure axiom)

           Cows are animals and, amongst other things,
                       eat some plants and
                         eat only plants



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




                               studiu de caz
          Verificarea clasificarii (aici, in Protégé):




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




                               studiu de caz


            Examinarea listei de modificatori

                    identificarea modificatorilor
                   care au valori mutual exclusive
                     Domestication, Risk, Gender, Age

                   precizarea mai precisa a unora
                               Age ↦ Age_group

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




                               studiu de caz
  Modifiers
       Domestication
              Domestic
              Wild
              Feral
       Risk
              Dangerous
              Risky
              Safe
       Gender
              Male
              Female
       Age
              Infant
              Toddler
              Child
                                        Noua lista de modificatori
              Adult
              Elderly

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




                               studiu de caz

             Specificarea valorilor (solutia 1)
partitii de valori: clase care partitioneaza o calitate
              Dangerousness cu sub‐calitatile disjuncte
                      Dangerous, Risky, Safe

            Se poate specifica proprietatea functionala
            hasDangerousness : Animal Dangereousness

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




                               studiu de caz
                                                               Animal
Diagrama partitiilor de valori
                                   hasDangerousness
                                    someValuesFrom

                                                            Dangerous
                                                             animal
           Risky           Dangerous                              Leo the
                                                                   Lion
              Dangerousness
                                     Leo’s
                                    Danger
                       Safe
                                         Vezi si www.w3.org/TR/swbp-classes-as-values

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




                               studiu de caz

             Specificarea valorilor (solutia 1)
partitii de valori: clase care partitioneaza o calitate
                        calitatea




                             partitiile de 
                                valori

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




                               studiu de caz
                   Partitiile de valori in stilul UML
                                                                                Animal
                         Dangerousness_
                             Value

                           owl:unionOf


                                                                               Dangerous
                                                         hasDangerousness
      Safe_              Risky_            Dangerous_
                                                          someValuesFrom        Animal
      value               value              value




                                                                                  Leo the
                                             Leo’s       hasDangerousness
                                                                                   Lion
                                         Dangerousness

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




                               studiu de caz
             Specificarea valorilor (solutia 2)
          valori simbolice: indivizii pot enumera
         toate valorile unei calitati (caracteristici)
           calitatea specificata este Gender_value,
     pentru fiecare valoare existind o multime de indivizi
         valorile vor fi diferite, date ca o enumerare: 
                 Gender_value = { male, female }
             se specifica o proprietate functionala
               hasGender : Animal Gender_value
          Male_animal = Animal and hasGender is male
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                      <curs desc=“…” />




                                studiu de caz

                   Valorile simbolice – stilul UML
                                                                 Person
                       Gender
                       _value

                        owl:oneOf

                                               hasGender
                                                           Man
        female                       male




                                                                 Andrei

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




                               studiu de caz

        Principii pentru specificarea valorilor
                   (design pattern):
    Valori distincte exprimate via Disjoint 
     pentru clase sau allDifferent pentru indivizi
    Valorile “acopera” un tip de date 
         Calitate = Part1 or Part2 or Part3 or … or Partn
         Calitate = {v1 , v2 , v3 ,…, vn}
    Proprietatile exprimate sunt deseori functionale

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




                               studiu de caz

        Exprimarea rolurilor (proprietatilor)
          apare necesitatea distingerii rolurilor
        pe care le joaca entitatile in diferite situatii

                 Exemple: “pet” vs. “farm animal”,
           “profesor” vs. “student”, “medic” vs. “pacient”

        Deseori, calificarile trebuie distinse fata de roluri
         e.g., o persoana poate avea calificare de medic,
                      dar joaca rol de pacient
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                                 <curs desc=“…” />




                                studiu de caz

        Exprimarea rolurilor (proprietatilor)
                   uzual, rolurile desemneaza relatii
 Animal                           Animal             Food_animal = 
                                                       Animal and 
      Food_animal                      Mammal
                                                       has_role
          Cow                              Cow
                                                       some Food_role
                                           Horse
          Horse
                                           Dog
      Pet_animal                                     Pet_animal = 
                                  Animal_use_role      Animal and 
          Horse
                                                       has_role
                                       Food_role
          Dog
                                                       some Pet_role
                                       Pet_role


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




                               studiu de caz

        Exprimarea rolurilor (proprietatilor)

         Situatie: Horse plays_role some Food_role
        toti caii joaca rol de animale bune de consum

                         o afirmatie prea categorica




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




                               studiu de caz

                                   Observatie:
        anumite entitati pot fi deduse pe baza inferentei
                 – via reasoners (e.g., Pellet)

          Grass and Leafy_plants are both kinds of Plant




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




                               studiu de caz

        Exprimarea rolurilor (proprietatilor)

                                       Solutii:
           ignorarea problemei intr‐un anumit context
             inlocuirea lui has_role cu may_have_role

                        se poate specifica
            Food_Horse = Horse and has_role Food_role


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




                               studiu de caz

      Comentarea & parafrazarea tuturor claselor
               din cadrul ontologiei


         foarte util pentru alte persoane care vor utiliza
                      si/sau extinde ontologia




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




                               studiu de caz

         Oferirea unui set de clase de proba si
          a unui cadru de testare a ontologiei

 Clase de proba = clase suplimentare care pot sa fie 
 sau nu satisfiabile sau clasificabile intr‐un context 
        particular (“exceptiile de la regula”)
                   in ontologia finala, vor fi eliminate


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




         studiu de caz: privire de ansamblu
                                           Living Thing
       Body Part
                               eats

                    has part                                    Plant
    Arm
                                                     eats
                               Animal

            Leg                                                                  Grass
                                        eats
                                                    Herbivore

                                                                         Tree
                   Person
                                         Carnivore
                               Cow


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




                               studiu de caz

  Modelarea unui web privitor la un muzeu de arta

               adaptare dupa (Enrico Franconi, 2003)




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=“…” />




                               studiu de caz

Considerarea – eronata – a unui concept ca fiind rol

              Painter subClassOf only PAINTING.Painting

               Painting subClassOf only AUTHOR.Painter

                      PaintEvent subClassOf
     intersectionOf (some WHO.Painter, some WHAT.Painting)


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




                                studiu de caz

                          Acest TBox este redundant

                   Nu se pot detecta usor inconsistentele

                                TBox‐ul este ciclic




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




                               studiu de caz

                La nivel de ABox se specifica:
     Tabloul Pescuit de ton al lui Dali se gaseste in Madrid
        Tabloul Pescuit de ton, pictat de Dali in 1966,
                     se gaseste in Madrid

                             Redundanta:
            Painter (dali), PAINTING (dali, tuna-fishing),
      Painting (tuna-fishing), AUTHOR (tuna-fishing, dali) etc.


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




                                  de retinut

         Aspecte de interes (Aldo Gangemi, 2008):
       cerinte – e.g., “doresc sa urmez masterul ideal”
  contructii logice: subClassOf, restrictii de cardinalitate,…
  ontologii existente – e.g., FOAF, BibTeX, DOLCE, OpenCyc
 resurse de cunostinte informale: CiteSeer, Open Directory
    conventii & practici, inclusiv sabloane de proiectare
     instrumente – editoare, instrumente de reasoning, 
   convertoare etc. (Protégé, NeON Toolkit, FaCT++, Pellet, 
             Jena, Virtuoso, Semantic MediaWiki,…)

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




                                  de retinut

  Intelegerea clara a distinctiilor (Franconi, 2003):

                       concept (clasa) vs. individ

              concept (clasa) vs. proprietate (rol)

              entitate definita vs. entitate dedusa


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




                                  de retinut

          Clasa (concept) versus instanta (individ)
     O multime de indivizi este una numarabila, discreta
     Spatiul privitor la concepte e ideal continuu si infinit
           Fiecare individ poseda o identitate clara
          Daca 2 concepte au descrieri echivalente, 
              atunci desemneaza acelasi concept
        Descrierile privitoare la indivizi pot fi alterate
     Actualizarile privitoare la indivizi, uzual, nu schimba
                        ierarhia conceptelor
     Alegerea “clasa vs. individ” depinde de granularitate
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                  de retinut

 Nu e usor de decis daca o entitate trebuie sa fie modelata
                 ca si concept sau drept rol

              Persoana este un concept (clasa)
       Mama ca si concept nu exista daca nu consideram
             ce rol joaca intr‐o relatie parentala
          (este un concept dependent de o relatie)

    conventie: alegerea de nume neambigue pentru roluri
            e.g., hasParent, areMama, areGen etc.

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




                                  de retinut

              Fiecarui concept ales i se pot asocia:
  proprietati intrinseci – caracteristice naturii conceptului

 proprietati extrinseci – externe, pot sa se modifice in timp

parti, fragmente – in cazul obiectelor structurate/compuse
 pot fi fizice (“studentii dintr­o grupa”, “componentele unui
      calculator”, “boabele unui strugure”) sau abstracte
  (“prezentarile unui curs”, “subiectele evocate de artist”,…)

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




                                  de retinut

    Rationamentele automate privitoare la indivizi
               sunt dificil de realizat

              ontologiile vizeaza in special clasele
                           ontologii ≠ baze de date


                    a se consulta si www.co­ode.org


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




                                  de retinut

Ontologiile reprezinta artefacte avind o structura specifica
                (lingvistica, ierarhica, logica)

    Ontologiile vizeaza uzual atit domeniul de cunoastere,
    cit si activitatile desfasurate specifice acelui domeniu

Ontologia urmeaza un ciclu de viata (lifecycle), fiind creata, 
  evaluata, ajustata, exploatata ca si alt artefact software
   aspecte de interes: datele, tipurile de workflow‐uri,
     sabloanele de proiectare, utilizarea propriu‐zisa
Dr. Sabin Buraga   http://www.purl.org/net/busaco
<?xml version=“1.0” ?>
Semantic Web                                        <curs desc=“…” />




                                   Rezumat

                 Knowledge engineering
          Metodologii de proiectare a ontologiilor




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

Más contenido relacionado

Más 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
 

Más 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
 

Web08 Semantic Web: Inginerie Ontologica (I)

  • 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=“…” /> Inginerie ontologica Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 3. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> “It is not the strongest of the species  that survive, nor the most intelligent,  but the ones most responsive to change.” Charles Darwin Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 4. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> intro Folosind ontologiile, putem modela cunostintele knowledge modeling Apare necesitatea managementului acestora knowledge management Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 5. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> intro Aspecte privind managementul cunostintelor (Shadbolt & O’Hara, 2004): achizitia (acquiring) modelarea (modelling) reutilizarea (reusing) preluarea (retrieving) publicarea (publishing) mentinerea (maintaining) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 6. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Achizitia (acquiring) aplicatiile Web trebuie sa preia cunostinte, nu date brute, fara semnificatie e.g., texte (formatate) preluate din formulare utilizatorii obisnuiti nu vor marca datele in XML, RDF sau OWL conceptele trebuie stocate ca informatii structurate Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 7. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Modelarea (modelling) ideal, fiecare fragment de informatie trebuie modelat riguros la nivel semantic in practica, acest aspect este aproape imposibil vezi dificultatile de dezambiguizare a limbajului natural pasi de urmat: identificarea claselor, definirea proprietatilor, completarea datelor despre indivizi (input explicit, tagging, microformate etc.) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 8. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Reutilizarea (reusing) fiecare entitate trebuie definita doar o singura data informatiile trebuie sa poata fi accesate la nivel global (eventual, via politici de acces) facilitarea reutilizarii este data de usurinta utilizarii sistemului (e.g., sintaxa simpla, asistenti digitali,  flexibilitate etc.) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 9. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Preluarea (retrieving) mecanisme de interogare si filtrare a cunostintelor oferirea de suport pentru efectuarea de agregari, procesari si extrageri de informatii, in maniera (semi)automata, pe baza meta‐datelor si relatiilor dintre entitati exemplu: extragerea intereselor comune ale membrilor unui grup dintr‐o retea sociala Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 10. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Publicarea (publishing) cunostintele trebuie sa poata fi publicate in formate standardizate,  care sa incurajeze refolosirea in alte contexte accesul la cunostinte are in vedere atit utilizatorii umani, cit si aplicatiile Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 11. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Publicarea (publishing) cunostintele trebuie sa fie usor redate,  conform necesitatilor si preferintelor utilizatorilor depozitele de cunostinte trebuie sa ofere export in formate consacrate (RDF, OWL) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 12. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Mentinerea (maintaining) necesitatea existentei unor servicii care sa asigure consistenta cunostintelor un suport manual poate fi oferit de wiki‐uri serviciile automate se pot baza pe reasoners Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 13. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Adaptare dupa Horrocks & Rector, 2004 Ontologiile pot fi considerate drept lego‐uri conceptuale (Conceptual Lego) Masterand urm(ar)ind cursul Agent Web “Semantic  Web” Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 14. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Ontologiile pot proveni din sau pot fi salvate sub forma de: scheme XML, scheme de baze de date, diagrame UML, spreadsheets, alte specificatii Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 15. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> managementul cunostintelor Probleme:  Crearea de ontologii din diverse surse Managementul versiunilor Realizarea colectiilor de ontologii (asocieri,  comparatii, reconcilieri, validari, conversii,...) Obtinerea, organizarea & vizualizarea domeniului de  cunoastere inainte si in timpul crearii unei ontologii Utilizarea ontologiilor in functie de context Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 16. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> necesitate Existenta unor metodologii de inginerie a cunostintelor (knowledge engineering methodologies) procesul prin care experti ai domeniului si ingineri vor constitui o baza de cunostinte, specificata de un limbaj de reprezentare a cunostintelor si de o suita de instrumente aditionale procesele, limbajele si instrumentele care pot fi folosite se bazeaza pe diverse paradigme de reprezentare a cunostintelor Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 17. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> abordari Traditionale din ingineria software clasica (knowledge engineering)  CommonKADS (Scheriber et al., 2000) Agile (mai flexibile & facile) eXtreme Programming XP.K (Knublauch, 2002),  RapidOWL (Auer, 2005) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 18. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> observatii Dezvoltarea unei ontologii implica partajarea de informatii si colaborare “Knowledge is fractal” (Alan Rector, 2004) ontologiile prezinta aceeasi structura la fiecare nivel de granularitate (detaliu) Atentie la dezvoltarile exponentiale ale ontologiei! fenomenul “exploding bicycle” Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 19. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie Complicatii: necunoasterea a­priori a dimensiunii ontologiei numarul persoanelor implicate utilizarea ontologiei de catre utilizatori care nu sunt experti natural laziness ☺ ... Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 20. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: dificultati Conflicte privitoare la intuitii intuitiile sunt dificil de formalizat expertii in domeniu sunt condusi de obisnuinte si practica (sabloane de proiectare) prototipuri & generalizari logicienii sunt motivati de logica si computabilitate definitii & operatori universali Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 21. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: dificultati Transparenta & predictibilitate versus rigoare & completitudine Utilizatorii fara experienta Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 22. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: dificultati Studiu de caz – Peter Morville, 2007 alergia la alune (peanut allergy): Acces urgent la informatii exacte & utile Credibilitatea surselor este esentiala Orice cautare pe Google esueaza (popularitate ≠ autoritate in domeniu) Cunostintele trebuie sa poate fi regasite pe Web (necesita expertiza in domeniu + abilitati avansate de  cautare via motoare) Context: Information Architecture (IA) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 23. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: dificultati Modelarea Semantica (meaning): corectitudinea clasificarilor & extragerii cunostintelor Indexarea: desfasurarea activitatilor de  descoperire, cautare si gasire a cunostintelor Utilizarea: introducerea datelor, luarea de decizii,... Achizitia: capt(ur)area cunoasterii Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 24. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: dificultati Asigurarea calitatii & managementul modificarilor Calitatea: stabilirea de criterii privitoare la ceea ce este “corect” Evolutia:  luarea in calcul a schimbarilor viitoare ale ontologiei Testarea:  controlul modificarilor, asigurarea calitatii (QA) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 25. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: dificultati Privitoare la persoanele implicate Aparitia confuziilor privitoare la termeni si la utilizarea ontologiei Persoane provenind din medii eterogene filosofie, interactiune om‐calculator, inginerie software,  lingvistica, stiinte cognitive,... Recurgerea la sintaxe diferite Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 26. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: realitati Gasirea dificila unor criterii formale (consistenta, completitudine, concizie,...) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 27. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: realitati Generarea manuala a ontologiilor taxonomii navigabile: Open Directory, Yahoo!,... folksonomii ontologii publice – de exemplu, Gene Ontology ontologii interne – e.g., Daimler‐Chrysler Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 28. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: realitati Ontologiile generale (top­level) nu sunt cu adevarat utile in practica Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 29. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: realitati Apar probleme teoretice/practice privind: asigurarea coerentei,  facilitarea procesarii,  folosirea surselor de date multiple Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 30. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: realitati Diferite vocabulare in vigoare clasa ≈ concept ≈ categorie ≈ tip instanta ≈ individ entitate ≈ obiect (clasa/individ) proprietate ≈ slot ≈ relatie ≈ atribut ≈  ≈ rol ≈ legatura semantica Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 31. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> inginerie: realitati Diferite sintaxe existente: sintaxa abstracta, N3,  XML/RDF,  logica de ordin I,  formatul Protégé,  limbaj natural (parafraza), ... Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 32. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie (Noy & McGuinness, 2003) Stabilirea domeniului de cunoastere Organizarea ontologiei “Umplerea” ontologiei Verificarea ontologiei Publicarea ontologiei Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 33. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Stabilirea domeniului de cunoastere asamblarea resurselor de informatie si expertiza a ceea ce vor deveni concepte (things) ale domeniului de interes se vor asigura consensul si consistenta Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 34. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Organizarea ontologiei proiectarea pe ansamblu a structurii conceptuale: Identificarea principalelor concepte concrete  si a proprietatilor acestora Identificarea relatiilor dintre concepte Crearea conceptelor abstracte Identificarea instantelor Referentierea/includerea altor ontologii ... Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 35. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie “Umplerea” ontologiei adaugarea conceptelor inserarea relatiilor/constringerilor adaugarea indivizilor …la nivelul de detaliere necesar pentru realizarea scopurilor ontologiei Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 36. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Verificarea ontologiei reconcilierea inconsistentelor dintre elemente, la nivel sintactic, logic & semantic verificarea consistentei poate implica o clasificare automata, rezultind noi concepte bazate pe proprietati individuale sau relatii intre clase Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 37. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Publicarea ontologiei verificarea finala de catre experti ai domeniului publicarea in cadrul comunitatii de practica Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 38. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Procesul ideal de dezvoltare a unei ontologii: determine consider enumerate define define define create scope reuse terms classes properties constraints instances Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 39. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Procesul realist de dezvoltare a unei ontologii: determine consider enumerate consider define enumerate define scope reuse terms reuse classes terms classes define define define define create define create properties classes properties constraints instances classes instances consider define define create reuse properties constraints instances Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 40. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie (Rector & Horrocks, 2004) Stabilirea scopului Colectarea cunostintelor (la nivel informal ori semi‐formal) Rafinarea cerintelor & testarea Implementarea (modelarea propriu‐zisa) Evaluarea & asigurarea calitatii Monitorizarea utilizarii si a evolutiei Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 41. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Stabilirea scopului cerinte,  evaluare, reutilizare, … Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 42. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Colectarea cunostintelor la nivel informal ori semi‐formal Stabilirea termenilor Organizarea informala a termenilor Parafrazarea si clarificarea termenilor definitii informale ale conceptelor Realizarea de diagrame informale Rafinarea cerintelor & testarea Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 43. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Implementarea – modelarea propriu‐zisa Parafrazare & comentare la fiecare faza Dezvoltarea unei scheme normalizate si a unui “schelet” de ontologie Implementarea unui prototip (consemnind intentiile)  Verificarea scalabilitatii Popularea ontologiei – text mining, procesare a limbajului uman, microformate, XHTML/XML structurat (semantic) etc. Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 44. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Evaluarea si asigurarea calitatii Urmarirea scopului initial Includerea de verificari privind evolutia ontologiei si ajustarea manierei de management al ei Proiectarea de teste si “probe” in mod similar testarii aplicatiilor software Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 45. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> metodologie Monitorizarea utilizarii si a evolutiei (mentenanta) “Process not product” (Alan Rector, 2004) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 46. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Rationamentul lumilor inchise vs. deschise lumi deschise (open world reasoning) Negatia reprezinta contradictie (orice poate fi adevarat pina cind se poate demonstra ca e fals) Se rationeaza in maniera: “orice alta lume poate fi consistenta cu aceasta” lumi inchise (close world reasoning) Negatia inseamna esec (orice nu poate fi gasit este fals) “Totul este valabil numai in aceasta lume” Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 47. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Rationamentul lumilor inchise vs. deschise ontologiile sunt considerate lumi deschise, iar bazele de date lumi inchise Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 48. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Knowledge Base vs. Data Base O baza de cunostinte (knowledge base) nu defineste un model unic, ci reprezinta un set de constringeri care pot defini o multime de modele posibile nici o constringere orice model e posibil cu cit exista mai multe constringeri,  cu atit numarul modelelor posibile scade Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 49. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Knowledge Base vs. Data Base O baza de date defineste un model unic numele diferite sunt interpretate ca indivizi distincti domeniul e compus numai din indivizii numiti in cadrul bazei de date (modelul lumii inchise) extensiile sunt cit mai reduse posibil Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 50. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Knowledge Base vs. Data Base Modelul unic (Bechhofer, 2004): expresivitate redusa – nu exista negatii/disjunctii nu poate captura informatii incomplete non‐monoton – adaugarea de informatii nu pastreaza adevarul procesul de reasoning (interogare) este facil si rapid  Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 51. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Knowledge Base vs. Data Base Modelele multiple (Bechhofer, 2004): expresivitate ridicata – conectori booleeni, reuniune,... poate captura/exprima informatii incomplete monotonic – adaugarea de informatii pastreaza adevarul procesul de reasoning (interogare) este dificil si lent Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 52. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Activitatea de reasoning poate fi realizata automat de un reasoner clasificarea conceptelor – rezultind: un arbore (ierarhie stricta, taxonomie) un digraf aciclic – DAG (poli‐ierarhie, graf conceptual)  normalizare = separarea conceptelor de baza in arbori disjuncti, arborii avind legaturi intre ei via definitii si restrictii Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 53. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Exemplu: o ontologie privitoare la animale Inainte de clasificare Dupa clasificare Arbore de concepte DAG Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 54. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Dezvoltarea unei ontologii normalizate presupune: Identificarea conceptelor de baza de sine‐statoare Separarea conceptelor in arbori de concepte Identificarea relatiilor Crearea descrierilor & definitiilor Identificarea modului in care elementele‐cheie trebuie clasificate Utilizarea clasificatorului pentru a forma DAG‐ul Verificarea satisfacerii testelor Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 55. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> aspecte importante Dezvoltarea unei ontologii normalizate presupune: Identificarea conceptelor de baza de sine‐statoare (cu comentarea celor mai putin evidente) Separarea conceptelor in arbori de concepte (poate implica specific. unor proprietati/concepte auxiliare) Identificarea relatiilor (comentarea acelor relatii care nu sunt evidente) Crearea descrierilor & definitiilor (cu oferirea de parafraze pentru fiecare) Identificarea modului in care elementele‐cheie trebuie clasificate (crearea unor teste de regresie) Utilizarea clasificatorului pentru a forma DAG‐ul Verificarea satisfacerii testelor Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 56. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Modelarea unei ontologii privitoare la animale adaptare dupa (Rector, 2004) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 57. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Intentii & scopuri: realizarea unui index al unei carti despre animale, oferind informatii precum:  locul unde traiesc ce consuma (carnivore, ierbivore, omnivore) cit de periculoase pot fi ce anatomie de baza au – e.g., numarul picioarelor,... ce greutate au ... Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 58. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Colectarea conceptelor: se pot folosi carduri de concepte se lucreaza in grupuri mici de persoane se pot atrage experti ai domeniului Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 59. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Dog Dangerous Carnivore Cat Pet Plant Cow Domestic animal Animal Person Farm animal Fur Tree Food animal Child Grass Fish Parent Herbivore Goldfish Mother Male Father Clase Female posibile Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 60. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz: organizarea conceptelor Carnivore Dog Dangerous Plant Cat Pet Animal Cow Domestic  Fur Person animal Tree Child Farm animal Grass Parent Food animal Herbivore Mother Fish Male Father Goldfish Female Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 61. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Extinderea conceptelor gruparea unor concepte si determinarea caracteristicilor comune: Plant, Animal ↦ Living Thing  ar putea fi adaugati ulterior si termeni ca Bacteria, Fungi,… Cat, Dog, Cow, Person ↦ Mammal alti candidati ar putea fi Goat, Sheep, Horse etc. Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 62. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Pentru facilitarea clasificarii, colectiile de subclase trebuie declarate explicit disjuncte Plant disjointWith Animal Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 63. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Alegerea unor axe conceptuale Adaugarea de termeni abstracti De exemplu: “Living thing” Identificarea relatiilor De exemplu: “eats”, “owns”, “parent of” Identificarea entitatilor ce pot fi definite E.g., “child”, “parent”, “Mother”, “Father” Numirea explicita a conceptelor Utilizarea cunostintelor anterioare (background knowledge) – axiome Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 64. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Relations Living Thing eats owns Modifiers Animal parent‐of Domestic Mammal … Pet Cat Farmed Dog Food Definables Cow Wild Person Carnivore Health Fish healthy Herbivore sick Goldfish Child Gender Plant Parent Male Tree Mother Female Grass Age Father Adult Fruit Food Animal Child Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 65. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Stabilirea entitatilor de sine‐statatoare: “Lucruri” ce exista conform substantivelor lor Oameni, animale, case, actiuni, procese,… Se utilizeaza majoritatea substantivelor Modificatori (modifiers) “Lucruri” ce se pot preschimba in altele Se folosesc adjectivele si adverbele Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 66. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Reorganizam conceptele, grupind entitatile care pot fi definite in arbori separati constituirea conceptelor de baza (primitives) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 67. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Relations Self_standing eats Modifiers Living Thing owns Domestication parent‐of Animal Domestic … Mammal Wild Use Cat Definables Food Dog Pet Carnivore Cow Risk Herbivore Person Dangerous Fish Child Safe Gold Gender Parent Male fish Mother Female Plant Age Father Tree Adult Food Animal Grass Child Fruit Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 68. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Self_standing Living Thing Concept abstract incluzind toate entitatile vii  Animal – restrictionat la plante si animale in acest moment Mammal Cat Dog Cow Person Fish Gold fish Adaugarea comentariilor Plant clarificatoare (parafraze) Tree Grass Fruit Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 69. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Identificarea constringerilor privitoare la domeniu (domain) si interval (range) pentru fiecare proprietate: Animal eats Living_thing eats domain: Animal  range: Living_thing Person owns Living_thing except Person owns domain:  Person range:     Living_thing and not Person Living_thing parent_of Living_thing parent_of domain:  Animal range:    Animal Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 70. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Pentru entitatile ce pot fi definite trebuie comentate si formalizate definitiile acestora in termeni de primitive, relatii si alte entitati ce pot fi definite Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 71. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Exemplul 1: “A ‘Parent’ is an animal that is the parent of  some other animal” (Ignore plants for now) Parent =  Animal and parent_of some Animal Exemplul 2: “A ‘Herbivore’ is an animal that eats only plants” (NB: All animals eat some living thing) Herbivore = Animal and eats only Plant Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 72. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Stabilirea proprietatilor ce pot aparea la nivel de clasa Ce se poate afirma privitor la toti membrii clasei? exemplu: eats  All cows eat some plants All cats eat some animals All pigs eat some animals and eat some plants Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 73. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Verificarea clasificarii “Cows should be Herbivores” Cows are animals and, amongst other things, eat some grass and  eat some leafy_plants Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 74. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Verificarea clasificarii Trebuie specificata axioma de inchidere (closure axiom) Cows are animals and, amongst other things, eat some plants and eat only plants Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 75. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Verificarea clasificarii (aici, in Protégé): Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 76. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Examinarea listei de modificatori identificarea modificatorilor care au valori mutual exclusive Domestication, Risk, Gender, Age precizarea mai precisa a unora Age ↦ Age_group Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 77. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Modifiers Domestication Domestic Wild Feral Risk Dangerous Risky Safe Gender Male Female Age Infant Toddler Child Noua lista de modificatori Adult Elderly Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 78. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Specificarea valorilor (solutia 1) partitii de valori: clase care partitioneaza o calitate Dangerousness cu sub‐calitatile disjuncte Dangerous, Risky, Safe Se poate specifica proprietatea functionala hasDangerousness : Animal Dangereousness Dangerous_animal = Animal and  hasDangerousness some Dangerous Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 79. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Animal Diagrama partitiilor de valori hasDangerousness someValuesFrom Dangerous animal Risky Dangerous Leo the Lion Dangerousness Leo’s Danger Safe Vezi si www.w3.org/TR/swbp-classes-as-values Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 80. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Specificarea valorilor (solutia 1) partitii de valori: clase care partitioneaza o calitate calitatea partitiile de  valori Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 81. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Partitiile de valori in stilul UML Animal Dangerousness_ Value owl:unionOf Dangerous hasDangerousness Safe_ Risky_ Dangerous_ someValuesFrom Animal value value value Leo the Leo’s hasDangerousness Lion Dangerousness Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 82. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Specificarea valorilor (solutia 2) valori simbolice: indivizii pot enumera toate valorile unei calitati (caracteristici) calitatea specificata este Gender_value, pentru fiecare valoare existind o multime de indivizi valorile vor fi diferite, date ca o enumerare:  Gender_value = { male, female } se specifica o proprietate functionala hasGender : Animal Gender_value Male_animal = Animal and hasGender is male Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 83. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Valorile simbolice – stilul UML Person Gender _value owl:oneOf hasGender Man female male Andrei Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 84. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Principii pentru specificarea valorilor (design pattern): Valori distincte exprimate via Disjoint  pentru clase sau allDifferent pentru indivizi Valorile “acopera” un tip de date  Calitate = Part1 or Part2 or Part3 or … or Partn Calitate = {v1 , v2 , v3 ,…, vn} Proprietatile exprimate sunt deseori functionale Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 85. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Exprimarea rolurilor (proprietatilor) apare necesitatea distingerii rolurilor pe care le joaca entitatile in diferite situatii Exemple: “pet” vs. “farm animal”, “profesor” vs. “student”, “medic” vs. “pacient” Deseori, calificarile trebuie distinse fata de roluri e.g., o persoana poate avea calificare de medic, dar joaca rol de pacient Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 86. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Exprimarea rolurilor (proprietatilor) uzual, rolurile desemneaza relatii Animal Animal Food_animal =  Animal and  Food_animal Mammal has_role Cow Cow some Food_role Horse Horse Dog Pet_animal Pet_animal =  Animal_use_role Animal and  Horse has_role Food_role Dog some Pet_role Pet_role Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 87. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Exprimarea rolurilor (proprietatilor) Situatie: Horse plays_role some Food_role toti caii joaca rol de animale bune de consum o afirmatie prea categorica Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 88. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Observatie: anumite entitati pot fi deduse pe baza inferentei – via reasoners (e.g., Pellet) Grass and Leafy_plants are both kinds of Plant Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 89. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Exprimarea rolurilor (proprietatilor) Solutii: ignorarea problemei intr‐un anumit context inlocuirea lui has_role cu may_have_role se poate specifica Food_Horse = Horse and has_role Food_role Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 90. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Comentarea & parafrazarea tuturor claselor din cadrul ontologiei foarte util pentru alte persoane care vor utiliza si/sau extinde ontologia Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 91. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Oferirea unui set de clase de proba si a unui cadru de testare a ontologiei Clase de proba = clase suplimentare care pot sa fie  sau nu satisfiabile sau clasificabile intr‐un context  particular (“exceptiile de la regula”) in ontologia finala, vor fi eliminate Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 92. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz: privire de ansamblu Living Thing Body Part eats has part Plant Arm eats Animal Leg Grass eats Herbivore Tree Person Carnivore Cow Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 93. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Modelarea unui web privitor la un muzeu de arta adaptare dupa (Enrico Franconi, 2003) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 94. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 95. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Considerarea – eronata – a unui concept ca fiind rol Painter subClassOf only PAINTING.Painting Painting subClassOf only AUTHOR.Painter PaintEvent subClassOf intersectionOf (some WHO.Painter, some WHAT.Painting) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 96. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz Acest TBox este redundant Nu se pot detecta usor inconsistentele TBox‐ul este ciclic Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 97. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> studiu de caz La nivel de ABox se specifica: Tabloul Pescuit de ton al lui Dali se gaseste in Madrid Tabloul Pescuit de ton, pictat de Dali in 1966, se gaseste in Madrid Redundanta: Painter (dali), PAINTING (dali, tuna-fishing), Painting (tuna-fishing), AUTHOR (tuna-fishing, dali) etc. Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 98. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> de retinut Aspecte de interes (Aldo Gangemi, 2008): cerinte – e.g., “doresc sa urmez masterul ideal” contructii logice: subClassOf, restrictii de cardinalitate,… ontologii existente – e.g., FOAF, BibTeX, DOLCE, OpenCyc resurse de cunostinte informale: CiteSeer, Open Directory conventii & practici, inclusiv sabloane de proiectare instrumente – editoare, instrumente de reasoning,  convertoare etc. (Protégé, NeON Toolkit, FaCT++, Pellet,  Jena, Virtuoso, Semantic MediaWiki,…) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 99. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> de retinut Intelegerea clara a distinctiilor (Franconi, 2003): concept (clasa) vs. individ concept (clasa) vs. proprietate (rol) entitate definita vs. entitate dedusa Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 100. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> de retinut Clasa (concept) versus instanta (individ) O multime de indivizi este una numarabila, discreta Spatiul privitor la concepte e ideal continuu si infinit Fiecare individ poseda o identitate clara Daca 2 concepte au descrieri echivalente,  atunci desemneaza acelasi concept Descrierile privitoare la indivizi pot fi alterate Actualizarile privitoare la indivizi, uzual, nu schimba ierarhia conceptelor Alegerea “clasa vs. individ” depinde de granularitate Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 101. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> de retinut Nu e usor de decis daca o entitate trebuie sa fie modelata ca si concept sau drept rol Persoana este un concept (clasa) Mama ca si concept nu exista daca nu consideram ce rol joaca intr‐o relatie parentala (este un concept dependent de o relatie) conventie: alegerea de nume neambigue pentru roluri e.g., hasParent, areMama, areGen etc. Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 102. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> de retinut Fiecarui concept ales i se pot asocia: proprietati intrinseci – caracteristice naturii conceptului proprietati extrinseci – externe, pot sa se modifice in timp parti, fragmente – in cazul obiectelor structurate/compuse pot fi fizice (“studentii dintr­o grupa”, “componentele unui calculator”, “boabele unui strugure”) sau abstracte (“prezentarile unui curs”, “subiectele evocate de artist”,…) Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 103. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> de retinut Rationamentele automate privitoare la indivizi sunt dificil de realizat ontologiile vizeaza in special clasele ontologii ≠ baze de date a se consulta si www.co­ode.org Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 104. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> de retinut Ontologiile reprezinta artefacte avind o structura specifica (lingvistica, ierarhica, logica) Ontologiile vizeaza uzual atit domeniul de cunoastere, cit si activitatile desfasurate specifice acelui domeniu Ontologia urmeaza un ciclu de viata (lifecycle), fiind creata,  evaluata, ajustata, exploatata ca si alt artefact software aspecte de interes: datele, tipurile de workflow‐uri, sabloanele de proiectare, utilizarea propriu‐zisa Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 105. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> Rezumat Knowledge engineering Metodologii de proiectare a ontologiilor Dr. Sabin Buraga http://www.purl.org/net/busaco
  • 106. <?xml version=“1.0” ?> Semantic Web <curs desc=“…” /> ? Dr. Sabin Buraga http://www.purl.org/net/busaco