SlideShare une entreprise Scribd logo
1  sur  55
Télécharger pour lire hors ligne
trioo

                                                   Sergio Fern´ndez
                                                              a


                                                   Motivaci´n
                                                           o
                       trioo                       Trabajo
                                                   relacionado
estudio e implementaci´n de modelos de datos RDF
                       o
                                                   Modelos
          en lenguajes orientados a objetos
                                                   Implementaciones

                                                   Diseminaci´n
                                                             o

                                                   Conclusiones y
                Sergio Fern´ndez
                           a                       trabajo futuro


             Director: Jos´ Emilio Labra
                          e
             Co-Director: Diego Berrueta

               Trabajo Fin de M´ster
                                 a
              M´ster en Ingenier´ Web
               a                ıa
               Universidad de Oviedo

            Oviedo, 28 de julio de 2010
trioo
Esquema
                                Sergio Fern´ndez
                                           a


                                Motivaci´n
                                        o

                                Trabajo
Motivaci´n
        o                       relacionado

                                Modelos

                                Implementaciones
Trabajo relacionado
                                Diseminaci´n
                                          o

                                Conclusiones y
                                trabajo futuro
Modelos

Implementaciones

Diseminaci´n
          o

Conclusiones y trabajo futuro
trioo
Esquema
                                Sergio Fern´ndez
                                           a


                                Motivaci´n
                                        o

                                Trabajo
Motivaci´n
        o                       relacionado

                                Modelos

                                Implementaciones
Trabajo relacionado
                                Diseminaci´n
                                          o

                                Conclusiones y
                                trabajo futuro
Modelos

Implementaciones

Diseminaci´n
          o

Conclusiones y trabajo futuro
trioo
Motivaci´n
        o
                                                               Sergio Fern´ndez
                                                                          a


                                                               Motivaci´n
                                                                       o

                                                               Trabajo
                                                               relacionado
La Web de datos (Web of Data) ofrece una nueva                 Modelos

aproximaci´n para explotar datos de manera distribuida en la
          o                                                    Implementaciones

Web                                                            Diseminaci´n
                                                                         o

                                                               Conclusiones y
                                                               trabajo futuro

    Gran cantidad de datos publicados como RDF (Linked
    Data)

    Listos para ser consumidos usando protocolos est´ndar
                                                    a
    (HTTP) y lenguajes de consulta (SPARQL)
trioo
Motivaci´n (III)
        o
                           Sergio Fern´ndez
                                      a
Linking Open Data cloud:
                           Motivaci´n
                                   o

                           Trabajo
                           relacionado

                           Modelos

                           Implementaciones

                           Diseminaci´n
                                     o

                           Conclusiones y
                           trabajo futuro
trioo
Motivaci´n (III)
        o
                                                             Sergio Fern´ndez
                                                                        a


                                                             Motivaci´n
                                                                     o
Lamentablemente los m´todos actuales para acceder a esos
                       e                                     Trabajo
datos RDF exigen al programador conocimientos avanzados      relacionado

del modelos de datos RDF:                                    Modelos

                                                             Implementaciones

                                                             Diseminaci´n
                                                                       o
    Por tanto se convierte en una barrera que hay que        Conclusiones y
                                                             trabajo futuro
    tratar de saltar

    Permitiendo el uso de esos datos sin que tenga efectos
    negativos en los dise˜os orientados a objetos
                         n

    A la vez que se trate de mantener la sem´ntica de los
                                              a
    datos lo m´s fiel posible dentro de las los lenguajes
               a
    orientados a objetos
trioo
Metodolog´
         ıa
                                                   Sergio Fern´ndez
                                                              a


                                                   Motivaci´n
                                                           o

                                                   Trabajo
                                                   relacionado

                                                   Modelos

                                                   Implementaciones
    Profundo estudio del estado del arte           Diseminaci´n
                                                             o

                                                   Conclusiones y
                                                   trabajo futuro
    An´lisis te´rico
      a        o


    Implementaciones para validar los resultados
trioo
Esquema
                                Sergio Fern´ndez
                                           a


                                Motivaci´n
                                        o

                                Trabajo
Motivaci´n
        o                       relacionado

                                Modelos

                                Implementaciones
Trabajo relacionado
                                Diseminaci´n
                                          o

                                Conclusiones y
                                trabajo futuro
Modelos

Implementaciones

Diseminaci´n
          o

Conclusiones y trabajo futuro
trioo
Trabajo relacionado
                      Sergio Fern´ndez
                                 a


                      Motivaci´n
                              o

                      Trabajo
                      relacionado

                      Modelos

                      Implementaciones

                      Diseminaci´n
                                o

                      Conclusiones y
                      trabajo futuro
trioo
Trabajo relacionado
                                                         Sergio Fern´ndez
                                                                    a


                                                         Motivaci´n
                                                                 o

                                                         Trabajo
                                                         relacionado

                                                         Modelos
    Este trabajo est´ estrechamente relacionado con el
                    a
    trabajo realizado estos a˜os acerca de:
                             n                           Implementaciones

                                                         Diseminaci´n
                                                                   o

                                                         Conclusiones y
                                                         trabajo futuro
trioo
Trabajo relacionado
                                                         Sergio Fern´ndez
                                                                    a


                                                         Motivaci´n
                                                                 o

                                                         Trabajo
                                                         relacionado

                                                         Modelos
    Este trabajo est´ estrechamente relacionado con el
                    a
    trabajo realizado estos a˜os acerca de:
                             n                           Implementaciones

                                                         Diseminaci´n
                                                                   o

                                                         Conclusiones y
        el mapeo de objetos al modelo relacional         trabajo futuro
trioo
Trabajo relacionado
                                                         Sergio Fern´ndez
                                                                    a


                                                         Motivaci´n
                                                                 o

                                                         Trabajo
                                                         relacionado

                                                         Modelos
    Este trabajo est´ estrechamente relacionado con el
                    a
    trabajo realizado estos a˜os acerca de:
                             n                           Implementaciones

                                                         Diseminaci´n
                                                                   o

                                                         Conclusiones y
        el mapeo de objetos al modelo relacional         trabajo futuro



        el acceso a datos en la Web (Sem´ntica)
                                        a
trioo
Trabajo relacionado
                                                            Sergio Fern´ndez
                                                                       a


                                                            Motivaci´n
                                                                    o

                                                            Trabajo
                                                            relacionado

                                                            Modelos
    Este trabajo est´ estrechamente relacionado con el
                    a
    trabajo realizado estos a˜os acerca de:
                             n                              Implementaciones

                                                            Diseminaci´n
                                                                      o

                                                            Conclusiones y
        el mapeo de objetos al modelo relacional            trabajo futuro



        el acceso a datos en la Web (Sem´ntica)
                                        a

    Por tanto se aplican parecidas t´cnicas y patrones de
                                    e
    dise˜o (Active Record, Data Mapper y dem´s).
        n                                       a
trioo
Trabajo relacionado (II): almacenes tradicionales
                                                                     Sergio Fern´ndez
                                                                                a


                                                                     Motivaci´n
                                                                             o
(en este trabajo el t´rmino “almacenes tradicionales” realmente se
                     e                                               Trabajo
                                                                     relacionado
refiere a las bases de datos relacionales tradicionales)
                                                                     Modelos

                                                                     Implementaciones

                                                                     Diseminaci´n
                                                                               o
En los ultimos a˜os se ha hecho un esfuerzo importante en
       ´         n                                                   Conclusiones y
                                                                     trabajo futuro
ese ´rea, por lo que han surgido muchas herramientas:
    a
trioo
Trabajo relacionado (II): almacenes tradicionales
                                                                     Sergio Fern´ndez
                                                                                a


                                                                     Motivaci´n
                                                                             o
(en este trabajo el t´rmino “almacenes tradicionales” realmente se
                     e                                               Trabajo
                                                                     relacionado
refiere a las bases de datos relacionales tradicionales)
                                                                     Modelos

                                                                     Implementaciones

                                                                     Diseminaci´n
                                                                               o
En los ultimos a˜os se ha hecho un esfuerzo importante en
       ´         n                                                   Conclusiones y
                                                                     trabajo futuro
ese ´rea, por lo que han surgido muchas herramientas:
    a


     ActiveRecord para Ruby
trioo
Trabajo relacionado (II): almacenes tradicionales
                                                                     Sergio Fern´ndez
                                                                                a


                                                                     Motivaci´n
                                                                             o
(en este trabajo el t´rmino “almacenes tradicionales” realmente se
                     e                                               Trabajo
                                                                     relacionado
refiere a las bases de datos relacionales tradicionales)
                                                                     Modelos

                                                                     Implementaciones

                                                                     Diseminaci´n
                                                                               o
En los ultimos a˜os se ha hecho un esfuerzo importante en
       ´         n                                                   Conclusiones y
                                                                     trabajo futuro
ese ´rea, por lo que han surgido muchas herramientas:
    a


     ActiveRecord para Ruby
     Django Models y SQLAlchemy para Python
trioo
Trabajo relacionado (II): almacenes tradicionales
                                                                     Sergio Fern´ndez
                                                                                a


                                                                     Motivaci´n
                                                                             o
(en este trabajo el t´rmino “almacenes tradicionales” realmente se
                     e                                               Trabajo
                                                                     relacionado
refiere a las bases de datos relacionales tradicionales)
                                                                     Modelos

                                                                     Implementaciones

                                                                     Diseminaci´n
                                                                               o
En los ultimos a˜os se ha hecho un esfuerzo importante en
       ´         n                                                   Conclusiones y
                                                                     trabajo futuro
ese ´rea, por lo que han surgido muchas herramientas:
    a


     ActiveRecord para Ruby
     Django Models y SQLAlchemy para Python
     GORM para Grails
trioo
Trabajo relacionado (II): almacenes tradicionales
                                                                     Sergio Fern´ndez
                                                                                a


                                                                     Motivaci´n
                                                                             o
(en este trabajo el t´rmino “almacenes tradicionales” realmente se
                     e                                               Trabajo
                                                                     relacionado
refiere a las bases de datos relacionales tradicionales)
                                                                     Modelos

                                                                     Implementaciones

                                                                     Diseminaci´n
                                                                               o
En los ultimos a˜os se ha hecho un esfuerzo importante en
       ´         n                                                   Conclusiones y
                                                                     trabajo futuro
ese ´rea, por lo que han surgido muchas herramientas:
    a


     ActiveRecord para Ruby
     Django Models y SQLAlchemy para Python
     GORM para Grails
     Hibernate (JPA) y MyBatis para Java
trioo
Trabajo relacionado (II): almacenes tradicionales
                                                                     Sergio Fern´ndez
                                                                                a


                                                                     Motivaci´n
                                                                             o
(en este trabajo el t´rmino “almacenes tradicionales” realmente se
                     e                                               Trabajo
                                                                     relacionado
refiere a las bases de datos relacionales tradicionales)
                                                                     Modelos

                                                                     Implementaciones

                                                                     Diseminaci´n
                                                                               o
En los ultimos a˜os se ha hecho un esfuerzo importante en
       ´         n                                                   Conclusiones y
                                                                     trabajo futuro
ese ´rea, por lo que han surgido muchas herramientas:
    a


     ActiveRecord para Ruby
     Django Models y SQLAlchemy para Python
     GORM para Grails
     Hibernate (JPA) y MyBatis para Java
     Y muchos otros...
trioo
Trabajo relacionado (III)
                            Sergio Fern´ndez
                                       a


                            Motivaci´n
                                    o

                            Trabajo
                            relacionado

                            Modelos

                            Implementaciones

                            Diseminaci´n
                                      o

                            Conclusiones y
                            trabajo futuro
trioo
Trabajo relacionado (III)
                                      Sergio Fern´ndez
                                                 a


                                      Motivaci´n
                                              o
    Almacenes orientados a objetos:
                                      Trabajo
        JDO                           relacionado
        Dobblin                       Modelos
        Durus                         Implementaciones
        ZODB                          Diseminaci´n
                                                o
        ...                           Conclusiones y
                                      trabajo futuro
trioo
Trabajo relacionado (III)
                                      Sergio Fern´ndez
                                                 a


                                      Motivaci´n
                                              o
    Almacenes orientados a objetos:
                                      Trabajo
        JDO                           relacionado
        Dobblin                       Modelos
        Durus                         Implementaciones
        ZODB                          Diseminaci´n
                                                o
        ...                           Conclusiones y
    Almacenes XML:                    trabajo futuro

        JAXB
        ...
trioo
Trabajo relacionado (III)
                                      Sergio Fern´ndez
                                                 a


                                      Motivaci´n
                                              o
    Almacenes orientados a objetos:
                                      Trabajo
        JDO                           relacionado
        Dobblin                       Modelos
        Durus                         Implementaciones
        ZODB                          Diseminaci´n
                                                o
        ...                           Conclusiones y
    Almacenes XML:                    trabajo futuro

        JAXB
        ...
    Almacenes libres de esquema:
        NoSQL
        ...
trioo
Trabajo relacionado (III)
                                                          Sergio Fern´ndez
                                                                     a


                                                          Motivaci´n
                                                                  o
    Almacenes orientados a objetos:
                                                          Trabajo
        JDO                                               relacionado
        Dobblin                                           Modelos
        Durus                                             Implementaciones
        ZODB                                              Diseminaci´n
                                                                    o
        ...                                               Conclusiones y
    Almacenes XML:                                        trabajo futuro

        JAXB
        ...
    Almacenes libres de esquema:
        NoSQL
        ...
    Pero tambi´n otras aproximaciones m´s horizontales:
              e                        a
        LINQ
        DataNucleus AccessPlatform
        ...
trioo
Trabajo relacionado (IV): almacenes RDF
                                                           Sergio Fern´ndez
                                                                      a


Tambi´n han surgido propuestas similares para hacer esto
     e                                                     Motivaci´n
                                                                   o

                                                           Trabajo
con RDF:                                                   relacionado

                                                           Modelos

                                                           Implementaciones

                                                           Diseminaci´n
                                                                     o

                                                           Conclusiones y
                                                           trabajo futuro
trioo
Trabajo relacionado (IV): almacenes RDF
                                                           Sergio Fern´ndez
                                                                      a


Tambi´n han surgido propuestas similares para hacer esto
     e                                                     Motivaci´n
                                                                   o

                                                           Trabajo
con RDF:                                                   relacionado

                                                           Modelos

                                                           Implementaciones
    ActiveRDF y Spira para Ruby
                                                           Diseminaci´n
                                                                     o

                                                           Conclusiones y
                                                           trabajo futuro
trioo
Trabajo relacionado (IV): almacenes RDF
                                                           Sergio Fern´ndez
                                                                      a


Tambi´n han surgido propuestas similares para hacer esto
     e                                                     Motivaci´n
                                                                   o

                                                           Trabajo
con RDF:                                                   relacionado

                                                           Modelos

                                                           Implementaciones
    ActiveRDF y Spira para Ruby
                                                           Diseminaci´n
                                                                     o
    Empire y Sommer para Java                              Conclusiones y
                                                           trabajo futuro
trioo
Trabajo relacionado (IV): almacenes RDF
                                                           Sergio Fern´ndez
                                                                      a


Tambi´n han surgido propuestas similares para hacer esto
     e                                                     Motivaci´n
                                                                   o

                                                           Trabajo
con RDF:                                                   relacionado

                                                           Modelos

                                                           Implementaciones
    ActiveRDF y Spira para Ruby
                                                           Diseminaci´n
                                                                     o
    Empire y Sommer para Java                              Conclusiones y
                                                           trabajo futuro
    Moriarty para PHP
trioo
Trabajo relacionado (IV): almacenes RDF
                                                           Sergio Fern´ndez
                                                                      a


Tambi´n han surgido propuestas similares para hacer esto
     e                                                     Motivaci´n
                                                                   o

                                                           Trabajo
con RDF:                                                   relacionado

                                                           Modelos

                                                           Implementaciones
    ActiveRDF y Spira para Ruby
                                                           Diseminaci´n
                                                                     o
    Empire y Sommer para Java                              Conclusiones y
                                                           trabajo futuro
    Moriarty para PHP
    SuRF para Python
trioo
Trabajo relacionado (IV): almacenes RDF
                                                           Sergio Fern´ndez
                                                                      a


Tambi´n han surgido propuestas similares para hacer esto
     e                                                     Motivaci´n
                                                                   o

                                                           Trabajo
con RDF:                                                   relacionado

                                                           Modelos

                                                           Implementaciones
    ActiveRDF y Spira para Ruby
                                                           Diseminaci´n
                                                                     o
    Empire y Sommer para Java                              Conclusiones y
                                                           trabajo futuro
    Moriarty para PHP
    SuRF para Python
    Y algunos otros...
trioo
Trabajo relacionado (IV): almacenes RDF
                                                                  Sergio Fern´ndez
                                                                             a


Tambi´n han surgido propuestas similares para hacer esto
     e                                                            Motivaci´n
                                                                          o

                                                                  Trabajo
con RDF:                                                          relacionado

                                                                  Modelos

                                                                  Implementaciones
     ActiveRDF y Spira para Ruby
                                                                  Diseminaci´n
                                                                            o
     Empire y Sommer para Java                                    Conclusiones y
                                                                  trabajo futuro
     Moriarty para PHP
     SuRF para Python
     Y algunos otros...

Desafortunadamente estas propuestas est´n demasiado
                                           a
influenciadas por otras tecnolog´ que guardan poca
                                  ıas
relaci´n con RDF, y abusan de implementar APIs
      o
propietarias para realizar la persistencia en lugar de utilizar
aproximaciones m´s puras basadas en SPARQL.
                 a
trioo
Esquema
                                Sergio Fern´ndez
                                           a


                                Motivaci´n
                                        o

                                Trabajo
Motivaci´n
        o                       relacionado

                                Modelos

                                Implementaciones
Trabajo relacionado
                                Diseminaci´n
                                          o

                                Conclusiones y
                                trabajo futuro
Modelos

Implementaciones

Diseminaci´n
          o

Conclusiones y trabajo futuro
trioo
Modelo computacional orientado a objetos
                                                               Sergio Fern´ndez
                                                                          a


                                                               Motivaci´n
                                                                       o

                                                               Trabajo
                                                               relacionado
Realmente no existe un unico modelo, com´nmente los
                       ´                  u                    Modelos

lenguajes de programaci´n orientados a objetos se dividen en
                       o                                       Implementaciones

dos grandes familias:                                          Diseminaci´n
                                                                         o

                                                               Conclusiones y
                                                               trabajo futuro
trioo
Modelo computacional orientado a objetos
                                                               Sergio Fern´ndez
                                                                          a


                                                               Motivaci´n
                                                                       o

                                                               Trabajo
                                                               relacionado
Realmente no existe un unico modelo, com´nmente los
                       ´                  u                    Modelos

lenguajes de programaci´n orientados a objetos se dividen en
                       o                                       Implementaciones

dos grandes familias:                                          Diseminaci´n
                                                                         o

                                                               Conclusiones y
                                                               trabajo futuro

    Lenguajes de programaci´n orientados a objetos
                           o
    basados en clases
trioo
Modelo computacional orientado a objetos
                                                               Sergio Fern´ndez
                                                                          a


                                                               Motivaci´n
                                                                       o

                                                               Trabajo
                                                               relacionado
Realmente no existe un unico modelo, com´nmente los
                       ´                  u                    Modelos

lenguajes de programaci´n orientados a objetos se dividen en
                       o                                       Implementaciones

dos grandes familias:                                          Diseminaci´n
                                                                         o

                                                               Conclusiones y
                                                               trabajo futuro

    Lenguajes de programaci´n orientados a objetos
                           o
    basados en clases

    Lenguajes de programaci´n orientados a objetos
                           o
    basados en prototipos
trioo
RDF
                                                            Sergio Fern´ndez
                                                                       a


                                                            Motivaci´n
                                                                    o

                                                            Trabajo
                                                            relacionado

                                                            Modelos
RDF (Resource Description Framework) es un lenguaje         Implementaciones
asertacional que provee un flexible y extensible modelo de   Diseminaci´n
                                                                      o
datos.                                                      Conclusiones y
                                                            trabajo futuro


Basado en el concepto de tripleta:

             (sujeto, predicado, objeto)
trioo
RDF (II)
           Sergio Fern´ndez
                      a


           Motivaci´n
                   o

           Trabajo
           relacionado

           Modelos

           Implementaciones

           Diseminaci´n
                     o

           Conclusiones y
           trabajo futuro
trioo
Comparaci´n de modelos
         o
                                                                      Sergio Fern´ndez
                                                                                 a


                                                                      Motivaci´n
                                                                              o

                                                                      Trabajo
Ambos modelos presentan algunas diferencias:                          relacionado

                                                                      Modelos

                                                                      Implementaciones

                                                                      Diseminaci´n
                                                                                o

                             OO                       RDF             Conclusiones y
                                                                      trabajo futuro
  Aproximaci´n
             o         Computacional              Asertacional
      Identidad          Comparable                 Universal
        Tipado             Simple                   M´ltiple
                                                      u
     Inferencia        Dependiente de             Dependiente
          tipos      los propios objetos       de las propiedades
                  (s´lo algunos lenguajes)
                    o
 Navegabilidad    a trav´s de los atributos
                        e                     a trav´s de los arcos
                                                    e
trioo
Comparaci´n de modelos
         o
                                                    Sergio Fern´ndez
                                                               a


                                                    Motivaci´n
                                                            o

                                                    Trabajo
                                                    relacionado

                                                    Modelos

Tambi´n hay otros aspectos que dif´
      e                           ıcilmente ser´n
                                               a    Implementaciones

alcanzables, por ejemplo:                           Diseminaci´n
                                                              o

                                                    Conclusiones y
                                                    trabajo futuro
trioo
Comparaci´n de modelos
         o
                                                    Sergio Fern´ndez
                                                               a


                                                    Motivaci´n
                                                            o

                                                    Trabajo
                                                    relacionado

                                                    Modelos

Tambi´n hay otros aspectos que dif´
      e                           ıcilmente ser´n
                                               a    Implementaciones

