Menu

Home

Jose Alberto Benítez Andrades

Inicio

Bienvenidos al Conversor de ficheros en formato RDF a OWL (también válido para convertir a otros formatos).

1. PROYECTO CONVERSOR RDF TO OWL

El proyecto creado en NetBeans se compone de los siguientes ficheros:

  • ParserRDFtoOWL.java
  • VentanaPrincipalParser.java

1.1. ParserRDFtoOWL.java

Este fichero contiene el algoritmo importante que realiza las tareas principales de conversión del fichero en formato RDF al nuevo fichero en formato OWL.

La clase posee el constructor por defecto de JAVA, ya que, no he implementado ninguno en particular, y además posee un método, que es el que realiza todo el algoritmo, y se llama Parseador.

Recibe por parámetro los siguientes elementos:

  • String fichOrigen : Cadena con el nombre del fichero inicial que vamos a convertir ( ruta completa del fichero )

  • String fichDestino : Cadena con el nombre y la ruta completa del fichero de destino ( fichero convertido )

  • int numDePropiedades : Número entero que contiene el número total de propiedades de nuestro objeto principal ( del cual crearemos sus instancias , por ejemplo el objeto Ficha que contiene propiedades como Tipo, Nombre, Formato.... etc )

  • String cBuscar : Cadena que delimita cada objeto instanciado en nuestro fichero de Origen, me explico :

    • En RDF Dublin core, la cadena a buscar sería “rdf:Description” , ya que los objetos instanciados se encuentran delimitados por <rdf:description> y </rdf:description>
  • String cIden : Cadena de la que vamos a obtener los identificadores de nuestros objetos instanciados :

    • En el caso de nuestro fichero en formato RDF Dublin Core, el texto que se encuentra entre las etiquetas <dc:identifier> y </dc:identifier> es lo que usaremos como identificador con lo cual cIden debería ser “dc:identifier” sin comillas.
  • String nIden : Cadena que delimita nuestros nuevos objetos creados, en nuestro caso, queremos objetos de tipo Ficha, con lo cual la cadena a enviar sería “Ficha” sin comillas. Y los objetos que se van a crear. Son del tipo <ficha about="”Identificador" único="" de="" cada="" objeto”=""><propiedades></propiedades></ficha>

  • String[] props : Array de cadenas que almacena cada propiedad actual en el fichero Origen:

    • En nuestro ejemplo, dc:type, dc:format, dc:publisher, dc:relation, dc:date son algunas de las propiedades de cada objeto rdf:Description.
  • String[] propsNuevas: Array de cadenas que almacena cada propiedad nueva del fichero de destino :

    • En nuestro caso, de dc:type la propiedad nueva es Tipo, de dc:format la propiedad nueva es Formato...
  • JFrame frame : Simplemente le pasamos la ventana de nuestra aplicación para que pueda crear diálogos de información o de error.

  • boolean debugger : Es un booleano que maneja los mensajes en consola, si es true, mostrará mensajes en consola, si es false, no.

1.2. VentanaPrincipalParser.java

Contiene la interfaz gráfica del programa creada en con la biblioteca Swing de JAVA. El código no lo adjunto ya que es bastante comprensible y está anexado a este proyecto.

1.3. Funcionamiento

Para poder ejecutar esta aplicación, es necesario tener instalada la máquina virtual de JAVA. JAVA es un lenguaje que destaca, entre otras cosas, por ser multiplataforma y esto lo consigue gracias a su sistema de ejecución de ficheros a través de su máquina virtual.

Gracias a ello, tan solo debemos instalar la máquina virtual de JAVA en cualquiera de nuestras plataformas ( ya sea Windows, MacOS o sistemas UNIX ) y ya podremos hacer funcionar cualquiera de nuestras aplicaciones creadas en JAVA. La web para poder descargar la JVM es la siguiente: http://www.oracle.com/technetwork/java/javase/downloads/index.html .

Necesitamos instalar el JRE, y en caso de querer desarrollar en JAVA, instalaremos el JDK que incluye el JRE.
En este caso, el ordenador utilizado para probar este programa, cuenta con el sistema operativo Windows 7 Ultimate en su versión de 64bits.

Si tenemos bien configurada nuestra máquina virtual, con tan solo hacer “doble click” sobre el fichero generado en el proyecto (ParserRDFtoOWL.jar) se abrirá la aplicación.

