Investigación científica y tecnológica
Modelo web semántico para contactar grupos musicales en la ciudad de Bogotá
Semantic web model to contact music bands in Bogota
Revista Ingenierías USBMed
Universidad de San Buenaventura, Colombia
ISSN-e: 2027-5846
Periodicidad: Semestral
vol. 12, núm. 2, 2021
Recepción: 30 Octubre 2020
Aprobación: 12 Mayo 2021
Resumen: La presente investigación muestra el desarrollo de un modelo web semántico cuyo objetivo es crear una base de conocimiento de grupos y géneros musicales tradicionales de la ciudad de Bogotá, la forma en la que se transmite la información hacia y desde la base de conocimiento creada, es mediante el uso de un API (Application Programming Interfaces) el cual permite la comunicación entre dos aplicaciones de software mediante un conjunto especifico de reglas, utilizando la arquitectura REST (REpresentational State Transfer), basado en el protocolo HTTP (Hypertext Transfer Protocol), esta información se presenta en un portal Web. Los visitantes y usuarios que ingresen al portal pueden realizar búsquedas basadas en SPARQL, acrónimo recursivo de (SPARQL protocol and RDF Query Language) el cual es un lenguaje estándar para realizar consultar en ontologías [1] y así contactar grupos musicales de acuerdo con una serie de filtros tales como: ubicación geográfica, género musical, trayectoria en el mercado, tarifas entre otros, este desarrollo se convierte en una alternativa digital para que los grupos musicales de la ciudad de Bogotá puedan promocionar sus servicios y generen un canal virtual de contacto rápido y seguro, con ello se busca mejorar la calidad de vida de los integrantes de agrupaciones musicales.
Palabras clave: Web Semántica, Ontología, Apache Jena, SPARQL, Modelo ontológico.
Abstract: This research shows the development of a semantic web model whose objective is to create a knowledge base of traditional groups and music genres of the city of Bogota, the method in which the information is transmitted to and from the knowledge base created is through the use an API based on REST (REpresentational State Transfer) architecture, which uses the HTTP (Hypertext Transfer Protocol), this information is presented in a web portal. Visitors and users who visit the portal can carry out searches that are based on SPARQL (SPARQL protocol and RDF Query Language) [1], to contact music groups according to a series of filters such as: geographical location, music genre, market background, rates among others, this project becomes a digital alternative for musical groups in the city of Bogota to promote their services and provide a virtual channel of contact quickly and safely, this aims to improve the quality of life of members of musical bands.
Keywords: Semantic Web, Ontology, Apache Jena, SPARQL, Ontological model.
I. Introducción
Una de las ventajas de la Web Semántica es su capacidad para organizar información, asegurando búsquedas más precisas por significado y no por contenido textual. [2], se puede utilizar esta fortaleza para crear una base de conocimiento de género y grupos tradicionales de la ciudad de Bogotá a partir de una Ontología, sin embargo, uno de los mayores desafíos en la construcción de la misma es la naturaleza de la informalidad de esta actividad económica, ya que no existe un sitio Web donde se registren los grupos musicales, ni existe un censo oficial por parte de entidades gubernamentales de las agrupaciones, si bien hay unas cifras aproximadas que datan del año 2006 [3], 2012 [4] y un movimiento Popular y Artístico Colombiano (MOPAC) que intento agremiar a estos artistas, a ciencia cierta no se tienen cifras exactas, pues resulta sencillo que un grupo de artistas creen una agrupación nueva tan solo con invitar a colegas a ser parte de esta, como también es cierto que por discusiones de sus integrantes los grupos musicales clausuren.
Debido a la informalidad descrita previamente y que en la ciudad de Bogotá, con frecuencia los ciudadanos contactan grupos musicales para celebrar fechas y eventos especiales, resulta en ciertas circunstancias una tarea compleja contactarlos, puesto que la mayoría de estos grupos musicales al momento de ofrecer sus servicios lo hacen a través de canales tradicionales como: tarjetas de presentación, publicidad en vallas, carteles en las calles, pocos cuentan con página web propia, no hacen un uso eficiente de las redes sociales y en muchas ocasiones tienen desactualizada su información de contacto, estas falencias fueron las que motivaron a desarrollar un modelo web semántico el cual crea una base de conocimiento sobre los géneros y agrupaciones musicales tradicionales de la ciudad de Bogotá, dicha información es mostrada en un sitio web, para que tanto usuarios como grupos musicales puedan ofertar o tomar el servicio.
El presente artículo se divide en las siguientes partes: en la sección 2 se presenta el marco teórico donde se exponen los conceptos principales de la investigación, la metodología para la construcción del modelo semántico se presenta en la sección 3, en la sección 4 se muestran los resultados obtenidos, por último, las conclusiones de la investigación se encuentran en la sección 5.
Para el desarrollo del modelo Web Semántico, es importante mostrar que utiliza un conjunto de protocolos y componentes que hacen posible su implementación y uso [5], en la Figura 1, se observa cómo interactúan esas tecnologías, lo que comúnmente se denomina un Stack de protocolos.
La parte más importante en la construcción del presente modelo es la creación de la ontología, la cual es una pieza fundamental en la construcción de la Web Semántica, pues esta permite adicionar semántica a conceptos de un dominio de conocimiento y realizar una jerarquía de conceptos. Las ontologías se definen como extensiones de la rama del RDF (Resource Description Framework) pero principalmente se utiliza el lenguaje OWL, (Ontology Web Language). [5], a su vez una ontología tiene cinco tipos de componentes los cuales son: clases, relaciones, axiomas formales, instancias y conceptos [6].
Existen diferentes metodologías que permiten diseñar, desarrollar y gestionar ontologías, algunas de las más empleadas son SENSUS, esta constituye un enfoque Top-Down para derivar ontologías específicas del dominio a partir de grandes ontologías; en esta metodología se identifican un conjunto de términos semilla que son relevantes en un dominio particular. Tales términos se enlazan manualmente a una ontología de amplia cobertura, los usuarios seleccionan automáticamente los términos relevantes para describir el dominio y acotar la ontología, este algoritmo devuelve el conjunto de términos estructurados jerárquicamente para describir un dominio, que puede ser usado como esqueleto para la base de conocimiento [7].
La metodología ACO, es una metodología para la construcción automática de ontologías apoyada en técnicas de procesamiento de lenguaje natural y aprendizaje automático, que fue inspirada en las metodologías manuales existentes para la construcción de ontologías [7].
La metodología Methontology fue desarrollada por la Universidad Politécnica de Madrid y es una de las metodologías ontológicas más completas, debido a que tiene sus raíces en las actividades identificadas por el proceso de desarrollo de software propuesto por la IEEE [8]. permite además crear ontologías nuevas o reutilizar otras.
Methontology está compuesta por actividades para la planificación del proyecto, la calidad del resultado, la documentación, un ciclo de vida basado en prototipos evolucionados y la metodología propiamente dicha, que especifica los pasos a ejecutar en cada actividad, las técnicas usadas, los resultados a obtener y su forma de evaluación, [9], esta metodología propone las siguientes etapas: especificación, conceptualización, formalización, implementación y mantenimiento.
Hay muchas otras metodologías existentes para el diseño y construcción de Ontologías, sin embargo, en la presente investigación se decidió utilizar Methontology debido al gran material bibliográfico existente, además ha sido recomendada como metodología para la construcción de ontologías por la Fundación de los Agentes Físicos Inteligentes [8].
III. Metodología
En la Figura 2 se puede observar las actividades que se emplearán en el desarrollo de la ontología.
A. Especificación
En esta primera actividad se busca saber por qué se construye la ontología, cuál será su uso y quienes serán los usuarios finales, dando respuesta a estos interrogantes de esta actividad, se propone la construcción de una ontología que genere una base de conocimiento de los géneros musicales tradicionales de la ciudad de Bogotá, con el fin de presentarlos en un portal Web, para que los integrantes de estas agrupaciones oferten sus servicios y actualicen su información de contacto constantemente.
B. Conceptualización
Esta actividad busca organizar y construir la percepción informal del dominio en una especificación semi informal, para ello la metodología plantea una serie de 11 tareas, en un orden no secuencial [8].
En la Figura 3, se observan tareas propuestas en la metodología, en la presente sección se mostrarán todas las tareas exceptuando la 7,8,10 y 11, ya que en la actividad de formalización se observarán las instancias de la ontología creada junto con sus atributos y reglas.
Tarea 1 y 4, Glosario y diccionario de términos, están construido por los términos de interés de la presente investigación, la Tabla 1 muestra los elementos, conceptos y atributos esenciales que se utilizan como base para la construcción de la ontología y constituyen los términos de interés del dominio.
Tarea 2, Taxonomía de conceptos. En la Figura 4 se presentan la jerarquía de conceptos que fue definida y creada a partir del glosario de términos del dominio. Tarea 3, diagrama de relaciones binarias. En la Figura 5 se presentan los tipos de relaciones que existen entre los conceptos definidos previamente.
Tarea 6, atributos de las instancias, en la Tabla 2 se describirá como van a quedar definidas cada una de las instancias de la ontología y cuáles serán sus valores predefinidos.
Nombre | Descripción |
Música | Representa el concepto y termino del arte. |
Origen colombiano | Representa diferentes géneros musicales tanto del interior del país como litorales. |
Origen mexicano | Representa diferentes géneros musicales frutos del mestizaje entre las tradiciones eu- |
ropeas y propias. | |
Grupo musical | Hace referencia a los integrantes de una agrupación que interpretan música de un |
género musical. | |
Género musical | Es la manera que se pueden clasificar las distintas maneras de hacer música, según |
su país de origen, instrumentos empleados, ritmo, melodía o letra. | |
Mariachi | Es un género musical de origen mexicano, cuyo origen se remonta al siglo XVII, sus |
principales instrumentos son la trompeta, la vihuela y guitarrón. | |
Norteña | Es un género musical de origen mexicano, cuyo origen se remonta al siglo XX, sus |
principales instrumentos son el bajo y el acordeón. | |
Vallenato | Es un género musical de origen colombiano, su principal instrumento es el acordeón. |
Trío Es un género musical de origen desconocido, sus principales instrumentos son la | |
guitarra y la voz, en la presente investigación se asumirá que es de origen colombiano. | |
Llanera | Es un género musical de origen colombiano y venezolano, cuyo origen se remonta al |
siglo XIX, sus principales instrumentos son el arpa y maracas. | |
Antigüedad | Es un atributo común para todos los grupos musicales, que define el tiempo de con- |
formación de la agrupación. |
Nombre | Atributo | Valor |
Descripción | Cadena de texto | |
Género musical | Origen | Cadena de texto |
Instrumentación | Cadena de texto | |
Zona geográfica | Numérico | |
Descripción | Cadena de texto | |
Grupo musical | Representante | Cadena de texto |
Precio | Numérico | |
Número de contacto | Cadena de texto |
Tarea 9, axiomas formales, un género musical tiene un único origen, además este origen es único, esto se hace con el fin de simplificar el modelo y hacer las relaciones más sencillas.
C. Formalización
Esta actividad pretende transformar el modelo conceptual construido previamente al modelo formal, para lograr este objetivo se usó el editor de ontologías Protégé versión 5.2, esté es un editor de código abierto, fue desarrollado por la Universidad de Stanford, proporciona las herramientas necesarias para el desarrollo de ontologías en la web [10], el primer paso en la construcción de la ontología fue la creación de clases jerárquicas, como se muestra en la Figura 6, se observa por ejemplo, que el mariachi es una subclase de un género musical de origen mexicano, el cual es disyunto con su homólogo de tipo norteña y a su vez con los de origen colombiano, esto quiere decir que si un grupo musical pertenece al género mariachi, no puede pertenecer a un grupo vallenato u otro más.
Después de crear la jerarquía de clases se crearon las propiedades de los objetos, las cuales describen relaciones entre individuos, por ejemplo, los géneros de origen colombiano se clasifican en Vallenato, Llanera y Trio, como se observa en la Figura 7.
El siguiente paso fue describir las propiedades de los datos, para los campos precio y numero de contacto el tipo de dato es entero, para los campos descripción y representante el tipo de dato es cadena de texto, para la ubicación geográfica el tipo de dato es doble ya que necesitamos precisión para mostrar la latitud y longitud de la ubicación geográfica del grupo, esto se puede observar en la Figura 8.
Por último, se validó que la Ontología creada no contenga errores de sintaxis o de lógica, para lo cual se utilizó una herramienta que está en incluida en editor Protégé llamada “Reasoner” como se muestra en la Figura 9.
D. Implementación
En esta actividad se muestra el resultado final del modelo formal elaborado, en la Figura 10 se muestra el resumen de la Ontología desarrollada gracias a la herramienta OntoGraf, que está incluida en el editor Protégé, versión 5.2.
Culminada la ontología, se exporto en formato OWL, y se desplego en el servidor de ontologías Apache Jena, el cual permite el ingreso de instancias a la ontología creada, las ventajas de utilizar este servidor es que sirve como motor de inferencia para razonar sobre ontologías, proporciona compatibilidad de consultas con distintas especificación SPARQL y permite persistir los datos en una base relacional [11], en la Figura 11 se muestra el despliegue de la Ontología, este servidor tendrá la responsabilidad de almacenar la información de cada grupo musical que se inscriba en el portal Web, el cual se denominará una nueva instancia, guarda información de la agrupación como: género al que pertenece, descripción de la banda, número de contacto, precio del servicio, ubicación geográfica y un representante.
E. Mantenimiento
El objetivo de esta actividad es el borrado de instancias inútiles para el modelo planteado inicialmente o la incorporación de nuevas que se han ido produciendo con el tiempo, puede llevar tareas de introducción de cambios en el contenido de la información, ya sea redefiniendo atributos, relaciones o incluso conceptos [12], como se ha creado apenas el modelo ontológico y se realizaron pruebas con pocas instancias, esta actividad puede que se lleve a cabo en trabajos futuros, puesto que el modelo planteado es flexible y puede perfectamente agregar nuevos géneros musicales de otros países y con ello va agregando cierto grado de complejidad.
F. Actividades de Gestión y Soporte
Estas actividades son transversales a las actividades de desarrollo descritas previamente, como se observa en la Figura 2, en cada punto de las actividades de desarrollo, se revisó que se cumpliera con la calidad esperada, recibiendo retroalimentación constante de los grupos musicales que hicieron parte de la presente investigación y se creó un repositorio [13], donde se encuentra documentado tanto el código de la solución como la información relevante durante este proceso de investigación.
Para que los integrantes de los diferentes grupos musicales tradicionales de la ciudad de Bogotá puedan ofertar sus servicios se desarrolló un portal Web, utilizando el framework desarrollado por Google Angular, versión 6, se creó un formulario de registro solicitando descripción del grupo musical, género al que pertenece, años de trayectoria en el mercado, número de contacto y nombre del representante de la banda como se muestra en la Figura 12, la ubicación Geográfica se toma utilizando el GPS ya sea del navegador Web o del teléfono móvil.
Cuando la agrupación termina el registro en el Portal Web, se envían los datos del formulario utilizando el protocolo HTTP en la operación PUT, esta información se inserta en la ontología previamente creada que se encuentra en el servidor Apache Jena, cada agrupación que se registra en el portal es una nueva instancia en la ontología, esta información se persiste, de igual forma cuando un usuario desea realizar una búsqueda se hace una petición tipo GET la cual es procesada por el servidor quien realiza una consulta tipo SPARQL que devuelve los datos los cuales se muestran en el portal Web, en la Figura 13 se muestra la arquitectura del servidor el cual siempre está atento a cualquier petición vía HTTP y dependiendo de la operación se realiza un CRUD tipo SPARQL, para eliminar una instancia de la ontología se hace un DELETE, para actualizar información de un grupo musical se realiza un PATCH, la información viaja en formato JSON a través de un API REST el cual sirve como canal de comunicación y brinda seguridad entre el Portal Web y el servidor.
Cuando un usuario desea buscar una agrupación según el género musical, se creó una pestaña en el Portal Web llamada buscar en la cual se muestran los diferentes géneros y el usuario al dar clic en alguno de estos géneros hace una petición al servidor tipo GET con el parámetro del género musical como se muestra en la Figura 14, el servidor hace un SELECT tipo SPARQL a todas las instancias presentes en la Ontología y esta devuelve el resultado de la consulta, esta información se muestra en la Figura 15 y el usuario puede contactar al grupo musical.
En la Figura 16, se puede ver como la información que envía el servidor es mostrada en el portal para que el usuario pueda visualizar o contactar algún grupo musical del género musical seleccionado previamente.
V. Conclusiones
El uso de una ontología en vez de una base de datos relacional tradicional permite crear reglas de inferencia en el portal, ya que al crear relaciones de conceptos y una jerarquía de clases genera conocimiento explícito el cual puede ser procesado por computadoras.
Al utilizar Protégé como herramienta en la construcción de la Ontología y apache Jena como servidor se recomienda utilizar la tecnología Java para insertar, actualizar y leer datos ya que están escritas en este lenguaje y podría generar errores de compatibilidad o haría aún más complejo el desarrollo de software.
El uso de la ontología permite enriquecer y agregar metadatos los cuales añaden información que se presenta en el portal, permite que la información sea extensible, a futuro se pueda agregar nuevos géneros musicales, para enriquecer la información mostrada en el Portal Web.
La ontología creada contiene las relaciones existentes entre los grupos y los géneros musicales a los que ellos pertenecen, por lo tanto, un grupo musical no puede pertenecer a dos géneros musicales diferentes y cada género musical solo puede pertenecer a un origen, de esta manera se simplifica el modelo ontológico, aunque puede que un género musical tenga uno o varios orígenes compartidos.
Se tiene la proyección de realizar la versión del portal en un ambiente productivo para que pueda ser utilizado por más usuarios y grupos musicales en la ciudad de Bogotá, ya que en la presente investigación se desarrolló un prototipo funcional en un servidor local.
La presente investigación pretende usar la tecnología, al servicio de la población para mejorar su calidad de vida y de esta forma hacer que el contacto digital les permita atraer, captar y retener nuevos clientes.
Referencias
[1] J. Bolleman, et al., “HAMAP as SPARQL rules– A portable annotation pipeline for genomes and proteomes,” GigaScience, vol. 9, n.◦ 2, p. giaa003, febrero 2020. https://doi.org/10.1093/gigascience/giaa003.
[2] H. Mora, et al., “La Web Semántica Como Herramienta para el Apoyo a la Docencia,” in xiii Jornadas de Redes de Investigación en Docencia Universitaria, Universidad de Alicante, 2015, pp. 1912–1925. http://hdl.handle.net/1004/49521.
[3] O. L. Martínez Ante, “Bogotá, una ciudad mariachi y charra: hay aproximadamente 220 grupos,” El Tiempo, 30 septiembre 2006. https://www.eltiempo.com/archivo/documento/CMS-3265929.
[4] T. Viudes, “Mariachis en Bogotá,” El País, 17 septiembre 2012. https://elviajero.elpais.com/el-viajero/2012/09/12/actualidad/1347472345_224984.html.
[5] G. Jakus, V. Milutinovi, S. Omerovi y S. Tomai, Concepts, Ontologies, and Knowledge Representation. New York: Springer, 2013. https://doi.org/10.1007/978-1-4614-7822-5.
[6] T. R. Gruber, “Toward principles for the design of ontologies used for knowledge sharing,” International Journal of Human-Computer Studies, vol. 43, n.◦ 5–6, pp. 907–928, noviembre 1995. https://doi.org/10.1006/ijhc.1995.1081.
[7] F. Bolaño López y J. N. Pérez Castillo, “Esquema metodológico para la construcción automática de ontologías,” Revista vínculos, vol. 10, n.◦ 1, pp. 20–30, octubre 2013. https://doi.org/10.14483/2322939X.4694.
[8] O. Corcho, M. Fernández-López, A. Gómez-Pérez y A. López-Cima, “Construcción de ontologías legales con la metodología METHONTOLOGY y la herramienta WebODE,” in Law and the Semantic Web. Legal Ontologies, Methodologies, Legal Information Retrieval, and Applications, R. Benjamins, P. Casanovas, J. Breuker y A. Gangemi, Edits., Springer-Verlag, 2005, pp. 142–157.
[9] J. A. Guzmán Luna, M. López Bonilla y I. Durley Torres, “Metodologías y métodos para la construcción de ontologías,” Scientia Et Technica, vol. xvii, n.◦ 50, pp. 133–140, 2012. https://www.redalyc.org/articulo.oa?id=84923878033.
[10] Protégé, “About Bmir,” [Online]. Available: https://protege.stanford.edu/about.php.
[11] A. Jena, “Jena architecture overview,” 2011. [Online]. Available: https://jena.apache.org/about-jena/architecture.html.
[12] A. Valdivieso Martínez, “Propuesta para el desarrollo de una ontología en la realización de pruebas de software,” Serie Científica De La Universidad De Las Ciencias Informáticas, vol. 13, n.◦ 1, pp. 62–72, 2020. https://publicaciones.uci.cu/index.php/serie/article/view/532.
[13] E. Ramos, Y. Pereira, H. Núñez, M. Castro y R. Casañas, “Aplicación de visualización de una ontología para el dominio del análisis del semen humano,” Ingeniería y ciencia, vol. 3, n.◦ 5, pp. 43–66, 2007.