alcanzables, por ejemplo:                           Diseminaci´n
                                                              o

                                                    Conclusiones y
                                                    trabajo futuro

    Expresividad
trioo
Comparaci´n de modelos
         o
                                                    Sergio Fern´ndez
                                                               a


                                                    Motivaci´n
                                                            o

                                                    Trabajo
                                                    relacionado

                                                    Modelos

Tambi´n hay otros aspectos que dif´
      e                           ıcilmente ser´n
                                               a    Implementaciones

alcanzables, por ejemplo:                           Diseminaci´n
                                                              o

                                                    Conclusiones y
                                                    trabajo futuro

    Expresividad
    Restricciones de integridad
trioo
Comparaci´n de modelos
         o
                                                    Sergio Fern´ndez
                                                               a


                                                    Motivaci´n
                                                            o

                                                    Trabajo
                                                    relacionado

                                                    Modelos

Tambi´n hay otros aspectos que dif´
      e                           ıcilmente ser´n
                                               a    Implementaciones

alcanzables, por ejemplo:                           Diseminaci´n
                                                              o

                                                    Conclusiones y
                                                    trabajo futuro

    Expresividad
    Restricciones de integridad
    Versionado
trioo
Esquema
                                Sergio Fern´ndez
                                           a


                                Motivaci´n
                                        o

                                Trabajo
Motivaci´n
        o                       relacionado

                                Modelos

                                Implementaciones
Trabajo relacionado
                                Diseminaci´n
                                          o

                                Conclusiones y
                                trabajo futuro
Modelos

Implementaciones

Diseminaci´n
          o

Conclusiones y trabajo futuro
trioo
Implementaciones
                                                      Sergio Fern´ndez
                                                                 a


                                                      Motivaci´n
                                                              o

Realizadas para validar el estudio te´rico:
                                     o                Trabajo
                                                      relacionado

                                                      Modelos

                                                      Implementaciones

                                                      Diseminaci´n
                                                                o

                                                      Conclusiones y
                                                      trabajo futuro




Aunque pretendiendo que sean usables y funcionales.
trioo
Implementaciones
                                                            Sergio Fern´ndez
                                                                       a


                                                            Motivaci´n
                                                                    o

                                                            Trabajo
                                                            relacionado
Actualmente se ha desarrollado la idea en dos               Modelos

implementaciones de referencia, basando la elecci´n en el
                                                 o          Implementaciones

estudio realizado para determinar cales ser´
                                           ıan              Diseminaci´n
                                                                      o

potencialmente m´s interesantes:
                  a                                         Conclusiones y
                                                            trabajo futuro



    Una implementaci´n utilizando un lenguaje basado en
                    o
    clases (Java)

    Otra en un lenguaje basado en prototipos (Python)
trioo
jtrioo
                                                          Sergio Fern´ndez
                                                                     a


                                                          Motivaci´n
                                                                  o

                                                          Trabajo
                                                          relacionado

                                                          Modelos
     La implementaci´n den Java
                    o                                     Implementaciones

                                                          Diseminaci´n
                                                                    o

     Se utiliza mediante anotaciones                      Conclusiones y
                                                          trabajo futuro



     Persistencia totalmente basada en SPARQL/SPARUL,
     tanto de forma local como remota
     Publicaci´n directa de Linked Data en aplicaciones
              o
     JavaEE
trioo
jtrioo (II)
                                                                                Sergio Fern´ndez
                                                                                           a


                                                                                Motivaci´n
                                                                                        o

                                                                                Trabajo
 1   @RdfResource ( type = " foaf : Person " )                                  relacionado
 2   @URI ( base = " http :// example . org / person / " , parts = " name " )   Modelos
 3   public class Person {
 4                                                                              Implementaciones
 5        @RdfProperty ( type = " foaf : title " , optional = true )            Diseminaci´n
                                                                                          o
 6        private String title ;                                                Conclusiones y
 7                                                                              trabajo futuro
 8        @Literal ( type = " foaf : name " , lang = " es " )
 9        private String name ;
10
11        @RdfProperty ( type = " foaf : knows " ,
12                       fetch = FetchType . LAZY )
13        private List < Person > knows ;
14
15        // ...
16
17   }
trioo
pryoo
                                                             Sergio Fern´ndez
                                                                        a


                                                             Motivaci´n
                                                                     o

                                                             Trabajo
                                                             relacionado

    La implementaci´n en Python
                   o                                         Modelos

                                                             Implementaciones

                                                             Diseminaci´n
                                                                       o
    API mucho m´s flexible, con un uso intensivo de la
                  a                                          Conclusiones y
    reflectividad estructural que ofrece el lenguaje          trabajo futuro




    A´n en un temprano estado de desarrollo
     u

    Persistencia s´lo sobre endpoints remotos, dado que no
                  o
    existe implementaci´n nativa para SPARUL en Python
                        o
