Skip to content

About

Ontología de la Biblioteca Virtual en Salud de Cuba (OWL 2 DL)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

Repository files navigation

🏥 Ontomed-BVS: Ontología de la Biblioteca Virtual en Salud de Cuba

OWL 2 DL Versión Licencia DOI

Ontología de dominio para representar recursos de información en salud y ciencias biomédicas en el contexto de la Biblioteca Virtual en Salud de Cuba (BVS Cuba).


📋 Tabla de Contenidos


📖 Descripción

Ontomed-BVS es una ontología formal desarrollada en OWL 2 DL para estructurar y enlazar recursos de información en salud del ecosistema cubano. Forma parte de la investigación doctoral:

"Marco de Trabajo para el diseño de un Modelo Conceptual de Datos Abiertos y Enlazados en el contexto de la Biblioteca Virtual en Salud de Cuba"

Autor: Lic. Keilyn Rodríguez Perojo
Directora: Dra. Isabel Galina Russell
Institución: UNAM - Instituto de Investigaciones Bibliotecológicas y de la Información
Año: 2025

🎯 Objetivos

  • ✅ Representar recursos bibliográficos y documentales en salud
  • ✅ Modelar relaciones entre personas, instituciones y obras
  • ✅ Integrar vocabularios estándares internacionales
  • ✅ Preservar terminología cubana (DeCS vs. MeSH)
  • ✅ Facilitar interoperabilidad con sistemas globales
  • ✅ Soportar datos abiertos y enlazados (Linked Open Data)

✨ Características

🔧 Técnicas

  • Estándar: OWL 2 DL (Web Ontology Language)
  • Razonamiento: Decidible, validable con Pellet/HermiT
  • Serializaciones: OWL/XML, Turtle, RDF/XML
  • Namespace: http://datos.bvs.sld.cu/ontologia/
  • Anotaciones: Bilingües (español/inglés)
  • Restricciones: Cardinalidad, disyunción, funcionalidad, transitividad

📊 Conceptuales

  • 14 clases principales (Work, Person, Organization, Collection...)
  • 13 subclases especializadas (Article, Hospital, Researcher...)
  • 10 propiedades de objeto (hasAuthor, affiliatedWith, isPartOf...)
  • 7 propiedades de datos (title, publicationDate, doi...)
  • 6 restricciones OWL avanzadas
  • Framework extensible hasta 342 entidades

📂 Estructura del Repositorio

``` ontomed-bvs/ ├── ontology/ # Archivos ontología │ ├── ontomed-bvs.owl # OWL/XML (formato estándar) │ ├── ontomed-bvs.ttl # Turtle (legible) │ └── ontomed-bvs.rdf # RDF/XML (alternativo) ├── docs/ # Documentación │ ├── ANEXO_3C_REFERENCIA.txt # Referencia completa │ ├── JERARQUIA_CLASES.md # Jerarquía visual │ └── GUIA_USO.md # Guía de keilynrp ├── examples/ # Ejemplos de uso │ ├── instancias.ttl # Ejemplos ABox │ └── consultas.sparql # Consultas SPARQL ├── validation/ # Validación │ ├── shacl-shapes.ttl # Shapes SHACL │ └── test-cases.ttl # Casos de prueba ├── .github/ │ └── FUNDING.yml # Financiamiento ├── LICENSE # Licencia CC BY 4.0 ├── README.md # Este archivo ├── CITATION.cff # Citación formal └── CHANGELOG.md # Historial cambios ```


🚀 Instalación

Descarga Directa

```bash

Clonar repositorio

git clone https://github.com/keilynrp/ontomed-bvs.git cd ontomed-bvs

Los archivos OWL están en ./ontology/

```

Uso con RDFLib (Python)

```bash pip install rdflib ```

```python from rdflib import Graph

g = Graph() g.parse("ontology/ontomed-bvs.owl", format="xml")

Consultar clases

for s, p, o in g.triples((None, RDF.type, OWL.Class)): print(f"Clase: {s}") ```

Uso con Apache Jena

```bash

Validar sintaxis

riot --validate ontology/ontomed-bvs.owl

Cargar en Fuseki

./fuseki-server --file=ontology/ontomed-bvs.owl /ontomed ```


💻 Uso

1. Visualización en Protégé

  1. Descargar Protégé 5.5+
  2. Abrir ontology/ontomed-bvs.owl
  3. Explorar clases, propiedades y restricciones
  4. Activar razonador (Pellet/HermiT) para inferencias

2. Consultas SPARQL

```sparql PREFIX ontomed: http://datos.bvs.sld.cu/ontologia/ PREFIX rdfs: http://www.w3.org/2000/01/rdf-schema#

Listar todas las obras con sus autores

SELECT ?work ?title ?author WHERE { ?work a ontomed:Work ; ontomed:title ?title ; ontomed:hasAuthor ?author . } ```

Ver más ejemplos en examples/consultas.sparql

3. Validación con SHACL

```bash

Validar instancias con pySHACL

pyshacl -s validation/shacl-shapes.ttl
-m ontology/ontomed-bvs.ttl
-df turtle
examples/instancias.ttl ```


📊 Estadísticas

Componente Cantidad
Clases Principales 14
Subclases Especializadas 13
Propiedades de Objeto 10
Propiedades de Datos 7
Restricciones OWL 6
Anotaciones Bilingües ✓ Todas
Total Entidades Base 50
Framework Extensible 342

🌐 Vocabularios Reutilizados

