Informe Laboral

22
Marcos Pianelli Legajo Nº47360 Ingeniería Informática Infosys Technologies Ltd. Convertidor eficiente de XML a Ontologías Agosto de 2011 Práctica Laboral 1 Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

description

Informe LaboralInforme LaboralInforme Laboral

Transcript of Informe Laboral

Page 1: Informe Laboral

Marcos PianelliLegajo Nº47360

Ingeniería InformáticaInfosys Technologies Ltd.

Convertidor eficiente de XML a Ontologías

Agosto de 2011

Práctica Laboral

1Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 2: Informe Laboral

Indice

Convertidor eficiente de XML a OntologíasResumen.....................................................................................................................................3Infosys Technologies Ltd.............................................................................................................3Descripción General de Tareas...................................................................................................5Práctica Laboral..........................................................................................................................5Motivación del proyecto..............................................................................................................6Investigación...............................................................................................................................6Entorno de desarrollo.................................................................................................................7

Eclipse..................................................................................................................................7Strawberry Perl.....................................................................................................................7Protégé.................................................................................................................................7Ontopia.................................................................................................................................8

Conceptos de Ontologías...........................................................................................................9Herramientas de conversión existentes....................................................................................10

Conversores a Topic Maps..................................................................................................10Enfoque XSLT y limitaciones...............................................................................................11Conversores a OWL............................................................................................................12Conversores a RDF.............................................................................................................12

Nuestra solución........................................................................................................................13Consolidación de esquema.................................................................................................14Mapeo y generación de ontologías.....................................................................................17

Implementación.........................................................................................................................19Benchmarking...........................................................................................................................19Conclusión.................................................................................................................................21Bibliografia.................................................................................................................................22

2Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 3: Informe Laboral

Resumen En este informe se presenta la práctica laboral de Marcos Damián Pianelli que tuvo lugar desde el 3 de enero del 2011 al 26 de Marzo del 2011 en la empresa Infosys Technologies Ltd., sede Bangalore, India. El rol desempeñado en esta empresa fue la investigación y creación de una herramienta para convertir automáticamente esquemas y documentos XML a distintos tipos de ontologías web :OWL, RDF y Topic Maps.

Infosys Technologies Ltd.Infosys [1] es una empresa multinacional de servicios de IT con base en Bangalore, India. Infosys es una de las compañias de IT más grande de la India con 127.779 empleados distribuido en 65 oficinas y 59 centros de desarollo en India, China, Australia, República Checa, Polonia, Inglaterra, Canadá, México y Japón, para entender como esta organizado Infosys, la figura 1 muestra el organigrama de la empresa. Hoy en día son lideres en IT y consultoría con ingresos de USD 5.7 millones anuales. La empresa fue fundada en Julio de 1981 por siete emprendedores, Nagavara Ramarao Narayana Murthy, Nandan Nilekani, Kris Gopalakrishnan, S. D. Shibulal, K Dinesh y N. S. Raghavan considerado oficialmente el primer empleado de la compañía. La inversión inicial fue de U$S 250 y la primer oficina registrada se encontró en Pune, India.Infosys ha sido premiada por clientes e industrias por los excelentes servicios de software provistos. Entre los reconocimientos más importantes recibidos durante 2009, se encuentran “La compañía india más admirada” y “La

mejor compañía india para trabajar”. Infosys además se encuentra entre las 10 “Mejores compañías para líderes”.

Las productos que ofrece Infosys son los siguientes :● Finacle● Flypp● Infosys HIMI● Infosys iEngage● Infosys iProwe● Infosys MaskIT● Infosys mConnect● Infosys Research On Demand● Infosys Unified Communications and Collaboration (UC)● iTransform

Los servicios que renta Infosys son los siguientes :

● Consulting and Systems Integration● Business IT Services● Engineering Services● Business Process Outsourcing● Cloud

3Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 4: Informe Laboral

Fig 1: Organigrama de Infosys.

4Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 5: Informe Laboral

Descripción General de TareasUna vez terminado el proceso de selección telefonica y translado a la sede de Bangalore se decidió que trabaje en el

area de research llamado SETLabs. El objetivo de este sector es la investigación, prototipado y dependiendo del proyecto implementación de nuevas tecnologías y herramientas para nuevos productos, servicios y procesos

internos. Otra faceta importante de SETLabs es la redacción y publicación de papers científicos relacionados con la tarea a desempeñar, los mismos participan de varios congresos de investigación informática y foros relacionados.

