# data[].attributes.body
Concepto:

Arquitectura que habilita la implementación de interfaces para la interoperabilidad con sistemas dentro o fuera de una institución. Una infraestructura SOA no mejora en sí la gestión documental, sino que permite la conexión y comunicación entre interfaces o sistemas.

Como por ejemplo ARCA, que se conecta con sistemas de producción, digitalización y repositorio digital. Es importante mencionar que el diseño de ARCA con una arquitectura SOA se evidencia en que este es un sistema de gestión documental robusto, escalable y adaptable, que facilita la administración y conservación de documentos en un entorno eficiente y seguro

Como funciona:

El SOA funciona como un ambiente donde interoperan muchos sistemas de microservicios, en vez de estar aislados entre sí, para ello, los sistemas pueden obtener información entre sí por medio de un mismo canal para poder realizar distintos tipos de servicios para diferentes necesidades de usuarios.

Aplicación en la archivística:

El diseño de software que aplica el SOA, facilita la integración con otras herramientas y sistemas existentes, lo que mejora la eficiencia en el manejo de documentos en un sistema de gestión documental.

Componentes/ Características clave de la SOA

Servicios: Son los componentes básicos de la SOA. Cada servicio realiza una función específica y expone una interfaz bien definida para que otros servicios puedan interactuar con él.

Esquema: Define la estructura de los datos que se intercambian entre los servicios.

Contrato: Especifica cómo los servicios interactúan entre sí, incluyendo los mensajes que se intercambian y los formatos de datos.

Repositorio de servicios: Un directorio centralizado donde se registran y describen los servicios disponibles.

Bus de servicios: Un middleware que facilita la comunicación entre los servicios.

# data[].attributes.body
¿Qué es?

XML, que significa "Lenguaje de Marcado Extensible", es un lenguaje de programación usado para estructurar y presentar datos en formato de texto, similar a HTML. Diseñado para facilitar el intercambio de información entre diferentes sistemas operativos y lenguajes de programación, XML es legible tanto por humanos como por máquinas, permitiendo la creación, visualización y edición de archivos en editores de texto simples o especializados. Los archivos XML, que pueden guardarse en formatos como .txt, .doc o .docx, son versátiles y se utilizan para almacenar una variedad de datos, incluyendo configuraciones, contenido de bases de datos, páginas web y datos científicos.

¿Características?

Fue desarrollado por el World Wide Web Consortium.

El XML es independiente de cualquier código patentado y formato propietario.

XML es libre de usar, sin restricciones ni licencias.

Con XML se ofrece una gestión de la información totalmente abierta.

Favorece la interoperabilidad entre sistemas.

¿Cómo se aplica?

Según menciona Gómez Dueñas (2011) la motivación original que impulsó el XML fue la necesidad de la creciente globalización en los negocios electrónicos, los cuales necesitan del intercambio de datos.

Es la base de la interoperabilidad, es decir, desde la Archivística se podría ver como la estructura o forma de presentar el intercambio de información.

El XML está adherido a la creación de los documentos ayudando a definir una estructura que sea fácil de entender.

Referencia Bibliográfica:

Gómez Dueñas, L. F. (2011). XML, la base de la interoperabilidad en los sistemas de información documental. Códices, 3(2)

# data[].attributes.body
Formato ligero de intercambio de datos, fácil de leer y escribir tanto para humanos y máquinas

Estructura:

Objetos: Representados por llaves {}. Un objeto es una colección de pares clave-valor. Las claves son cadenas (strings) y los valores pueden ser cadenas, números, objetos, arrays, booleanos (true o false) o null.

Arrays: Representados por corchetes []. Un array es una lista ordenada de valores.

Tipos de Datos:

String: Una cadena de texto, como "nombre": "Juan".

Number: Un número (entero o decimal), como "edad": 30.

Object: Un conjunto de pares clave-valor, como "direccion": { "calle": "Calle Falsa", "numero": 123 }.

Array: Una lista de valores, como "telefonos": ["123-456-7890", "098-765-4321"].

Boolean: true o false.

Null: Representa la ausencia de valor, como "medioPreferido": null.

Beneficios:

capacidad para representar datos estructurados de manera concisa y organizada.

intercambio de datos entre aplicaciones web y servicios AP

Los datos se representan en un formato legible por humanos y son fáciles de interpretar

se puede utilizar en una amplia variedad de plataformas y tecnologías

eficiencia en cuanto al tamaño del archivo

# data[].attributes.body
Concepto:

Es un conjunto de reglas o protocolos que permite a las aplicaciones informáticas comunicarse entre sí para intercambiar datos, características y funcionalidades. (Michael Goodwin, 2024)

En otras palabras es Un código que permite que dos programas de software se comuniquen entre sí

# data[].attributes.body
1. Permite compartir solo la información necesaria, manteniendo ocultos otros detalles internos del sistema, lo que beneficia a la seguridad del sistema.

2. Proporciona una forma de conectar los sistemas y realizar tareas automatizadas.

3. Brinda un nivel de seguridad mediante el uso de autenticación para verificar la identidad de los usuarios antes de permitirles acceso a los recursos orma escalable de conectar sistemas y servicios.

4. Es altamente flexible y permite a los desarrolladores crear aplicaciones que se ajusten a los requerimientos específicos de sus usuarios.

5. Permite manejar un alto volumen de solicitudes de datos de manera eficiente (escalabilidad)

# data[].attributes.body
La aplicación que envía la solicitud es el cliente y el servidor proporciona la respuesta. La API es el puente que establece la conexión entre ellos.

1. Solicitud:  Un cliente, a través de un sistema, hace una solicitud, API. Esta solicitud incluye información sobre lo que necesita, lo que requiere el usuario. Por ejemplo, una persona cuando accede a una aplicación, como FACEBOOK.

2. Transmisión: La API cumple la función de puente entre un sistema y otro, o bien, podría ser una base de datos, otro programa, o un servicio en la nube.

3. Procesamiento: El sistema o servicio procesa la solicitud. Dependiendo del tipo de API, requiere información para autenticar al usuario o cliente. En el ejemplo de FACEBOOK, el sistema de la aplicación receptora, pide un usuario y contraseña para poder acceder al sistema , o bien, cumplir la necesidad del cliente.

4. Respuesta: El sistema o servicio envía la información de vuelta al cliente inicial. La API toma esta información y la envía de vuelta al programa cliente.

5. Resultado: El cliente recibe la respuesta y la usa para mostrar la información al usuario. Por ejemplo, el cliente puede ingresar a la interfaz de FACEBOOK, puede ver historias y reels.

# data[].attributes.body
1) Automatización de tareas: Las APIs pueden automatizar tareas repetitivas, ahorrando tiempo y esfuerzo. Por ejemplo, un archivo puede utilizar una API para actualizar automáticamente su inventario cuando se añade un documento nuevo.

2) Mejora de la búsqueda: Las API permiten extraer directamente información desde un SGD, utilizando palabras claves o los códigos de los documentos.

3) Envío de alertas por parte del sistema de gestión documental al correo institucional del usuario.

# data[].attributes.body
Definición
Es una forma de interoperabilidad que permite a diferentes sistemas y plataformas intercambiar datos y funcionalidades de manera estandarizada (Webcorporativa, 2023).

Es un medio estandarizado para propagar la comunicación entre las aplicaciones cliente y servidor en Internet (Hall, 2024).

Características

Tiene una interfaz descrita en un formato procesable por la máquina (WSDL: lenguaje para describir la interfaz. Frontend)

Cumplen una tarea específica o un conjunto de tareas, por ejemplo: Admite el intercambio de documentos

Utiliza XML o JSON para la comunicación entre máquinas.

Ventajas

Interoperabilidad entre aplicaciones

Un protocolo estandarizado que todos entienden

Reducción del coste de la comunicación

Desventajas

Pueden presentar vulnerabilidades de seguridad si no se protegen adecuadamente con medidas de ciberseguridad.

La configuración y el mantenimiento de los servicios web pueden ser complejos.

Tipos de servicios web

SOAP: protocolo que define cómo deben de realizarse las comunicaciones entre máquinas, Utiliza XML, Es muy seguro,

RESTful- usa el propio protocolo HTTP para la comunicación entre máquinas. Soporta la transferencia de datos en la web. Utiliza lenguaje JSON

GraphQL- permite a los clientes solicitar solo los datos que necesitan.

Ejemplos de uso común:

Uber

Netflix

DiDi Food

Airbnb

Ejemplos de Archivística:

Servicios web de consulta (con paquetes DIP)

Sistema web integrado a páginas web, por ejemplo los trámites que están en páginas gubernamentales (SICOP, Registro, CNFL, servicios de telecomunicaciones, entre otros)

Interoperabilidad entre sistemas a la hora de brindar un servicio

# data[].attributes.body
Fronted: Se trata de la interfaz gráfica con la  que los usuarios interactúan de forma directa para realizar las peticiones (solicitudes de información al Backend, por medio de una API). Su diseño ayuda a mejorar la accesibilidad y la capacidad de respuesta. Otros aspectos son:

La utilización de tecnologías el fronted  requiere de lenguajes informáticos como JavaScript, CSS y HTML

No genera problemas asociados  a la simultaneidad, debido a que cada usuario tiene su propia copia de una aplicación en el navegador o aplicación móvil.

Sobre la seguridad, aquí es  donde se realiza la validación de las entradas y la autentificación de los usuarios. La protección  de la contraseña y del dispositivo es responsabilidad de usuario.

BACK end

Capa lógica de la aplicación que gestiona el acceso de datos de un software como una base de datos.

¿Qué utiliza?

Lenguajes de programación como Python o Java.

Arquitectura fiable que respalda el Front end

Desarrolladores que saben codificación / base de datos

Seguridad.

El usuario aporta con la protección de contraseña.

Se logra mediante el cifrado, los sistemas de autenticación seguros y las prácticas de codificación seguras.

¿Cómo se puede utilizar en la archivística?

Para el desarrollo de sedes electrónicas y ventanillas : Puede mejora la experiencia del usuario con interfaces intuitivas donde se desplieguen los servicios del archivo y aportando contenido web que promueva la difusión del fondo.

Con el backend se optimizar las respuestas a las solicitudes de información,

hace manejable una alta concurrencia, por lo que se puede atender varios trámites de manera simultanea.

Se puede estructurar la información con base a los cuadros de clasificación y los instrumentos descriptivos.

Se puede validar la identidad de los usuario y restringe el acceso conforme a los permisos.

# data[].attributes.body
API local es una interfaz que permite que diferentes aplicaciones o componentes de software se comuniquen y compartan datos entre sí dentro de un entorno local o cerrado.

se utilizan para definir cómo interactúan las aplicaciones en diferentes dispositivos.

API remota son utilizadas para acceder a servicios o recursos que se encuentran en servidores externos. A través de ellas, un programa puede enviar solicitudes, recibir respuestas y utilizar funciones de otro sistema sin necesidad de estar físicamente conectado o instalado en el mismo lugar.

# data[].attributes.body
Características

La mayoría de las APIs remotas siguen estándares web, como HTTP/HTTPS

Los mensajes de solicitud y respuesta suelen estructurarse en formatos como JSON o XML

Permiten que diferentes sistemas y aplicaciones se comuniquen a través de una red, facilitando el intercambio de datos entre ubicaciones remotas.

A través de tecnologías como RPC o gRPC, las APIs remotas permiten ejecutar procedimientos en servidores remotos como si fueran locales.

Facilitan la integración entre sistemas desarrollados en diferentes lenguajes de programación y que operan en distintos sistemas operativos.

Requieren mecanismos de autenticación, como claves API o tokens para proteger los datos transmitidos.

Devuelven respuestas claras con códigos de estado y mensajes estructurados que permiten conocer el resultado de cada solicitud.

Pueden ser utilizadas desde cualquier ubicación geográfica

Ejemplo aplicado en la Archivística

Puede verse aplicado en un sistema de gestión de documentos electrónicos, cuando se conecta con otras instituciones y se puede buscar, acceder y recuperar información específica sobre documentos sin necesidad de acceder a  la base de datos  interna de cada institución.

# data[].attributes.body
Se ejecutan en un mismo entorno

Está pensada para que una aplicación exponga funcionalidad hacia otras aplicaciones que están instaladas en la misma máquina

Son menos vulnerables a ataques externos porque no están accesibles desde internet.

Los datos permanecen dentro de la organización

Está diseñada para ser utilizada dentro de una red local o en la misma máquina, lo que significa que no está expuesta a Internet y no requiere conexiones externas para funcionar.

Al estar limitada a un entorno local, la API local puede tener una superficie de ataque más reducida y menos vulnerabilidades relacionadas con la exposición a la red pública.

Los datos no tienen que viajar a través de Internet, lo que puede reducir el tiempo de respuesta.

Suelen depender de una configuración específica del entorno en el que se encuentran. Esto puede incluir configuraciones de red, permisos de acceso o dependencias de software que no están presentes en un entorno externo.

Acceso y Autenticación más faciles al basarse en credenciales locales o en la configuración del sistema operativo.

Ejemplo aplicado en la Archivística

El uso de API local, facilita la comunicación e intercambio de información entre sistemas en una red o servidor local. Para ello, en el caso aplicado a la archivística se utiliza para la gestión de documentos en los sistemas, estableciendo puntos de acceso, obtener información de un documento