Visión General
RadiXML es una plataforma web especializada en la visualización, mapeo y conversión de documentos XML. El sistema cuenta con soporte técnico avanzado para estándares de detección de radiación, específicamente el formato ANSI N42.42.
Arquitectura del Sistema
La aplicación emplea una arquitectura cliente-servidor estructurada de la siguiente manera:
Capa de Presentación (Frontend)
- Tecnología base: Vite con JavaScript estándar (Vanilla JS).
- Editor integrado: Implementación de Monaco Editor para la gestión y edición de scripts de transformación.
- Interfaz de usuario: Sistema basado en nodos para la definición visual de mapeos entre estructuras XML.
- Gestión de archivos: Integración de JSZip para el procesamiento y exportación de paquetes de datos.
Capa de Servicio (Backend)
- Lenguaje de programación: Go (Golang), seleccionado por su eficiencia en la gestión de procesos concurrentes.
- Persistencia de datos: MongoDB, utilizado para el almacenamiento de modelos, funciones personalizadas y gestión de usuarios.
- Seguridad: Sistema de autenticación y autorización basado en el estándar JSON Web Tokens (JWT).
Entornos para Nodos Personalizados
RadiXML permite la ejecución de lógica de transformación definida por el usuario en el lado del servidor, garantizando seguridad y rendimiento:
- Entorno JavaScript: Ejecución mediante el motor Goja (ECMAScript 5.1), integrado directamente en el binario del backend.
- Entorno Python: Procesamiento mediante subprocesos de Python 3, permitiendo el uso extensivo de las bibliotecas estándar para el tratamiento de datos.
Funcionalidades Técnicas
- Mapeo de Estructuras: Herramienta visual para establecer correspondencias entre esquemas XML de origen y destino.
- Vista Previa Dinámica: Renderizado en tiempo real de la salida XML basada en las reglas de transformación activas.
- Repositorio de Funciones: Almacenamiento centralizado de nodos de código personalizados para su reutilización en diferentes modelos.