Dependiendo de la envergadura del proyecto, el paso a seguir en el area de SETLabs es el prototipado o prueba de

concepto del tema de investigación para poder analizar y decidir la factibilidad de desarrollo a gran escala del proyecto. De esta forma es fácil y flexible preveer problemas de usabilidad, performance y distribución del producto o

servicio en cuestión. No obstante, proyectos de investigación de pequeña envergadura son implementados directamente sin pasar por la etapa de prototipado.

En mi rol como pasante de esta compañía tuve como tarea investigar y desarrollar una herramienta de conversión automática de esquemas y documentos XML a ontologías web conocidas como OWL, RDF yTopic Maps con jornadas laborales de 8 horas. Dado que esta herramienta fue pensada en principio para uso

interno de la compañía, no se tuvo que crear ningún prototipo y luego de la etapa de investigación se pasó a la etapa de desarrollo.

Práctica Laboral La práctica laboral realizada consistió en tres etapas que se van a detallar en las próximas secciones : Investigación, Implementación y Benchmarking de una herramienta de conversión automática de esquemas y

documentos XML a tres distintas ontologías: OWL, RDF y Topic Maps. La etapa de investigación consistió en el aprendizaje de conceptos y definiciones de estas ontologías, lenguaje de programación PERL y el entendimiento

del funcionamiento de una herramienta ya existente de conversión automática de esquemas y documentos XML a la ontologia de OWL. La etapa de implementación se basó en escribir el programa de conversión en PERL durante

los últimos 2 meses del proyecto. Finalmente la etapa de Benchmarking tuvo como fin comparar esta herramienta de conversión automática con otras ya existentes en el mercado y medir su performance.

5Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 6: Informe Laboral

Motivación del proyecto

En estos últimos años XML se ha convertido en un formato estándar de intercambio de información en negocios electrónicos. Aunque XML pueda soportar interoperabilidad sintáctica, los problemas surgen cuando fuentes de

información representadas como documentos XML necesitan ser integradas a un sistema. La razón es que XML carece de un soporte para una forma eficiente de compartir la conceptualización del modelo, lenguaje de consulta de

información y performance a la hora de encontrar esa información. Las ontologías web pueden jugar un rol muy importante aquí ya que puede habilitar interoperabilidad semántica y soporta la representación de conocimiento

usando clases, propiedades e instancias. Dependiendo de la ontologia a usar, estas también ofrecen lenguaje de consultas y formas de acceder a esa información de forma inmediata y con menor costo de busqueda que si se

realizara en un documento XML.

En muchas aplicaciones es requerido convertir una gran cantidad de documentos XML a algún tipo de ontologia.

Existen algunos convertidores para realizar este trabajo, no obstante ellos tienen serias deficiencias, por ejemplo no ser automáticos ya que no manipulan las referencias internas de los esquemas XML y por ende una persona tiene

que encargarse manualmente de resolver el problema para seguir con la etapa de conversión.

Para aliviar esos inconvenientes se propuso un framework de mapeo y una herramienta de conversión automática

de documentos XML a ontologías. En la sección de Investigación se ilustra la técnica de mapeo para ver la eficacia de nuestro enfoque. En la sección de Benchmarking se muestran pruebas de performance de la herramienta creada

utilizando documentos de prueba XML.

Investigación

En esta sección se describen los programas y herramientas que fueron necesarios para poner a punto el entorno de

desarrollo, los conceptos que tuvieron que ser aprendidos para comenzar con el desarrollo de la herramienta de conversión y el modelo teórico de conversión a implementar.

Para iniciar la etapa de investigación fue necesario instalar en la máquina de trabajo distintos programas y herramientas para que el aprendizaje sea más ameno y que a medida que se investigaban nuevos conceptos de

ontologías, también se puedan crear, editar y ver modelos e instancias de las mismas.

6Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 7: Informe Laboral

Una vez entendidos los conceptos base que definen cada ontología y como funcionan cada uno de ellos se tuvo que

investigar herramientas de conversión de archivos XML a otras ontologías ya existentes en el mercado y sus respectivos modelos teóricos que figuraban en publicaciones científicas de otros centros de investigaciones de la

competencia o internet y luego buscar defectos y semejanzas con el modelo teórico de conversión propuesto por el jefe de proyecto para poder encontrar fallas o errores antes de implementar la herramienta.

Finalmente se corrigieron errores conceptuales del modelo a raíz de la investigación de otras herramientas y el entendimiento del funcionamiento de las ontologías a convertir, luego se pasó a la etapa de Implementación. .

Entorno de desarrollo

EclipseEclipse es una IDE de desarrollo de software open source apoyado por una gran comunidad de desarrolladores a nivel mundial. La fundación Eclipse es una corporación sin fines de lucro que hospeda todos los proyectos open

source de la comunidad y los organiza para tener una mejor distribución via internet.

Para la etapa de investigación se uso la versión 3.4.2 Ganymade para windows XP. Fue necesario agregar el plugin

de Subversion para tener acceso al svn dentro de Eclipe y también el plugin EPIC para tener una interfaz de programación en PERL dentro de Eclipse y con varias facilidades como debugging, autocompletado de métodos y

diagrama de clases y métodos del proyecto.

Strawberry PerlStrawberry Perl es una distribución de Perl para Windows. Generalmente otras distribuciones se basan en que el

usuario tenga varias herramientas ya instaladas en el sistema y que no son de uso común. En cambio Strawberry Perl contiene todo lo necesario para instalar Perl dentro de windows sin ningún problema de dependencias de

software.

Protégé Protégé es un framework y editor de ontologías open source. Esta plataforma soporta dos tipos de modelados de

ontologia : RDF y OWL. Esta basado en Java y es extensible, provee un fácil entorno plug-and-play para crear prototipos rápidamente y desarrollo de aplicaciones desktop o web. Protégé es apoyado por una muy fuerte

comunidad de desarrolladores, profesores, gobiernos y corporaciones que usan sus ventajas para solucionar problemas relacionados con biomedicina, recolección de inteligencias y modelos corporativos

7Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 8: Informe Laboral

Fig 2 : Interfaz de Protégé corriendo una versión standalone en windows 7. Los diagramas que se ven es la representación visual de una ontologia OWL.

OntopiaOntopia es un conjunto de herramientas que contiene todo lo que uno necesita para construir una aplicación completa basada en Topic Maps. Usando Ontopia uno puede diseñar su ontologia, llenar el Topic Map manual o

automáticamente, crear la interfaz de usuario, mostrar visualizaciones gráficas del Topic Map y mucho más. Ontopia esta basado 100% en Java y puede correr en cualquier sistema operativo. Es completamente open source y puede

ser usado sin ningúna restricción. Para poder usarlo se intala un servidor web tomcat y la aplicación de Omnigator, luego se puede acceder desde el browser en la dirección del localhost.

8Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 9: Informe Laboral

Fig 3: Interfaz web de Omnigator donde se puede ver, editar y crear ontologías de Topic Maps.

Conceptos de Ontologías

En la etapa de aprendizaje para crear la herramienta de conversión se tuvo que investigar las ontologías : Topic Maps [2] , OWL [3] y RDF [4]. Para comenzar se leyó el libro “A Semantic Web Primer” [5] para entender los

conceptos base de cualquier ontologia, estudiar la representación y terminologia de estas ontologías en particular y entender su uso .

La siguiente etapa de aprendizaje fue analizar y entender en detalle las ontologías antes nombradas para saber su sintaxis y representación, además de descubrir ventajas, desventajas y limitaciones entre estas. Además se tuvo que

reforzar el aprendizaje utilizando ejemplos variados de estas ontologías en los programas de edición y visualización de ontologías como Protégé y Ontopia instalados previamente en la computadora de trabajo para poder tener

experiencia de uso a medida que se aprendían los conceptos.

9Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 10: Informe Laboral

Para profundizar el aprendizaje fue necesario leer una serie de papers recomendados por el grupo de trabajo y otros que se encontraron a medida que se avanzaba en la etapa de investigación, los paper leidos fueron :

●Mapping XML to OWL Ontologies [6]●XML to RDF Conversion: A Generic Approach [7]●An efficient XML to OWL converter [8]●The relation between ontologies and XML schemas [9]●Deriving Ontologies from XML Schema [10]

Finalmente se expuso una presentación intermedia a la cuarta semana de investigación al jefe de proyecto e interesados para evaluar el progreso de lo aprendido, plantear problemas que podrían surgir en el framework de

conversión postulado y definir los pasos a seguir para la etapa de implementación de la herramienta.

Herramientas de conversión existentes

Luego de investigar los conceptos de las ontologías en general y particular, fue necesario buscar herramientas

existentes de conversión de documentos y esquemas XML a otras ontologías para poder buscar deficiencias y tenerlas en cuenta en nuestra solución a implementar.