Para poder mostrar todas las opciones que tiene este pequeño programa, voy a mostrar la ejecución del mismo desde la consola de comandos de Windows ( Inicio > Ejecutar > CMD ). Nos dirigimos al directorio que contenga nuestro fichero .jar y ejecutamos la siguiente línea:

java -jar ParserRDFtoOWL.jar

Nos encontramos una ventana que contiene los siguientes elementos:

  • Zona de Fichero Origen: Contiene una etiqueta JLabel con el título “Fichero Origen”, un campo de tipo JTextField, no editable, en el que veremos la ruta y nombre de nuestro fichero de origen a convertir y un botón de tipo JButton para Seleccionar el fichero, este abrirá una ventana de dialogo para poder seleccionar nuestro fichero de origen entre las diferentes carpetas de nuestro ordenador.

  • Zona de Fichero Destino: Está compuesto por una etiqueta JLabel con título Fichero Destino y un campo JTextField en el que introduciremos la ruta de nuestro fichero de destino y el nombre. Para facilitar al usuario esta tarea, el programa escribe de forma automática en este recuadro el nombre del fichero a convertir añadiéndole al final “_ok.owl”, de manera que, si tenemos un fichero origen como el siguiente:

    • C:\ficherosOntologia\ficheroOrigen.txt
    • El programa escribirá en el recuadro de fichero de destino C:\ficherosOntologia\ficheroOrigen_ok.owl de forma automática, pudiendo luego ser editado por el usuario.
  • Zona de Objeto en Fichero Origen: Compuesta por una etiqueta JLabel y un campo JTextField para escribir nuestro objeto a convertir. Aquí lo que debemos convertir es la clase principal de nuestro fichero origen. En nuestro caso, al querer pasar de formato RDF DC a otro formato, nuestro objeto principal se encuentra dentro de las etiquetas <rdf:description> y </rdf:description>. Siendo así, lo que debemos escribir en este recuadro es rdf:Description .

  • Zona de identificador en el origen y nueva clase principal del nuevo formato: Está compuesta por 2 etiquetas JLabel y dos campos de texto JTextField. Lo que debemos escribir aquí es lo siguiente:

    • Comenté anteriormente que nuestro fichero en RDF DC poseía una propiedad interna que contenía un identificador del objeto. Esta propiedad se llama <dc:identifier>, es por ello, que en nuestro caso particular, lo que debemos escribir en el primer JTextField es dc:identifier , para que nuestro programa realice la posterior búsqueda.</dc:identifier>
    • En relación a la clase principal, al tratarse de Fichas de distintos elementos, nuestra clase principal se llamará Ficha , y esta es la palabra que escribiremos en el segundo campo de texto.
  • Zona de propiedades en fichero origen y en fichero de destino: Esta zona se compone de una tabla JTable, con un modelo de tabla DefaultTableModel, en el cual añadiremos filas compuestas por dos columnas. En la primera columna se inserta el nombre de la etiqueta en el formato del fichero origen, y en la segunda columna se inserta el nombre de la etiqueta en el formato de destino. Por ejemplo: en el fichero en formato RDF DC, tenemos una propiedad que se llama <dc:type> y en nuestro nuevo formato, esa propiedad pasará al llamarse <tipo>, pues deberemos crear una fila, clickando sobre el botón “Añadir propiedades” y escribiremos en la fila creada dc:type y Tipo respectivamente.
    Si en algún momento tuviésemos algún error, o añadiésemos más campos de la cuenta, podemos solucionarlo seleccionando las filas que nos necesitemos y pulsando sobre el botón “Borrar Props seleccionadas”</tipo></dc:type>

  • Zona de conversión y debugger: En la zona inferior de nuestra aplicación, tenemos un botón Convertir y un CheckBox para activar o desactivar un depurador. Para realizar el programa y comprobar que todo funciona correctamente, inserté unas impresiones en consola a medida que se ejecutaban distintas partes del programa.
    Una vez finalizado y viendo que el programa funcionaba correctamente, decidí crear una variable booleana que permitiera al usuario elegir si quería leer estos mensajes en consola, o no.

Al clickar en convertir, teniendo el debugger activo, se pueden ver mensajes en la consola de MSDOS.

2. CONTACTO

Esta aplicación ha sido realizada por:

3. DESCARGA

Project Members: