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

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 orientadoa 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 orientadoa 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 orientadoa 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 trabajofuturo 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