Para comenzar no se encontró ningúna herramienta que pueda transformar los documentos XML a más de una ontologia. Es por ello que se describen los convertidores existentes por cada una de las ontologías a investigar:

Conversores a Topic MapsPara la ontología Topic Maps, no fue posible encontrar ningún tipo de herramienta que convierta XML a esta ontología. No obstante se encontró un tema en el grupo de Ontopia que refería justamente a si existía alguna forma

de convertir XML a Topic Maps. Solamente se expuso un técnica de conversión usando documentos XSLT [11].

10Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 11: Informe Laboral

Enfoque XSLT y limitaciones XSLT es un standard definido por la W3C que presenta una forma de transformar documentos XML en otros a base de reglas que el usuario crea, esta conversión incluye formatos que no son XML, como por ejemplo el formato de ontologías.

XSLT tiene una limitación grave para la conversión automática de cualquier documento XML. Esta limitación se basa en no poder manejar los distintos niveles de importación que pueda llegar a presentar un esquema XML. En XSLT la conversión es definida por reglas de mapeo en un archivo con extensión .rules donde el usuario tiene que definirlas manualmente lo cual es tedioso y puede llegar a no contemplar la conversión de todos los tags XML en el caso que la sintaxis del formato a convertir sea dependiente de más de un tag XML. Además este método no puede manejar referencias internas dentro del XML lo cual es otra gran limitación para la correcta conversión de XML a otra ontologia. Finalmente no es posible manejar archivos de gran tamaño en memoria ya que necesita tener todos los archivos en memoria al momento de la conversión. Es por esto que se descartó desde primer instancia este enfoque de usar XSLT como el core de la herramienta de conversión.

Conversores a OWLPara la ontología OWL se encontraron dos herramientas de conversión las cuales no eran completamente automáticas. Ellas son XML2OWL[12] y JXM2OWL[13].

XML2OWL Es un programa escrito en C++ para conversión semi-automática que usa documentos de conversión XSLT. Hay que tener en cuenta que el archivo OWL que se crea es solo de instancia y no modelo, esta herramienta supone la existencia del modelo OWL que define las clases y propiedades a instanciar en el archivo OWL que se crea. Por ello y las limitaciones de XSLT nombradas anteriormente, esta herramienta fue descartada.

Fig 4. Diagrama de conversión de la heramienta XML2OWL

11Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 12: Informe Laboral

JXML2OWLEs un proyecto que consta de dos partes, una API llamada JXML2OWL API que es una libreria open source hecha en Java para mapear esquemas y documetos XML a la ontologia OWL. La otra parte es una aplicación standalone

hecha en Java SWING con interfaz gráfica llamada JXMLS2OWL Mapper que usa la API mencionada.

Al igual que la herramienta XML2OWL, esta herramienta basa la conversión a OWL en documentos XSLT y por ello

también fue descartado.

Fig 5. Diagrama de conversión de la heramienta JXML2OWL

Conversores a RDFPara la ontologia RDF se encontró un solo convertidor que es parte de un proyecto más grande llamado ReDeFer

[14] que utiliza un modulo de conversión de esquemas y documentos XML a RDF. Esta herramienta también basa su conversión con documentos XSLT y es por ello que fue descartado como opción a implementar ya que no es

puramente automática dado que la importación multinivel de esquemas recursivo no puede ser manejado por XSLT.

12Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 13: Informe Laboral

Nuestra solución

La arquitectura general de nuestro convertidor consta de una caja negra llamada EXCO1 donde el input es un documento XML con referencia a un esquema que a su vez puede referenciar a otros esquemas de forma recursiva

como se puede apreciar en la figura 6, una vez procesado el documento XML la salida de EXCO es el modelo e instancia de la ontologia a convertir.

Fig 6. Arquitectura de nuestra solución.

Dado que gran parte de los convertidores existentes basaban su conversión en documentos XSLT, se optó por usar un lenguaje de programación para implementar nuestra herramienta, en nuestro caso la solución fue usar Perl ya

que es un lenguaje independiente del sistema donde corra, es escalable y puede manejar de forma eficiente el

parseo de esquemas y documentos XML. Gracias a utilizar un lenguaje de programación como Perl es posible tener un conversor completamente automático resolviendo una de las grandes limitaciones de XSLT que es manejar esquemas XML con referencias a otros esquemas. Para resolver este problema lo que se hizo fue generar un nuevo

esquema que consolida todos los esquemas referenciados por el esquema inicial, en la sección “Consolidación de

esquema” se habla en más detalle de como esto es logrado.

13Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

1EXCO = Efficient XML to Ontology Converter

Page 14: Informe Laboral

En los esquemas de XML (XSD) existen constraints del tipo cardinalidad que define el número de veces que un elemento puede figurar en los documentos XML que usan el equema, esto a la hora de convertirlo a una ontologia es

posible que no se puedan usar, como por ejemplo en Topic Maps que no tiene un modelo propiamente dicho y no define una sintaxis para usar constraints de cardinalidad, se tuvo que implementar una forma Ad-Hoc de hacerlo

agregando propiedades del tipo “cardinality constraint”. En OWL y RDF si fue posible usar constraints de cardinalidad.

Consolidación de esquemaPara implementar la consolidación de esquema se utilizo un algoritmo que consta de tres pasos y puede ser visto en

la figura 7. El primero es guardar la locación de todos los esquemas recursivamente en un hash para evitar que en la etapa de merge haya duplicados dado que dependiendo del árbol de referencias entre esquemas es posible que dos

o más esquemas apunten a otro, de esta forma aseguramos que guardamos la locación de cada esquema una sola vez. El segundo paso es crear un nuevo esquema que contenga a todos los demás esquemas dentro del hash, de

esta forma se crea un único esquema llamado “Merged XSD”. El tercer y último paso consta en reorganizar el esquema que fue mergeado removiendo referencias redundantes y de esta forma se crea el esquema final llamado

“Consolidated XSD”.

Fig 7. Diagrama de flujo de la consolidación de esquema propuesta.

Veamos un ejemplo de la consolidación de esquema. En la figura 8 se ven dos esquemas, SETLab.xsd (esquema

principal) y Employee.xsd (esquema referenciado).

14Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 15: Informe Laboral

Fig 8. Esquemas iniciales. SETLab.xsd esquema principal, Employee.xsd esquema referenciado

Una vez mergeados los esquemas, se crea el archivo “SETLab Merged XSD” que se puede apreciar en la figura 9 el cual posee una referencia a “Computer” y un elemento del tipo “EmployeeType” que pertenecían al esquema

referenciado pero que ahora están en el mismo archivo. Además el include del otro esquema sigue estando.

Fig 9. Esquema SETLab Merged.

15Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 16: Informe Laboral

Finalmente se consolida el esquema que puede verse en la figura 10 y se crea el archivo “SETLab Consolidated

XSD” que no posee tag de include ya que no necesita referencias a otros esquemas y tampoco tiene la referencia a “Computer” ni “EmployeeType”, ambos fueron reemplazados por la definición de los mismos para reducir espacio.

Fig 10. Esquema SETLab Consolidated

16Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 17: Informe Laboral

Mapeo y generación de ontologías

En el proceso de la generación de la ontología se pasan por dos etapas, la etapa de extracción de modelo (figura 11) y la etapa de generación de instancias (figura 12). La primer etapa se basa en un mapeo predefinido de los tags del

esquema XML consolidado a la sintaxis de la ontología a convertir, los mapeos a las distintas ontologías se pueden ver en las figuras 13, 14 y 15.

Fig 11. Diagrama de extracción de modelo a partir del esquema XML consolidado.

La segunda y última etapa se basa en generar la instancia de la ontologia a convertir. Para ello se aplica un

numerado automático por cada instancia de clase del modelo de la ontologia generado, por ejemplo en la fig 12 hay un elemento definido llamado “Computer”, si en el documento XML de entrada con referencia al esquema

SETLabs.xsd se encuentra el tag “<Computer>Machine_001</Computer>” se creará una instancia en la ontologia llamada Computer01 con la propiedad “name=Machine_001”.

Fig 12. Diagrama de generación de instancia a partir del esquema consolidado y el documento XML de entrada.

17Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 18: Informe Laboral

Fig 13. Mapeo de XSD a OWL.

Fig 14. Mapeo de XSD a RDF.

18Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 19: Informe Laboral

Fig 15. Mapeo de XSD a Topic Maps.

ImplementaciónLa etapa de implementación se comenzó en las últimos dos meses de la pasantía luego de terminar la investigación,

el modelo teórico de conversión y haber aprendido los conceptos básicos del lenguaje Perl. Se estableció con el jefe de proyecto tener entregas parciales cada dos semanas para evaluar la calidad de código, el progreso del proyecto y

poder modificar cualquier imprevisto que pueda surgir en la etapa de implementación. No obstante al tener mi jefe del proyecto en el mismo piso del edificio donde trabajaba ayudó a eliminar cualquier duda que se presente en el

momento día a día y avanzar más rápido de lo previsto. A las seis semanas y media la herramienta de conversión se terminó y se pudo pasar rápidamente a la etapa de Benchmarking.

Benchmarking Luego de finalizar con la etapa de implementación, se pasó a la etapa de testeo y benchmarking de la herramienta de conversión. Se utilizó como maquina de prueba una computadora con Windows 7, dos cores de 4GHz y 2GB de

memoria. Los documentos de prueba fueron proveidos por el jefe de proyecto los cuales poseen cinco esquemas referenciados indirectamente y distinto tamaño dependiendo del nombre, por ejemplo Inv50 tiene 50 instancias del

elemento “Inbox” definido en el esquema. Para asegurar calidad en la etapa de benchmarking se modificó el script de la herramienta de conversión para que corra la misma prueba 100 veces y luego sacar promedio de esos tiempos

antes de mostrarlo en consola.

19Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 20: Informe Laboral

Por cuestiones de simplicidad se comparó con el convertidor XML2OWL que usa documentos XSLT para mostrar que para más de 500 instancias (Inv500) ya el generador falla y da error, en cambio con la herramienta creada con

nuestro enfoque se pudieron correr satisfactoriamente todos los archivos de prueba con un crecimiento temporal directamente proporcional al tamaño del archivo como se puede ver en la figura 16.

Fig 16. Tabla de resultados comparando el tiempo de conversión a distintas ontologías.

20Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 21: Informe Laboral

Conclusión

Con respecto al proyecto, se cumplieron satisfactoriamente todas las tareas definidas por mi jefe e incluso fue posible terminar antes de lo esperado y realizar el benchmarking de la herramienta creada. Quedan varias cosas por

hacer en el futuro con respecto a este proyecto ya que la idea es seguir mejorandola y convertirla posiblemente en un producto. Las mejora a futuro son optimizar el código, agregar soporte a elementos no usuales de XSD, agregar

soporte para convertir a distintas versiones de las ontologías OWL, RDF y Topic Maps y crear una GUI para mejorar la experiencia de usuario y modificar el programa para que pueda correr en sistemas distribuidos.

La idea detrás de la práctica laboral es otorgar al estudiante una experiencia distinta y única en un ambiente

auténtico de trabajo. La posibilidad de enfrentar problemas reales de una compañía y utilizar los conocimientos y herramientas otorgados por la carrera a lo largo de estos años tiene un valor muy importante en la vida de un

profesional. Sumado a esto, vivir todos los días hablando solamente inglés y la experiencia de realizar el proyecto en una compañía multi-nacional en otro país con un contexto radicalmente distinto al nuestro fue un agregado de valor

que superó cualquier tipo de expectativas y espero que otros estudiantes puedan tener la oportunidad de experimentar un cambio tan profundo a nivel personal como el que tuve durante mi estadía en Infosys.

21Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822

Page 22: Informe Laboral

Bibliografia [1] Infosys. Webpage : http://infosys.com

[2] Topic Maps. Introductions to Topic Maps. web : http://www.ontopia.net/section.jsp?id=tm-intro

[3] OWL. Webpage: http://en.wikipedia.org/wiki/Web_Ontology_Language

[4] RDF. Webpage: http://es.wikipedia.org/wiki/Resource_Description_Framework

[5] Grigoris Antoniou, Frank van Harmelen. A Semantic Web Primer

[6] Hannes Bohring and Sören Auer. Mapping XML to OWL Ontologies

[7] Davy Van Deursen and Chris Poppe. XML to RDF Conversion: A Generic Approach

[8] Damien Lacoste, Kiran Prakash Sawant, Suman Roy. An efficient XML to OWL converter

[9] Michel Klein, Dieter Fensel and Frank van Harmelen. The relation between ontologies and XML schemas

[10] Ivan Bedini, Georges Gardarin, Benjamin Nguyen. Deriving Ontologies from XML Schema

[11] XSLT. Webpage: http://es.wikipedia.org/wiki/Extensible_Stylesheet_Language_Transformations

[12] XML2OWL. Webpage : http://www.avt.rwth-aachen.de/AVT/index.php?id=524

[13] JXML2OWL. Webpage: http://jxml2owl.projects.semwebcentral.org/

[14] ReDeFer. XML2RDF module Webpage: http://rhizomik.net/html/redefer/xml2rdf/

22Av. Eduardo Madero 351/399 (1106) Buenos Aires tel. 6396-4822