trioo
pryoo (II)
                                                                     Sergio Fern´ndez
                                                                                a


                                                                     Motivaci´n
                                                                             o

                                                                     Trabajo
                                                                     relacionado

 1   >>> from pryoo import RdfResource                               Modelos
 2   >>> sergio = RdfResource . retrieve ( " http :// www . wikier   Implementaciones
          . org / foaf # wikier " )
                                                                     Diseminaci´n
                                                                               o
 3   >>> sergio . rdftype
 4   [ foaf : Person ]                                               Conclusiones y
                                                                     trabajo futuro
 5   >>> sergio . foaf_name
 6   ’ Sergio Fernandez ’
 7   >>> len ( sergio . foaf_knows )
 8   38
 9   >>> diego = sergio . foaf_knows [ " http :// berrueta . net /
          foaf . rdf # me " ]
10   >>> diego . foaf_name
11   ’ Diego Berrueta ’
trioo

               Sergio Fern´ndez
                          a


               Motivaci´n
                       o

               Trabajo
               relacionado

               Modelos

               Implementaciones

               Diseminaci´n
                         o


demostraci´n
          o    Conclusiones y
               trabajo futuro
trioo
Esquema
                                Sergio Fern´ndez
                                           a


                                Motivaci´n
                                        o

                                Trabajo
Motivaci´n
        o                       relacionado

                                Modelos

                                Implementaciones
Trabajo relacionado
                                Diseminaci´n
                                          o

                                Conclusiones y
                                trabajo futuro
Modelos

Implementaciones

Diseminaci´n
          o

Conclusiones y trabajo futuro
trioo
Diseminaci´n
          o
                                                Sergio Fern´ndez
                                                           a


                                                Motivaci´n
                                                        o

                                                Trabajo
               Sergio Fern´ndez, Diego
                           a                    relacionado

               Berrueta, Miguel Garc´ıa         Modelos

                                                Implementaciones
               Rodr´ıguez, and Jose E. Labra.
                                                Diseminaci´n
                                                          o
               TRIOO, Keeping the
                                                Conclusiones y
               Semantics of Data Safe and       trabajo futuro

               Sound into Object-Oriented
               Software. In Proceedings of
               the 5th International
               Conference on Software and
               Data Technologies (ICSOFT
               2010), Athens, Greece, July
               22-24, 2010.
trioo
Esquema
                                Sergio Fern´ndez
                                           a


                                Motivaci´n
                                        o

                                Trabajo
Motivaci´n
        o                       relacionado

                                Modelos

                                Implementaciones
Trabajo relacionado
                                Diseminaci´n
                                          o

                                Conclusiones y
                                trabajo futuro
Modelos

Implementaciones

Diseminaci´n
          o

Conclusiones y trabajo futuro
trioo
Conclusiones y trabajo futuro
                                                                   Sergio Fern´ndez
                                                                              a

    Este trabajo de investigaci´n marca las lineas generales
                               o                                   Motivaci´n
                                                                           o
    a seguir                                                       Trabajo
                                                                   relacionado

                                                                   Modelos
        Actualmente s´lo se han integrado ambos modelos de
                     o
                                                                   Implementaciones
        datos
                                                                   Diseminaci´n
                                                                             o

                                                                   Conclusiones y
        Pero el prop´sito final pretende realizar una integraci´n
                    o                                         o    trabajo futuro
        a nivel sem´ntico
                   a


    Se han de asimilar con m´s pausa las conclusiones
                             a
    extra´
         ıdas de las implementaciones

        Mejor´ndolas
             a

        Abordando nuevas implementaciones

        Probablemente C# y JavaScript
trioo

                                                       Sergio Fern´ndez
                                                                  a


                                                       Motivaci´n
                                                               o


      Muchas gracias                                   Trabajo
                                                       relacionado

                                                       Modelos

                                                       Implementaciones

                                                       Diseminaci´n
                                                                 o

                                                       Conclusiones y
                                                       trabajo futuro
         M´s informaci´n en::
           a           o
        http://trioo.wikier.org/




  Esta presentaci´n est´ disponible bajo la licencia
                 o     a
Creative Commons Reconocimiento CompartirIgual

Contenu connexe

En vedette

Freeze tag pecha kucha
Freeze tag pecha kuchaFreeze tag pecha kucha
Freeze tag pecha kuchajneiro
 
Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014Sergio Fernández
 
Mailing lists meet the Semantic Web
Mailing lists meet the Semantic WebMailing lists meet the Semantic Web
Mailing lists meet the Semantic WebSergio Fernández
 
GET / LDP/1.0; 500 Internal Server Error
GET / LDP/1.0; 500 Internal Server ErrorGET / LDP/1.0; 500 Internal Server Error
GET / LDP/1.0; 500 Internal Server ErrorSergio Fernández
 
Geospatial Querying in Apache Marmotta - Apache Big Data North America 2016
Geospatial Querying in Apache Marmotta -  Apache Big Data North America 2016Geospatial Querying in Apache Marmotta -  Apache Big Data North America 2016
Geospatial Querying in Apache Marmotta - Apache Big Data North America 2016Sergio Fernández
 
Presentation of GSoC 2016 at Fachhochschule Salzburg
Presentation of GSoC 2016 at Fachhochschule SalzburgPresentation of GSoC 2016 at Fachhochschule Salzburg
Presentation of GSoC 2016 at Fachhochschule SalzburgSergio Fernández
 
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016Sergio Fernández
 

En vedette (8)

Freeze tag pecha kucha
Freeze tag pecha kuchaFreeze tag pecha kucha
Freeze tag pecha kucha
 
Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014Towards a Commons RDF Library - ApacheCon Europe 2014
Towards a Commons RDF Library - ApacheCon Europe 2014
 
Mailing lists meet the Semantic Web
Mailing lists meet the Semantic WebMailing lists meet the Semantic Web
Mailing lists meet the Semantic Web
 
GET / LDP/1.0; 500 Internal Server Error
GET / LDP/1.0; 500 Internal Server ErrorGET / LDP/1.0; 500 Internal Server Error
GET / LDP/1.0; 500 Internal Server Error
 
Demos CTIC
Demos CTICDemos CTIC
Demos CTIC
 
Geospatial Querying in Apache Marmotta - Apache Big Data North America 2016
Geospatial Querying in Apache Marmotta -  Apache Big Data North America 2016Geospatial Querying in Apache Marmotta -  Apache Big Data North America 2016
Geospatial Querying in Apache Marmotta - Apache Big Data North America 2016
 
Presentation of GSoC 2016 at Fachhochschule Salzburg
Presentation of GSoC 2016 at Fachhochschule SalzburgPresentation of GSoC 2016 at Fachhochschule Salzburg
Presentation of GSoC 2016 at Fachhochschule Salzburg
 
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
Introduction to Apache Beam (incubating) - DataCamp Salzburg - 7 dec 2016
 

Plus de Sergio Fernández

Software architecting at scale, a practical walkthrough
Software architecting at scale, a practical walkthroughSoftware architecting at scale, a practical walkthrough
Software architecting at scale, a practical walkthroughSergio Fernández
 
Trends in software architecture: a professional (des)orientation
Trends in software architecture: a professional (des)orientationTrends in software architecture: a professional (des)orientation
Trends in software architecture: a professional (des)orientationSergio Fernández
 
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015Sergio Fernández
 
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)Sergio Fernández
 
Redlink, The Data Linking API
Redlink, The Data Linking APIRedlink, The Data Linking API
Redlink, The Data Linking APISergio Fernández
 
Linked Data track at ApacheCon Europe 2014
Linked Data track at ApacheCon Europe 2014Linked Data track at ApacheCon Europe 2014
Linked Data track at ApacheCon Europe 2014Sergio Fernández
 
Introduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaIntroduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaSergio Fernández
 
Towards a Commons RDF Java library
Towards a Commons RDF Java libraryTowards a Commons RDF Java library
Towards a Commons RDF Java librarySergio Fernández
 
MICO Development Infrastructure
MICO Development InfrastructureMICO Development Infrastructure
MICO Development InfrastructureSergio Fernández
 
Apache Marmotta (incubating)
Apache Marmotta (incubating)Apache Marmotta (incubating)
Apache Marmotta (incubating)Sergio Fernández
 
Incubating Apache Linda (ApacheCon Europe 2012)
Incubating Apache Linda (ApacheCon Europe 2012)Incubating Apache Linda (ApacheCon Europe 2012)
Incubating Apache Linda (ApacheCon Europe 2012)Sergio Fernández
 
Barra libre en proyectos de software... pero sólo hasta media noche
Barra libre en proyectos de software... pero sólo hasta media noche Barra libre en proyectos de software... pero sólo hasta media noche
Barra libre en proyectos de software... pero sólo hasta media noche Sergio Fernández
 
Desarrollo Libre de Proyectos
Desarrollo Libre de ProyectosDesarrollo Libre de Proyectos
Desarrollo Libre de ProyectosSergio Fernández
 
eZaragoza, a tourist promotional mashup
eZaragoza, a tourist promotional mashupeZaragoza, a tourist promotional mashup
eZaragoza, a tourist promotional mashupSergio Fernández
 
El Software Libre como elemento catalizador de la innovación
El Software Libre como elemento catalizador de la innovaciónEl Software Libre como elemento catalizador de la innovación
El Software Libre como elemento catalizador de la innovaciónSergio Fernández
 
Software Libre en entornos propietarios
Software Libre en entornos propietariosSoftware Libre en entornos propietarios
Software Libre en entornos propietariosSergio Fernández
 

Plus de Sergio Fernández (17)

Software architecting at scale, a practical walkthrough
Software architecting at scale, a practical walkthroughSoftware architecting at scale, a practical walkthrough
Software architecting at scale, a practical walkthrough
 
Trends in software architecture: a professional (des)orientation
Trends in software architecture: a professional (des)orientationTrends in software architecture: a professional (des)orientation
Trends in software architecture: a professional (des)orientation
 
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
Geospatial querying in Apache Marmotta - ApacheCon Big Data Europe 2015
 
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
Semantics on services: the story so far (SALAD2015 keynote at ESWC2015)
 
Redlink, The Data Linking API
Redlink, The Data Linking APIRedlink, The Data Linking API
Redlink, The Data Linking API
 
Linked Data track at ApacheCon Europe 2014
Linked Data track at ApacheCon Europe 2014Linked Data track at ApacheCon Europe 2014
Linked Data track at ApacheCon Europe 2014
 
Introduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaIntroduction to LDP in Apache Marmotta
Introduction to LDP in Apache Marmotta
 
Towards a Commons RDF Java library
Towards a Commons RDF Java libraryTowards a Commons RDF Java library
Towards a Commons RDF Java library
 
MICO Development Infrastructure
MICO Development InfrastructureMICO Development Infrastructure
MICO Development Infrastructure
 
Apache Marmotta (incubating)
Apache Marmotta (incubating)Apache Marmotta (incubating)
Apache Marmotta (incubating)
 
Incubating Apache Linda (ApacheCon Europe 2012)
Incubating Apache Linda (ApacheCon Europe 2012)Incubating Apache Linda (ApacheCon Europe 2012)
Incubating Apache Linda (ApacheCon Europe 2012)
 
Barra libre en proyectos de software... pero sólo hasta media noche
Barra libre en proyectos de software... pero sólo hasta media noche Barra libre en proyectos de software... pero sólo hasta media noche
Barra libre en proyectos de software... pero sólo hasta media noche
 
Desarrollo Libre de Proyectos
Desarrollo Libre de ProyectosDesarrollo Libre de Proyectos
Desarrollo Libre de Proyectos
 
20061220 pfc-swaml
20061220 pfc-swaml20061220 pfc-swaml
20061220 pfc-swaml
 
eZaragoza, a tourist promotional mashup
eZaragoza, a tourist promotional mashupeZaragoza, a tourist promotional mashup
eZaragoza, a tourist promotional mashup
 
El Software Libre como elemento catalizador de la innovación
El Software Libre como elemento catalizador de la innovaciónEl Software Libre como elemento catalizador de la innovación
El Software Libre como elemento catalizador de la innovación
 
Software Libre en entornos propietarios
Software Libre en entornos propietariosSoftware Libre en entornos propietarios
Software Libre en entornos propietarios
 

Dernier

LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosAlbanyMartinez7
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesEdomar AR
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docxobandopaula444
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 

Dernier (20)

LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos Juridicos
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, Aplicaciones
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 

trioo, estudio e implementación de modelos de datos RDF en lenguajes orientados a objetos

  • 1. trioo Sergio Fern´ndez a Motivaci´n o trioo Trabajo relacionado estudio e implementaci´n de modelos de datos RDF o Modelos en lenguajes orientados a objetos Implementaciones Diseminaci´n o Conclusiones y Sergio Fern´ndez a trabajo futuro Director: Jos´ Emilio Labra e Co-Director: Diego Berrueta Trabajo Fin de M´ster a M´ster en Ingenier´ Web a ıa Universidad de Oviedo Oviedo, 28 de julio de 2010
  • 2. trioo Esquema Sergio Fern´ndez a Motivaci´n o Trabajo Motivaci´n o relacionado Modelos Implementaciones Trabajo relacionado Diseminaci´n o Conclusiones y trabajo futuro Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 3. trioo Esquema Sergio Fern´ndez a Motivaci´n o Trabajo Motivaci´n o relacionado Modelos Implementaciones Trabajo relacionado Diseminaci´n o Conclusiones y trabajo futuro Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 4. trioo Motivaci´n o Sergio Fern´ndez a Motivaci´n o Trabajo relacionado La Web de datos (Web of Data) ofrece una nueva Modelos aproximaci´n para explotar datos de manera distribuida en la o Implementaciones Web Diseminaci´n o Conclusiones y trabajo futuro Gran cantidad de datos publicados como RDF (Linked Data) Listos para ser consumidos usando protocolos est´ndar a (HTTP) y lenguajes de consulta (SPARQL)
  • 5. trioo Motivaci´n (III) o Sergio Fern´ndez a Linking Open Data cloud: Motivaci´n o Trabajo relacionado Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 6. trioo Motivaci´n (III) o Sergio Fern´ndez a Motivaci´n o Lamentablemente los m´todos actuales para acceder a esos e Trabajo datos RDF exigen al programador conocimientos avanzados relacionado del modelos de datos RDF: Modelos Implementaciones Diseminaci´n o Por tanto se convierte en una barrera que hay que Conclusiones y trabajo futuro tratar de saltar Permitiendo el uso de esos datos sin que tenga efectos negativos en los dise˜os orientados a objetos n A la vez que se trate de mantener la sem´ntica de los a datos lo m´s fiel posible dentro de las los lenguajes a orientados a objetos
  • 7. trioo Metodolog´ ıa Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Implementaciones Profundo estudio del estado del arte Diseminaci´n o Conclusiones y trabajo futuro An´lisis te´rico a o Implementaciones para validar los resultados
  • 8. trioo Esquema Sergio Fern´ndez a Motivaci´n o Trabajo Motivaci´n o relacionado Modelos Implementaciones Trabajo relacionado Diseminaci´n o Conclusiones y trabajo futuro Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 9. trioo Trabajo relacionado Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 10. trioo Trabajo relacionado Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Este trabajo est´ estrechamente relacionado con el a trabajo realizado estos a˜os acerca de: n Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 11. trioo Trabajo relacionado Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Este trabajo est´ estrechamente relacionado con el a trabajo realizado estos a˜os acerca de: n Implementaciones Diseminaci´n o Conclusiones y el mapeo de objetos al modelo relacional trabajo futuro
  • 12. trioo Trabajo relacionado Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Este trabajo est´ estrechamente relacionado con el a trabajo realizado estos a˜os acerca de: n Implementaciones Diseminaci´n o Conclusiones y el mapeo de objetos al modelo relacional trabajo futuro el acceso a datos en la Web (Sem´ntica) a
  • 13. trioo Trabajo relacionado Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Este trabajo est´ estrechamente relacionado con el a trabajo realizado estos a˜os acerca de: n Implementaciones Diseminaci´n o Conclusiones y el mapeo de objetos al modelo relacional trabajo futuro el acceso a datos en la Web (Sem´ntica) a Por tanto se aplican parecidas t´cnicas y patrones de e dise˜o (Active Record, Data Mapper y dem´s). n a
  • 14. trioo Trabajo relacionado (II): almacenes tradicionales Sergio Fern´ndez a Motivaci´n o (en este trabajo el t´rmino “almacenes tradicionales” realmente se e Trabajo relacionado refiere a las bases de datos relacionales tradicionales) Modelos Implementaciones Diseminaci´n o En los ultimos a˜os se ha hecho un esfuerzo importante en ´ n Conclusiones y trabajo futuro ese ´rea, por lo que han surgido muchas herramientas: a
  • 15. trioo Trabajo relacionado (II): almacenes tradicionales Sergio Fern´ndez a Motivaci´n o (en este trabajo el t´rmino “almacenes tradicionales” realmente se e Trabajo relacionado refiere a las bases de datos relacionales tradicionales) Modelos Implementaciones Diseminaci´n o En los ultimos a˜os se ha hecho un esfuerzo importante en ´ n Conclusiones y trabajo futuro ese ´rea, por lo que han surgido muchas herramientas: a ActiveRecord para Ruby
  • 16. trioo Trabajo relacionado (II): almacenes tradicionales Sergio Fern´ndez a Motivaci´n o (en este trabajo el t´rmino “almacenes tradicionales” realmente se e Trabajo relacionado refiere a las bases de datos relacionales tradicionales) Modelos Implementaciones Diseminaci´n o En los ultimos a˜os se ha hecho un esfuerzo importante en ´ n Conclusiones y trabajo futuro ese ´rea, por lo que han surgido muchas herramientas: a ActiveRecord para Ruby Django Models y SQLAlchemy para Python
  • 17. trioo Trabajo relacionado (II): almacenes tradicionales Sergio Fern´ndez a Motivaci´n o (en este trabajo el t´rmino “almacenes tradicionales” realmente se e Trabajo relacionado refiere a las bases de datos relacionales tradicionales) Modelos Implementaciones Diseminaci´n o En los ultimos a˜os se ha hecho un esfuerzo importante en ´ n Conclusiones y trabajo futuro ese ´rea, por lo que han surgido muchas herramientas: a ActiveRecord para Ruby Django Models y SQLAlchemy para Python GORM para Grails
  • 18. trioo Trabajo relacionado (II): almacenes tradicionales Sergio Fern´ndez a Motivaci´n o (en este trabajo el t´rmino “almacenes tradicionales” realmente se e Trabajo relacionado refiere a las bases de datos relacionales tradicionales) Modelos Implementaciones Diseminaci´n o En los ultimos a˜os se ha hecho un esfuerzo importante en ´ n Conclusiones y trabajo futuro ese ´rea, por lo que han surgido muchas herramientas: a ActiveRecord para Ruby Django Models y SQLAlchemy para Python GORM para Grails Hibernate (JPA) y MyBatis para Java
  • 19. trioo Trabajo relacionado (II): almacenes tradicionales Sergio Fern´ndez a Motivaci´n o (en este trabajo el t´rmino “almacenes tradicionales” realmente se e Trabajo relacionado refiere a las bases de datos relacionales tradicionales) Modelos Implementaciones Diseminaci´n o En los ultimos a˜os se ha hecho un esfuerzo importante en ´ n Conclusiones y trabajo futuro ese ´rea, por lo que han surgido muchas herramientas: a ActiveRecord para Ruby Django Models y SQLAlchemy para Python GORM para Grails Hibernate (JPA) y MyBatis para Java Y muchos otros...
  • 20. trioo Trabajo relacionado (III) Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 21. trioo Trabajo relacionado (III) Sergio Fern´ndez a Motivaci´n o Almacenes orientados a objetos: Trabajo JDO relacionado Dobblin Modelos Durus Implementaciones ZODB Diseminaci´n o ... Conclusiones y trabajo futuro
  • 22. trioo Trabajo relacionado (III) Sergio Fern´ndez a Motivaci´n o Almacenes orientados a objetos: Trabajo JDO relacionado Dobblin Modelos Durus Implementaciones ZODB Diseminaci´n o ... Conclusiones y Almacenes XML: trabajo futuro JAXB ...
  • 23. trioo Trabajo relacionado (III) Sergio Fern´ndez a Motivaci´n o Almacenes orientados a objetos: Trabajo JDO relacionado Dobblin Modelos Durus Implementaciones ZODB Diseminaci´n o ... Conclusiones y Almacenes XML: trabajo futuro JAXB ... Almacenes libres de esquema: NoSQL ...
  • 24. trioo Trabajo relacionado (III) Sergio Fern´ndez a Motivaci´n o Almacenes orientados a objetos: Trabajo JDO relacionado Dobblin Modelos Durus Implementaciones ZODB Diseminaci´n o ... Conclusiones y Almacenes XML: trabajo futuro JAXB ... Almacenes libres de esquema: NoSQL ... Pero tambi´n otras aproximaciones m´s horizontales: e a LINQ DataNucleus AccessPlatform ...
  • 25. trioo Trabajo relacionado (IV): almacenes RDF Sergio Fern´ndez a Tambi´n han surgido propuestas similares para hacer esto e Motivaci´n o Trabajo con RDF: relacionado Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 26. trioo Trabajo relacionado (IV): almacenes RDF Sergio Fern´ndez a Tambi´n han surgido propuestas similares para hacer esto e Motivaci´n o Trabajo con RDF: relacionado Modelos Implementaciones ActiveRDF y Spira para Ruby Diseminaci´n o Conclusiones y trabajo futuro
  • 27. trioo Trabajo relacionado (IV): almacenes RDF Sergio Fern´ndez a Tambi´n han surgido propuestas similares para hacer esto e Motivaci´n o Trabajo con RDF: relacionado Modelos Implementaciones ActiveRDF y Spira para Ruby Diseminaci´n o Empire y Sommer para Java Conclusiones y trabajo futuro
  • 28. trioo Trabajo relacionado (IV): almacenes RDF Sergio Fern´ndez a Tambi´n han surgido propuestas similares para hacer esto e Motivaci´n o Trabajo con RDF: relacionado Modelos Implementaciones ActiveRDF y Spira para Ruby Diseminaci´n o Empire y Sommer para Java Conclusiones y trabajo futuro Moriarty para PHP
  • 29. trioo Trabajo relacionado (IV): almacenes RDF Sergio Fern´ndez a Tambi´n han surgido propuestas similares para hacer esto e Motivaci´n o Trabajo con RDF: relacionado Modelos Implementaciones ActiveRDF y Spira para Ruby Diseminaci´n o Empire y Sommer para Java Conclusiones y trabajo futuro Moriarty para PHP SuRF para Python
  • 30. trioo Trabajo relacionado (IV): almacenes RDF Sergio Fern´ndez a Tambi´n han surgido propuestas similares para hacer esto e Motivaci´n o Trabajo con RDF: relacionado Modelos Implementaciones ActiveRDF y Spira para Ruby Diseminaci´n o Empire y Sommer para Java Conclusiones y trabajo futuro Moriarty para PHP SuRF para Python Y algunos otros...
  • 31. trioo Trabajo relacionado (IV): almacenes RDF Sergio Fern´ndez a Tambi´n han surgido propuestas similares para hacer esto e Motivaci´n o Trabajo con RDF: relacionado Modelos Implementaciones ActiveRDF y Spira para Ruby Diseminaci´n o Empire y Sommer para Java Conclusiones y trabajo futuro Moriarty para PHP SuRF para Python Y algunos otros... Desafortunadamente estas propuestas est´n demasiado a influenciadas por otras tecnolog´ que guardan poca ıas relaci´n con RDF, y abusan de implementar APIs o propietarias para realizar la persistencia en lugar de utilizar aproximaciones m´s puras basadas en SPARQL. a
  • 32. trioo Esquema Sergio Fern´ndez a Motivaci´n o Trabajo Motivaci´n o relacionado Modelos Implementaciones Trabajo relacionado Diseminaci´n o Conclusiones y trabajo futuro Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 33. trioo Modelo computacional orientado a objetos Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Realmente no existe un unico modelo, com´nmente los ´ u Modelos lenguajes de programaci´n orientados a objetos se dividen en o Implementaciones dos grandes familias: Diseminaci´n o Conclusiones y trabajo futuro
  • 34. trioo Modelo computacional orientado a objetos Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Realmente no existe un unico modelo, com´nmente los ´ u Modelos lenguajes de programaci´n orientados a objetos se dividen en o Implementaciones dos grandes familias: Diseminaci´n o Conclusiones y trabajo futuro Lenguajes de programaci´n orientados a objetos o basados en clases
  • 35. trioo Modelo computacional orientado a objetos Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Realmente no existe un unico modelo, com´nmente los ´ u Modelos lenguajes de programaci´n orientados a objetos se dividen en o Implementaciones dos grandes familias: Diseminaci´n o Conclusiones y trabajo futuro Lenguajes de programaci´n orientados a objetos o basados en clases Lenguajes de programaci´n orientados a objetos o basados en prototipos
  • 36. trioo RDF Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos RDF (Resource Description Framework) es un lenguaje Implementaciones asertacional que provee un flexible y extensible modelo de Diseminaci´n o datos. Conclusiones y trabajo futuro Basado en el concepto de tripleta: (sujeto, predicado, objeto)
  • 37. trioo RDF (II) Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 38. trioo Comparaci´n de modelos o Sergio Fern´ndez a Motivaci´n o Trabajo Ambos modelos presentan algunas diferencias: relacionado Modelos Implementaciones Diseminaci´n o OO RDF Conclusiones y trabajo futuro Aproximaci´n o Computacional Asertacional Identidad Comparable Universal Tipado Simple M´ltiple u Inferencia Dependiente de Dependiente tipos los propios objetos de las propiedades (s´lo algunos lenguajes) o Navegabilidad a trav´s de los atributos e a trav´s de los arcos e
  • 39. trioo Comparaci´n de modelos o Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Tambi´n hay otros aspectos que dif´ e ıcilmente ser´n a Implementaciones alcanzables, por ejemplo: Diseminaci´n o Conclusiones y trabajo futuro
  • 40. trioo Comparaci´n de modelos o Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Tambi´n hay otros aspectos que dif´ e ıcilmente ser´n a Implementaciones alcanzables, por ejemplo: Diseminaci´n o Conclusiones y trabajo futuro Expresividad
  • 41. trioo Comparaci´n de modelos o Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Tambi´n hay otros aspectos que dif´ e ıcilmente ser´n a Implementaciones alcanzables, por ejemplo: Diseminaci´n o Conclusiones y trabajo futuro Expresividad Restricciones de integridad
  • 42. trioo Comparaci´n de modelos o Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Tambi´n hay otros aspectos que dif´ e ıcilmente ser´n a Implementaciones alcanzables, por ejemplo: Diseminaci´n o Conclusiones y trabajo futuro Expresividad Restricciones de integridad Versionado
  • 43. trioo Esquema Sergio Fern´ndez a Motivaci´n o Trabajo Motivaci´n o relacionado Modelos Implementaciones Trabajo relacionado Diseminaci´n o Conclusiones y trabajo futuro Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 44. trioo Implementaciones Sergio Fern´ndez a Motivaci´n o Realizadas para validar el estudio te´rico: o Trabajo relacionado Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro Aunque pretendiendo que sean usables y funcionales.
  • 45. trioo Implementaciones Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Actualmente se ha desarrollado la idea en dos Modelos implementaciones de referencia, basando la elecci´n en el o Implementaciones estudio realizado para determinar cales ser´ ıan Diseminaci´n o potencialmente m´s interesantes: a Conclusiones y trabajo futuro Una implementaci´n utilizando un lenguaje basado en o clases (Java) Otra en un lenguaje basado en prototipos (Python)
  • 46. trioo jtrioo Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos La implementaci´n den Java o Implementaciones Diseminaci´n o Se utiliza mediante anotaciones Conclusiones y trabajo futuro Persistencia totalmente basada en SPARQL/SPARUL, tanto de forma local como remota Publicaci´n directa de Linked Data en aplicaciones o JavaEE
  • 47. trioo jtrioo (II) Sergio Fern´ndez a Motivaci´n o Trabajo 1 @RdfResource ( type = " foaf : Person " ) relacionado 2 @URI ( base = " http :// example . org / person / " , parts = " name " ) Modelos 3 public class Person { 4 Implementaciones 5 @RdfProperty ( type = " foaf : title " , optional = true ) Diseminaci´n o 6 private String title ; Conclusiones y 7 trabajo futuro 8 @Literal ( type = " foaf : name " , lang = " es " ) 9 private String name ; 10 11 @RdfProperty ( type = " foaf : knows " , 12 fetch = FetchType . LAZY ) 13 private List < Person > knows ; 14 15 // ... 16 17 }
  • 48. trioo pryoo Sergio Fern´ndez a Motivaci´n o Trabajo relacionado La implementaci´n en Python o Modelos Implementaciones Diseminaci´n o API mucho m´s flexible, con un uso intensivo de la a Conclusiones y reflectividad estructural que ofrece el lenguaje trabajo futuro A´n en un temprano estado de desarrollo u Persistencia s´lo sobre endpoints remotos, dado que no o existe implementaci´n nativa para SPARUL en Python o
  • 49. trioo pryoo (II) Sergio Fern´ndez a Motivaci´n o Trabajo relacionado 1 >>> from pryoo import RdfResource Modelos 2 >>> sergio = RdfResource . retrieve ( " http :// www . wikier Implementaciones . org / foaf # wikier " ) Diseminaci´n o 3 >>> sergio . rdftype 4 [ foaf : Person ] Conclusiones y trabajo futuro 5 >>> sergio . foaf_name 6 ’ Sergio Fernandez ’ 7 >>> len ( sergio . foaf_knows ) 8 38 9 >>> diego = sergio . foaf_knows [ " http :// berrueta . net / foaf . rdf # me " ] 10 >>> diego . foaf_name 11 ’ Diego Berrueta ’
  • 50. trioo Sergio Fern´ndez a Motivaci´n o Trabajo relacionado Modelos Implementaciones Diseminaci´n o demostraci´n o Conclusiones y trabajo futuro
  • 51. trioo Esquema Sergio Fern´ndez a Motivaci´n o Trabajo Motivaci´n o relacionado Modelos Implementaciones Trabajo relacionado Diseminaci´n o Conclusiones y trabajo futuro Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 52. trioo Diseminaci´n o Sergio Fern´ndez a Motivaci´n o Trabajo Sergio Fern´ndez, Diego a relacionado Berrueta, Miguel Garc´ıa Modelos Implementaciones Rodr´ıguez, and Jose E. Labra. Diseminaci´n o TRIOO, Keeping the Conclusiones y Semantics of Data Safe and trabajo futuro Sound into Object-Oriented Software. In Proceedings of the 5th International Conference on Software and Data Technologies (ICSOFT 2010), Athens, Greece, July 22-24, 2010.
  • 53. trioo Esquema Sergio Fern´ndez a Motivaci´n o Trabajo Motivaci´n o relacionado Modelos Implementaciones Trabajo relacionado Diseminaci´n o Conclusiones y trabajo futuro Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro
  • 54. trioo Conclusiones y trabajo futuro Sergio Fern´ndez a Este trabajo de investigaci´n marca las lineas generales o Motivaci´n o a seguir Trabajo relacionado Modelos Actualmente s´lo se han integrado ambos modelos de o Implementaciones datos Diseminaci´n o Conclusiones y Pero el prop´sito final pretende realizar una integraci´n o o trabajo futuro a nivel sem´ntico a Se han de asimilar con m´s pausa las conclusiones a extra´ ıdas de las implementaciones Mejor´ndolas a Abordando nuevas implementaciones Probablemente C# y JavaScript
  • 55. trioo Sergio Fern´ndez a Motivaci´n o Muchas gracias Trabajo relacionado Modelos Implementaciones Diseminaci´n o Conclusiones y trabajo futuro M´s informaci´n en:: a o http://trioo.wikier.org/ Esta presentaci´n est´ disponible bajo la licencia o a Creative Commons Reconocimiento CompartirIgual