Vocabulario Prefijo Uso
Dublin Core Terms dct: Metadatos descriptivos
FOAF foaf: Personas y organizaciones
BIBO bibo: Recursos bibliográficos
VIVO Core vivo: Investigación académica
SKOS skos: Clasificaciones
Schema.org schema: Esquemas web generales

📚 Ejemplos

Ejemplo 1: Crear una Obra con Autor

```turtle @prefix ontomed: http://datos.bvs.sld.cu/ontologia/ . @prefix xsd: http://www.w3.org/2001/XMLSchema# .

:DrRojas a ontomed:Person ; rdfs:label "Dr. Francisco Rojas Ochoa"@es ; ontomed:email "[email protected]" ; ontomed:affiliatedWith :EscuelaSaludPublica .

:AnalgesiAcupuntural a ontomed:Work ; ontomed:title "Analgesia acupuntural quirúrgica"@es ; ontomed:abstract "Estudio sobre efectividad de acupuntura..."@es ; ontomed:hasAuthor :DrRojas ; ontomed:publicationDate "2005-03-15"^^xsd:date ; ontomed:language "es" ; ontomed:doi "10.1234/example.2005" . ```

Ejemplo 2: Organización con Ubicación

```turtle :HospitalIPK a ontomed:Hospital ; rdfs:label "Instituto de Medicina Tropical Pedro Kourí"@es ; ontomed:locatedIn :LaHabana ; foaf:homepage https://instituciones.sld.cu/ipk/ .

:LaHabana a ontomed:Place ; rdfs:label "La Habana"@es ; rdfs:label "Havana"@en . ```

Ver más ejemplos en examples/instancias.ttl


✅ Validación

Validación Sintáctica

```bash

Apache Jena

riot --validate ontology/ontomed-bvs.owl

Rapper (Redland)

rapper -i rdfxml -o turtle ontology/ontomed-bvs.owl > /dev/null ```

Razonamiento

```bash

Pellet (desde línea de comandos)

pellet consistency ontology/ontomed-bvs.owl

HermiT

hermit -c ontology/ontomed-bvs.owl ```

Tests Automatizados

```bash

Ejecutar suite de tests

python validation/run_tests.py ```


🤝 Contribución

Las contribuciones son bienvenidas. Por favor:

  1. Fork el repositorio
  2. Crea una rama para tu feature (git checkout -b feature/NuevaClase)
  3. Commit tus cambios (git commit -am 'Añadir nueva clase Hospital')
  4. Push a la rama (git push origin feature/NuevaClase)
  5. Abre un Pull Request

Guías de Contribución

  • Mantener anotaciones bilingües (español/inglés)
  • Documentar nuevas clases con rdfs:comment y ejemplos
  • Validar cambios con Protégé + razonador
  • Actualizar CHANGELOG.md

📝 Citación

Si utilizas Ontomed-BVS en tu investigación, por favor cita:

BibTeX

```bibtex @phdthesis{rodriguez2025ontomed, author = {Rodríguez Perojo, Keilyn}, title = {Marco de Trabajo para el diseño de un Modelo Conceptual de Datos Abiertos y Enlazados en el contexto de la Biblioteca Virtual en Salud de Cuba}, school = {Universidad Nacional Autónoma de México}, year = {2025}, type = {Tesis Doctoral}, address = {Ciudad de México, México}, note = {Ontología Ontomed-BVS disponible en: https://github.com/keilynrp/ontomed-bvs} } ```

APA 7

``` Rodríguez Perojo, K. (2025). Marco de Trabajo para el diseño de un Modelo Conceptual de Datos Abiertos y Enlazados en el contexto de la Biblioteca Virtual en Salud de Cuba [Tesis doctoral]. Universidad Nacional Autónoma de México. https://github.com/keilynrp/ontomed-bvs ```

Ver CITATION.cff para más formatos.


📄 Licencia

Este trabajo está licenciado bajo Creative Commons Attribution 4.0 International (CC BY 4.0).

Eres libre de:

  • ✅ Compartir — copiar y redistribuir el material
  • ✅ Adaptar — remezclar, transformar y construir sobre el material

Bajo los siguientes términos:

  • 📝 Atribución — Debes dar crédito apropiado

👥 Contacto

Autor: Lic. Keilyn Rodríguez Perojo
Email: [email protected]
Institución: UNAM - Instituto de Investigaciones Bibliotecológicas
GitHub: @keilynrp
ORCID: 0000-0000-0000-0000

Directora de Tesis: Dra. Isabel Galina Russell
Institución: UNAM - Instituto de Investigaciones Bibliotecológicas


🙏 Agradecimientos

  • UNAM - Instituto de Investigaciones Bibliotecológicas y de la Información
  • Infomed - Centro Nacional de Información de Ciencias Médicas (Cuba)
  • BIREME/OPS - Biblioteca Regional de Medicina (Red BVS)
  • CONACyT - Consejo Nacional de Ciencia y Tecnología (México)

📈 Roadmap

  • v1.0.0 - Ontología base (50 entidades)
  • v1.1.0 - Integración con DeCS completo
  • v1.2.0 - Subclases médicas especializadas (342 entidades)
  • v2.0.0 - Alineamiento con ontologías internacionales (SNOMED CT, ICD-11)

🔗 Enlaces Útiles


⭐ Si este proyecto te resulta útil, considera darle una estrella ⭐

GitHub stars

About

Ontología de la Biblioteca Virtual en Salud de Cuba (OWL 2 DL)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages