SECRETARÍA DE LA FUNCIÓN PÚBLICA DOCUMENTO TECNICO PARA LA INTEROPERABILIDAD DE LOS SISTEMAS AUTOMATIZADOS DE CONTROL DE GESTIÓN Documento Técnico para la Interoperabilidad de los SACG 1 DOCUMENTO TECNICO PARA LA INTEROPERABILIDAD DE LOS SISTEMAS AUTOMATIZADOS DE CONTROL DE GESTIÓN CONTROL DE CAMBIOS Número de versión: 1.0 Fecha: 28 de mayo de 2012 Número de versión: 1.1 Fecha: 23 de julio de 2012 Número de versión: 1.2 Fecha: 21 de noviembre de 2012 Apartado Numeral/Párrafo/Inciso Descripción de los cambios 2 2.14 Precisión sobre el uso y generación de certificados digitales de Firma Electrónica para la OPE y la Instancia. 3 Segundo Mención al Oficio UGD/409/442/2012 por el cual se dio a conocer el DTI de los SACG. 5 5.1 /2 /a / iii Modificación sobre el tipo de Mensaje-2 que se genera, el tipo de dato ‘RespuestaSolicitudRegistro’ no es correcto, debe ser ‘RechazoSolicitudRegistro’. 10 Anexo 2 Esquemas de Mensajes XSD Modificaciones: Mensaje: “RespuestaSolicitudRegistro” el tipo de dato ‘MiembroComunidad’ no es correcto, debe ser ‘InformacionMiembroComunidad’. Elemento: simpleType “TipoConfencialidad" cambia el valor ‘Privada’ por ‘Confidencial’ y se agregan los valores: ‘ParcialmenteReservada’ y ‘ParcialmenteConfidencial’. Elemento: complexType “DirectorioComunidad” se agrega el indicador minOccurs="0". Elemento: “OficioElectronico” se agrega el elemento ‘FirmasElectronicas’, anteriormente solo se especificaba un elemento Signature, que hacia la referencia a la firma electrónica del Autor. Ahora el “OficioElectronico” incluye además de la firma del Autor, de ‘OtrasPersonas’ (en caso necesario) y ‘Organizacionales’ (Institución), así como la adición de los elementos ‘InformacionCertificado’ y ‘Proposito’. Elemento: “MensajeInteroperabilidad” se reubicaron las Firmas del mensaje y se unificaron a la estructura de Firmas de ‘OficioElectronico’: La firma del Miembro de la Comunidad (Instancia u OPE), que emite el mensaje se encuentra dentro del elemento ‘Origen’ del “MensajeInteroperabilidad”. La firma que agrega la OPE al retransmitir un mensaje, se reubicaron al elemento ‘PuntoRuta’. Precisiones: En general se efectuaron diversas mejoras de tipo ortográfico y definiciones sobre la <xs:documentation> del esquema del “TiposDeDatosInteroperabilidad.xsd”, que agregan mayor claridad y entendimiento del mismo. Documento Técnico para la Interoperabilidad de los SACG 1 1. OBJETO El presente documento tiene por objeto definir, conforme a lo establecido en el artículo décimo tercero del Acuerdo por el que se establece el Esquema de Interoperabilidad y de Datos Abiertos de la Administración Pública Federal, publicado en el Diario Oficial de la Federación el 6 de septiembre de 2011, las especificaciones técnicas básicas que las dependencias y entidades de la Administración Pública Federal, así como la Procuraduría General de la República, deberán observar para garantizar la interoperabilidad entre sus Sistemas Automatizados de Control de Gestión. 2. DEFINICIONES Además de las definiciones contenidas en el artículo segundo del Acuerdo por el que se establece el Esquema de Interoperabilidad y de Datos Abiertos de la Administración Pública Federal, para los efectos del presente Documento Técnico se entenderá por: 2.1. Acuse de Recibo Electrónico: el Mensaje de Interoperabilidad de control de gestión que se emite o genera para acreditar de manera fehaciente la fecha y hora de recepción de Oficios Electrónicos; 2.2. Certificado Digital: el Mensaje de Datos o registro que confirma el vínculo entre un Firmante y la Clave Privada; 2.3. Clave Privada: los datos que el Firmante genera de manera secreta y utiliza para crear su Firma Electrónica Avanzada, a fin de lograr el vínculo entre dicha Firma Electrónica Avanzada y el Firmante; 2.4. Clave Pública: los datos contenidos en un Certificado Digital que permiten la verificación de la autenticidad de la Firma Electrónica Avanzada del Firmante; 2.5. Comunidad: la Oficina Postal Electrónica y las Instancias que intercambian Mensajes de Interoperabilidad de control de gestión, en los términos descritos en este documento; 2.6. Directorio Consolidado de Interoperabilidad: el listado consolidado de las Instituciones que cuentan con Instancias que conforman la Comunidad, que incluye a las áreas y unidades administrativas que habrán de interoperar y los datos de los servidores públicos a cargo de cada una de ellas; 2.7. Documento Electrónico: aquél que es generado, consultado, modificado o procesado por medios electrónicos; 2.8. Documento Técnico: el presente documento técnico para la interoperabilidad de los SACG, incluidos sus anexos, los cuales se relacionan en el numeral 10 del propio documento. Documento Técnico para la Interoperabilidad de los SACG 2 2.9. Escenario de Interoperabilidad: la secuencia de intercambio de Mensajes de Interoperabilidad de control de gestión entre Instancias de la Comunidad que cumple un propósito específico que considera el tipo y contenido de dichos mensajes, así como los Protocolos de interoperabilidad utilizados y las responsabilidades de los participantes; 2.10. Estampado de Tiempo: el servicio que permite a la Oficina Postal Electrónica generar un registro electrónico de la fecha y hora en la cual ocurrió una operación de interoperabilidad, el cual deberá estar sincronizado a la hora oficial que proporciona el Centro Nacional de Metrología; 2.11. Estructura de la Institución: el listado de las áreas y unidades administrativas de la Institución habilitadas para recibir Oficios Electrónicos, a través de la Plataforma, que incluye los datos de los servidores públicos a cargo de cada una de ellas; 2.12. Firma Electrónica Avanzada: el conjunto de datos y caracteres que permite la identificación del firmante, que ha sido creada por medios electrónicos bajo su exclusivo control, de manera que está vinculada únicamente al mismo y a los datos a los que se refiere, lo que permite que sea detectable cualquier modificación ulterior de éstos, la cual produce los mismos efectos jurídicos que la firma autógrafa, de conformidad con la Ley de Firma Electrónica Avanzada; 2.13. Firmado Electrónico o Firmado Electrónicamente: proceso en el que, mediante la Firma Electrónica Avanzada, se adjuntan o asocian lógicamente datos al Mensaje de Interoperabilidad de control de gestión; 2.14. Firmante: Toda persona que utiliza su Firma Electrónica Avanzada para suscribir documentos electrónicos y, en su caso, Mensajes de Datos. En el caso de la utilización de la Firma Electrónica Avanzada de la OPE o de la Instancia, la institución deberá solicitar a la UGD la generación de los certificados digitales de la Instancia y SSL, necesarios para su integración a la plataforma de Interoperabilidad. 2.15. Instancia: la identificación única de cada uno de los SACG pertenecientes a una Institución; 2.16. Institución: la Dependencia o Entidad; 2.17. MAAGTICSI: el Manual Administrativo de Aplicación General en las materias de Tecnologías de la Información y Comunicaciones y de Seguridad de la Información; 2.18. Mensaje de Datos: la información generada, enviada, recibida, archivada o comunicada a través de medios de comunicación electrónica, que puede contener Documentos Electrónicos; 2.19. Mensaje de Interoperabilidad de control de gestión o Mensaje: el Mensaje de Datos transmitido entre miembros de la Comunidad; Documento Técnico para la Interoperabilidad de los SACG 3 2.20. Oficio Electrónico: el documento electrónico en XML, autocontenido y portable que viaja en la Plataforma, por medio de los Mensajes de Interoperabilidad de control de gestión; 2.21. Oficina Postal Electrónica (OPE): el componente de la Plataforma que funge como centro de distribución de Mensajes de Interoperabilidad de control de gestión y que provee las funcionalidades de coordinación y gobierno para habilitar la interoperabilidad entre las Instancias; 2.22. Plataforma: aquélla que se integra por el conjunto de directrices, operaciones y componentes que permiten a los SACG de las Instituciones interoperar entre sí; 2.23. Protocolo: las directrices para el intercambio de Mensajes de Interoperabilidad de control de gestión, que determinan las responsabilidades del emisor y de los receptores; 2.24. Relación de Interoperabilidad: el acuerdo entre dos Instancias para compartir sus respectivos directorios de interoperabilidad y para intercambiar Mensajes; 2.25. SACG: los Sistemas Automatizados de Control de Gestión pertenecientes a las Instituciones que permiten realizar, identificar, proteger y controlar las comunicaciones para la gestión de documentos al interior de las propias Instituciones; 2.26. TIC: las tecnologías de información y comunicaciones, y 2.27. UGD: la Unidad de Gobierno Digital de la Secretaría de la Función Pública. 3. PLATAFORMA Para lograr la interoperabilidad entre los SACG, las Instituciones deberán adecuar sus respectivos sistemas, con base en las directrices, operaciones y componentes contemplados en el presente Documento Técnico, y conforme a los procesos del MAAGTISI que resulten aplicables. Las Instituciones informarán a la UGD, dentro de los 15 días hábiles siguientes a la recepción del presente documento enviado mediante el oficio UGD/409/442/2012, de fecha 28 de mayo de 2012, la fecha prevista para la conclusión de las adecuaciones que habrán de efectuar a sus respectivos SACG, tomando en cuenta para ello que la Ley de Firma Electrónica Avanzada (publicada en el Diario Oficial de la Federación el 11 de enero de 2011), entró en vigor el 4 de julio de 2012, y que la misma contempla en su artículo 10, que las dependencias y entidades en las comunicaciones y, en su caso, actos jurídicos que realicen entre las mismas, harán uso de Mensajes de Datos y aceptarán la presentación de Documentos Electrónicos, así como que la expedición del Reglamento de dicha Ley deberá efectuarse en un plazo no mayor de 180 días hábiles a partir de su entrada en vigor. En el siguiente diagrama se muestran los componentes que integran la Plataforma, así como la interrelación de los mismos. Documento Técnico para la Interoperabilidad de los SACG 4 OCSP/HTTP Firma Electrónica Firma Electrónica SACG - Instancia A SACG - Instancia B HTTPS HTTPS OCSP/HTTP HTTPS Web Services A B C SFP - SAT OCSP/HTTP Log de trazabilidad Firma Electrónica Oficina Postal Electrónica /Ruteador Figura 1. Diagrama general de la Plataforma 4. DIRECTRICES DE INTEROPERABILIDAD DE LA PLATAFORMA 4.1. Las Instituciones deberán observar lo siguiente: 4.1.1. Solicitar a la UGD, el registro e integración de sus SACG a la OPE. 4.1.2. Mantener actualizada la Estructura de la Institución y administrar los privilegios de acceso, considerando los roles, cargos y funciones de los servidores públicos habilitados como usuarios. 4.1.3. Permitir el acceso a los SACG por parte de los usuarios, por medio de clave de usuario y contraseña que sean únicas para cada usuario o, en su caso, mediante el uso de la Firma Electrónica Avanzada. 4.1.4. Solicitar el uso de la Firma Electrónica Avanzada en los Oficios Electrónicos. 4.1.5. Permitir el cifrado de los elementos de los Oficios Electrónicos mediante el uso del Certificados Digitales. 4.1.6. Integrar mecanismos de disponibilidad en sus infraestructuras de TIC de manera que garanticen el envío y recepción de los Oficios Electrónicos, apegándose a lo que se establece en los procesos del MAAGTICSI. Documento Técnico para la Interoperabilidad de los SACG 5 4.2. 5. La UGD deberá observar lo siguiente: 4.2.1. Implementar la OPE, dentro de los 30 días naturales a la emisión del presente Documento Técnico, y mantenerla en operación, de acuerdo con lo previsto en el propio Documento Técnico. 4.2.2. Difundir con oportunidad a las Instituciones las modificaciones que se realicen al Documento Técnico. 4.2.3. Interpretar, con apoyo de la Subcomisión de Interoperabilidad y/o de la Subcomisión de los Sistemas Automatizados de Control de Gestión, de la Comisión Intersecretarial para el Desarrollo del Gobierno Electrónico, el Documento Técnico, así como resolver los casos no previstos en el mismo. OPERACIONES DE INTEROPERABILIDAD En este apartado se describen, mediante escenarios, las operaciones con las que se construye el flujo de Mensajes y se conforma el esquema de operación de la Plataforma, así como el detalle de la construcción de dichos Mensajes. La descripción detallada de los tipos de Mensajes utilizados en las operaciones a las que hace referencia este Documento Técnico, se encuentra en el archivo TiposDeDatosInteroperabilidad.xsd, publicado en el sitio www.normateca.gob.mx, como parte del Anexo 2. 5.1. REGISTRO DE INSTANCIA EN LA PLATAFORMA Descripción: Escenario que permite el registro de una Instancia en una Comunidad. Precondiciones: Contar con un certificado digital de Firma Electrónica Avanzada vigente para la Instancia. Protocolo de Comunicación: En el intercambio de Mensajes de este escenario se aplica el Protocolo Instancia-OPE. Las operaciones especificadas en el Protocolo se describen en el apartado 8 “Convenciones de Comunicaciones” de este Documento Técnico. Tipos de Datos: En este escenario se envía un Mensaje de tipo SolicitudRegistro con un elemento tipo SolicitudRegistro que representa la solicitud de registro de una Instancia en la OPE, para efectuar operaciones de interoperabilidad. Especificación del Escenario: Flujo normal de eventos En el flujo normal de eventos se consideran los siguientes pasos: Documento Técnico para la Interoperabilidad de los SACG 6 1. La Instancia A envía un Mensaje-1 (tipo SolicitudRegistro) a la OPE solicitándole su registro en la Comunidad. El Mensaje-1 contiene los datos de la Instancia, su Certificado Digital y el “Reto” enviado a la OPE. El elemento Reto contiene una cadena generada por la Instancia y cifrada con su Clave Privada. 2. La OPE realiza las validaciones siguientes: a. La existencia de la Instancia A en la Comunidad, a cuyo efecto: i. Verifica que el Identificador de la Institución no esté registrado en el Directorio Consolidado de Interoperabilidad en la OPE. ii. Si no existe el registro, procede a hacer la validación b (Validación del Certificado Digital). iii. Si ya existe un registro, genera el Mensaje-2 (tipo RechazoSolicitudRegistro) con el rechazo de la solicitud de registro por Identificador duplicado en el Directorio Consolidado de Interoperabilidad. b. La vigencia y legitimidad del Certificado Digital de la Instancia A, para lo cual: i. Si es válido y está vigente, procede a generar: 1) Una cadena aleatoria de la OPE que será encriptada asimétricamente utilizando el algoritmo RSA con Clave Pública del Certificado Digital, y cifra la cadena aleatoria enviada por la Instancia A con la Clave Privada de la OPE, y 2) El Mensaje-2 (tipo RetoSolicitudRegistro) con la cadena aleatoria de la OPE encriptada, el Certificado Digital de la OPE y la cadena aleatoria recibida en el Mensaje-1 deberá estar cifrada con la Clave Privada de la OPE. ii. Si no es válido: Genera el Mensaje-2 (tipo RechazoSolicitudRegistro) con el rechazo de la solicitud de registro por Certificado Digital inválido. 3. La OPE responde a la Instancia A, para lo cual: a. Descifra la cadena aleatoria especificada en el elemento “Reto” del Mensaje-1, utilizando la Clave Pública del Certificado Digital de la Instancia y la cifra con la Clave Privada de su Certificado Digital e introduce la cadena cifrada en el elemento RespuestaReto. b. Genera una cadena aleatoria y la cifra con su Clave Privada, que es introducida en el elemento “Reto”. c. Responde al Mensaje-1 de la Instancia A, con el Mensaje-2. Documento Técnico para la Interoperabilidad de los SACG 7 4. Si el Mensaje-2 es de tipo RechazoSolicitudRegistro, la Instancia A registra el rechazo y se culmina la operación; de lo contrario si el Mensaje-2 es de tipo RetoSolicitudRegistro se continua con el paso 5 de este escenario. 5. La Instancia A valida el Certificado Digital de la OPE y su vigencia. a. Si es válido y está vigente, descifra la cadena especificada en el elemento RespuestaReto, utilizando la Clave Pública del Certificado Digital de la OPE. i. Si hay coincidencia entre las cadenas descifradas de RespuestaReto del Mensaje-2 y la que la Instancia generó e insertó en el elemento Reto del Mensaje-1: la Instancia reconoce a la OPE como válida para el registro en la Comunidad. ii. Si no hay coincidencia entre las cadenas la Instancia rechaza a la OPE y detiene su registro en la Comunidad. b. Si no es válido, detiene su registro en la Comunidad. 6. La Instancia A envía un Mensaje-3 a la OPE, para lo cual previamente descifra la cadena aleatoria especificada en el elemento “Reto” del Mensaje-2, utilizando la Clave Pública del Certificado Digital de la OPE y la cifra con la Clave Privada de su Certificado Digital, e introduce la cadena cifrada en el elemento RespuestaReto del Mensaje-3. 7. La OPE valida el Mensaje-3, para lo cual. a. Descifra la cadena especificada en el elemento RespuestaReto, utilizando la Clave Pública del Certificado Digital de la Instancia. i. Si hay coincidencia entre las cadenas descifradas de RespuestaReto del Mensaje-3 y la que la OPE generó e insertó en el elemento Reto del Mensaje-2, la OPE registra a la Instancia A en la Comunidad y genera el Mensaje-4 (tipo RespuestaSolicitudRegistro) de registro satisfactorio en la Comunidad. ii. Si no hay coincidencia entre las cadenas, la OPE rechaza a la Instancia A y genera el Mensaje-4 de registro erróneo en la Comunidad, cifrado con la Clave Privada de la OPE. 8. La OPE responde al Mensaje-3 de la Instancia A, con el Mensaje-4. 9. La Instancia A obtiene y procesa el resultado de su registro en la Comunidad. Flujo de Excepción En este flujo se consideran los supuestos de excepción siguientes: 1. Certificado Digital no válido y/o cadenas aleatorias cifradas por el receptor no válidas. Documento Técnico para la Interoperabilidad de los SACG 8 Este flujo ocurre cuando la OPE o la Instancia A, al validar el Certificado Digital o la cadena cifrada entregan un resultado no válido. 2. La Instancia A ya se encuentra registrada en la OPE. Este flujo ocurre cuando la Instancia A ya se encuentra registrada en la OPE. Resultado: La Instancia A se encuentra registrada y puede enviar solicitudes de suscripción entre Instancias a otros miembros de la Comunidad, con el propósito de establecer una Relación de Interoperabilidad. 5.2. SOLICITUD DE SUSCRIPCIÓN ENTRE INSTANCIAS Descripción: Establece la creación de una Relación de Interoperabilidad que permite a dos Instancias iniciar los escenarios de interoperabilidad de Envío de Solicitud y Envío de Respuesta. Precondiciones: La Instancia que envía la solicitud y la Instancia con la que se desea establecer la Relación de Interoperabilidad están registradas en la Comunidad. Protocolo de Comunicación: En el intercambio de Mensajes de este escenario se aplica el Protocolo Instancia-Instancia. Las operaciones especificadas en el Protocolo se encuentran definidas en el apartado 8 “Convenciones de Comunicaciones” de este Documento Técnico. Tipos de Datos: En este escenario, se envía un Mensaje con un elemento de tipo SolicitudSuscripcionInstancia que representa la solicitud de suscripción de una Instancia para efectuar operaciones de interoperabilidad. Especificación del Escenario: Flujo normal de eventos En el flujo normal de eventos se consideran los siguientes pasos: 1. La Instancia A envía una solicitud, para lo cual: a. Genera un Mensaje de tipo SuscripcionInstancia con un elemento de tipo SolicitudSuscripcionInstancia, y b. Solicita la creación de la Relación de Interoperabilidad y envía dicha solicitud a la Instancia destino (Instancia B) a través de la OPE. 2. La OPE transmite la solicitud, según lo especificado en el Protocolo Instancia-Instancia. 3. La Instancia destino (Instancia B) registra la solicitud, para lo cual: a. El SACG de la Instancia B validará que no se encuentre registrada previamente la Instancia A. Documento Técnico para la Interoperabilidad de los SACG 9 b. Acepta la solicitud de suscripción y envía un Acuse de Recibo Electrónico. 4. La OPE retransmite el Acuse de Recibo Electrónico, según lo especificado en el Protocolo Instancia-Instancia. 5. La Instancia B para dar respuesta a la solicitud, realiza lo siguiente: a. Genera un Mensaje de tipo RespuestaSuscripcionInstancia, con un elemento de tipo RespuestaSuscripcionInstancia, y b. Envía la respuesta a la Instancia A, a través de la OPE, según lo especificado en el Protocolo Instancia-Instancia. 6. La OPE analiza la respuesta y de ser aprobatoria, registra la Relación de Interoperabilidad, esta relación permitirá que la OPE envié mensajes de una Instancia a otra. La OPE retransmite el Mensaje RespuestaSuscripcionInstancia hacia la Instancia A. 7. La Instancia A recibe y procesa el Mensaje de RespuestaSuscripcionInstancia. Flujos Alternos La Instancia B rechaza la Solicitud de Suscripción. Este flujo de eventos ocurre cuando en el paso 5 del flujo normal de eventos se rechaza la Solicitud de Suscripción recibida. 1. La Instancia destino (Instancia B) devuelve un Mensaje de tipo RespuestaSuscripcionInstancia con un elemento de tipo RespuestaSuscripcionInstancia, a la Instancia que solicitó la Relación de Interoperabilidad, a través de la OPE, especificando el rechazo de la solicitud. 2. La OPE analiza la respuesta, descarta la creación de la Relación de Interoperabilidad y retransmite el Mensaje RespuestaSuscripcionInstancia hacia la Instancia A. 3. La Instancia A recibe y procesa el Mensaje de RespuestaSuscripcionInstancia. Flujo de Excepción En este flujo se consideran los supuestos de excepción siguientes: 1. La Instancia A ya está registrada para interoperar con la Instancia B. Este flujo ocurre cuando la Instancia A, previamente se había suscrito para establecer una Relación de Interoperabilidad con la Instancia B. 2. La Instancia de recepción no está disponible. Este flujo de evento ocurre si al momento de enviar el Mensaje, la OPE no puede contactar a la Instancia destino del mensaje. Documento Técnico para la Interoperabilidad de los SACG 10 La OPE intentará realizar la conexión no más de 6 veces en lapsos de 1 hora entre cada intento. Luego de cada solicitud fallida, la OPE genera un mensaje de error que envía al administrador del SACG de destino, vía correo electrónico. Resultado: Se ha creado una Relación de Interoperabilidad entre las Instancias, y éstas podrán iniciar el envío de Mensajes de solicitud y respuesta, en cuanto se efectúe la sincronización de sus directorios. 5.3. SINCRONIZACIÓN COMPLETA, INSTANCIA A OPE Descripción: Permite la actualización completa del directorio de la OPE, mediante el envío completo de la última versión del directorio de una Instancia. Este escenario es iniciado cuando la Instancia A envía a la OPE su directorio completo y la OPE sincroniza el Directorio Consolidado de Interoperabilidad. Precondiciones: 1. La Instancia que envía la sincronización está registrada en la Comunidad. 2. La versión del directorio a publicar por parte de la Instancia en el Mensaje debe ser la primera o una superior a la versión registrada de esta Instancia en el Directorio Consolidado de Interoperabilidad. Protocolo de Comunicación: En el intercambio de Mensajes de este escenario se aplica el Protocolo Instancia-OPE. Las operaciones especificadas en el Protocolo se encuentran definidas en el apartado 8 “Convenciones de Comunicaciones” de este Documento Técnico. Tipos de Datos: En este escenario se envía un Mensaje de tipo DirectorioMiembroComunidad con un elemento tipo DirectorioMiembroComunidad. El elemento DirectorioMiembroComunidad contiene la Estructura de la Institución. Especificación del Escenario: Flujo normal de eventos En el flujo normal de eventos se consideran los siguientes pasos: 1. La Instancia A prepara un Mensaje de sincronización de tipo DirectorioMiembroComunidad y en el cuerpo del Mensaje introduce un elemento de tipo DirectorioMiembroComunidad, con la Estructura de la Institución y la versión actual del directorio de la Instancia (este número de versión es particular de la Instancia). 2. Una vez preparado el Mensaje de sincronización, la Instancia A lo envía a la OPE. 3. La OPE recibe el Mensaje y valida que la versión del directorio de la Instancia de que se trata es superior a la última registrada. Documento Técnico para la Interoperabilidad de los SACG 11 Efectuada dicha validación la OPE procesa el Mensaje y sustituye el directorio actual por el suministrado por la Instancia. Asimismo toma la versión del directorio como base para próximas sincronizaciones. Flujos de Excepción En este flujo se consideran los supuestos de excepción siguientes: 1. Secuencia de versión incorrecta. Este flujo ocurre si durante la validación del Mensaje, en el paso 3 del flujo normal de eventos, la versión del directorio no es mayor que la registrada en la OPE. a. Al presentarse el error en la validación, la OPE envía como respuesta al remitente un Mensaje de rechazo de tipo MensajeRechazado, generando en el cuerpo del Mensaje el elemento Rechazo y el elemento CodigoError, el cual tendrá en su atributo SecuenciaDeVersionIncorrecta. b. La Instancia recibe el Mensaje de rechazo, lo registra y procesa el error siguiendo las directrices para el manejo de errores en Escenarios de Interoperabilidad. Resultado: El directorio de la Instancia A se encuentra sincronizado con el Directorio Consolidado de Interoperabilidad de la OPE. 5.4. SINCRONIZACIÓN COMPLETA, OPE A INSTANCIA Descripción: Permite la transmisión de un Mensaje de Sincronización Completa, OPE a Instancia. Inicia después de que una Instancia A envía a la OPE su directorio completo, o bien, cuando se encuentra algún error de sincronización de directorio. La OPE deberá enviar este Mensaje al resto de miembros con los que la Instancia A tiene Relación de Interoperabilidad. Precondiciones: Recibir una actualización completa de tipo Instancia a OPE. Protocolo de Comunicación: En el intercambio de los Mensajes de este escenario se aplica el Protocolo Instancia-OPE. Las operaciones especificadas en el Protocolo se encuentran definidas en el apartado 8 “Convenciones de Comunicaciones” de este Documento Técnico. Tipos de Datos: En este escenario, se envía un Mensaje de tipo DirectorioMiembroComunidad con un elemento de tipo DirectorioMiembroComunidad. El elemento DirectorioMiembroComunidad contiene la Estructura de la Institución. Especificación del Escenario: Flujo normal de eventos En el flujo normal de eventos se consideran los siguientes pasos: Documento Técnico para la Interoperabilidad de los SACG 12 1. La OPE prepara un Mensaje de sincronización de tipo DirectorioMiembroComunidad y en el cuerpo del Mensaje introduce un elemento de tipo DirectorioMiembroComunidad, con la Estructura de la Institución y la versión actual del directorio de la Instancia. 2. Una vez preparado el Mensaje de sincronización, la OPE lo envía a todas las Instancias con las que la Instancia A tiene Relación de Interoperabilidad. 3. Cada una de las Instancias destino recibe el Mensaje y sustituye en su directorio local la Estructura de la Institución de la Instancia A suministrada por la OPE. Flujos de Excepción En este flujo se consideran los supuestos de excepción siguientes: 1. La Instancia de Recepción no está disponible. Este flujo de evento ocurre si al momento de enviar el Mensaje la OPE no puede contactar a la Instancia destino del Mensaje. La OPE intentará realizar la conexión no más de 6 veces, en lapsos de 1 hora entre cada intento. Luego de cada intento de envío de actualización fallido, la OPE generará un mensaje de error que enviará al administrador del SACG destino, vía correo electrónico. Resultado: Las Instancias con las que la Instancia A tienen Relación de Interoperabilidad, cuentan con el directorio actualizado de la Instancia A. 5.5. SINCRONIZACIÓN PARCIAL DE DIRECTORIOS, INSTANCIA A OPE Descripción: Permite la actualización parcial del Directorio Consolidado de Interoperabilidad y de los directorios de las Instancias, mediante la especificación de operaciones de altas, cambios y bajas en las Estructuras de las Instituciones de que se trate. Este escenario inicia cuando una Instancia envía a la OPE una actualización de su directorio. Precondiciones: 1. La Instancia que envía la solicitud es una Instancia ya registrada en la Comunidad. 2. Se debe contar con al menos una Sincronización Completa Instancia OPE efectuada previamente. Protocolo de Comunicación: En el intercambio de los Mensajes de este escenario se aplica el Protocolo Instancia-OPE. Las operaciones especificadas en el Protocolo se encuentran definidas en el apartado 8 “Convenciones de Comunicaciones” de este Documento Técnico. Tipos de Datos: En este escenario se ActualizacionDirectorioMiembroComunidad, con ActualizacionDirectorioMiembroComunidad. Documento Técnico para la Interoperabilidad de los SACG envía un un Mensaje de tipo elemento de tipo El Elemento 13 ActualizacionDirectorioMiembroComunidad contiene las listas de altas, cambios y bajas de la Estructura de la Institución, ocurridas en la Instancia que emite el Mensaje. Aunque el Mensaje no está limitado a un mínimo de operaciones (ya que es posible especificar y enviar una sola operación al directorio), se recomienda que la Instancia agrupe sus operaciones en un solo Mensaje. Si bien el Mensaje de actualización puede contener operaciones de múltiples usuarios del SACG, éste no deberá incluir más de una operación que afecte a un mismo usuario. Especificación del Escenario: Flujo normal de eventos En el flujo normal de eventos se consideran los siguientes pasos: 1. La Instancia A, prepara un Mensaje de sincronización de tipo ActualizacionDirectorioMiembroComunidad y en el cuerpo del Mensaje introduce un elemento de tipo ActualizacionDirectorioMiembroComunidad, con la información de altas, bajas y cambios realizados desde la última sincronización, así como el número correspondiente de la versión del directorio de la Instancia. 2. Una vez preparado el Mensaje de sincronización, la Instancia A lo envía a la OPE. 3. La OPE recibe el Mensaje y valida que la versión del directorio de la Instancia en el Mensaje sea superior a la versión registrada de esa Instancia en el directorio de Instancias de la OPE. Efectuada dicha validación, la OPE procesa el Mensaje y realiza las operaciones de altas, cambios y bajas en ese orden. 4. Sincronizado el Directorio Consolidado de Interoperabilidad, la OPE envía el Mensaje de sincronización a las Instancias con las que la Instancia A tiene Relación de Interoperabilidad, según se especifica en el Escenario de Interoperabilidad: Sincronización Parcial, OPE – Instancias. Flujos de Excepción En este flujo se consideran los supuestos de excepción siguientes: 1. Secuencia de versión incorrecta. Este flujo ocurre si durante la validación del Mensaje en el paso 3 del flujo normal de eventos, la versión del directorio no es mayor que la registrada en la OPE. Lo que supondría un error en algún intento de sincronización anterior. a. Al presentarse el error en la validación, la OPE envía como respuesta al remitente un Mensaje de rechazo de tipo MensajeRechazado, especificando en el atributo CodigoError el valor SecuenciaDeVersionIncorrecta. Documento Técnico para la Interoperabilidad de los SACG 14 b. La Instancia recibe el Mensaje de rechazo, lo registra y procesa el error, siguiendo las reglas para el manejo de errores en Escenarios de Interoperabilidad. Resultado: El Directorio Consolidado de Interoperabilidad de la OPE se encuentra sincronizado con la Instancia A. 5.6. SINCRONIZACIÓN PARCIAL DE DIRECTORIOS, OPE A INSTANCIA Descripción: Permite la actualización parcial de los directorios de las Instancias, mediante la especificación de operaciones de altas, cambios y bajas en las Estructuras de las Instituciones de que se trate. La OPE envía Mensajes de sincronización de actualizaciones de la Instancia A, hacia aquellas Instancias con las que la Instancia A tenga Relación de Interoperabilidad. Este escenario inicia después de que la OPE hace la sincronización parcial del directorio de la Instancia A en el Directorio Consolidado de Interoperabilidad de la OPE. Precondiciones: Recibir una Sincronización Parcial, Instancia a OPE. Protocolo de Comunicación: En el intercambio de los Mensajes de este escenario se aplica el Protocolo Instancia-OPE. Las operaciones especificadas en el Protocolo se encuentran definidas en el apartado 8 “Convenciones de Comunicaciones” de este Documento Técnico. Tipos de Datos: En este escenario se envía en un Mensaje de tipo ActualizacionDirectorioMiembroComunidad, con un elemento de tipo ActualizacionDirectorioMiembroComunidad. El elemento “ActualizacionDirectorioMiembroComunidad” contiene la Estructura de la Institución A. Especificación del Escenario: Flujo normal de eventos En el flujo normal de eventos se consideran los siguientes pasos: 1. La OPE prepara un Mensaje de sincronización de tipo ActualizacionDirectorioMiembroComunidad y en el cuerpo del mensaje introduce un elemento de tipo ActualizacionDirectorioMiembroComunidad, con la información de altas, bajas y cambios realizados desde la última sincronización. El elemento ActualizacionDirectorioMiembroComunidad también incluirá el número correspondiente de la versión del directorio de la Instancia. 2. Una vez preparado el Mensaje de sincronización, la OPE lo envía a todas las Instancias con las que la Instancia A tiene Relación de Interoperabilidad. 3. Cada una de las Instancias destino recibe el Mensaje, valida que la versión del directorio sea la correcta y aplica en su directorio local las actualizaciones de la Estructura de la Institución de la Instancia A suministrada por la OPE. Flujos de Excepción Documento Técnico para la Interoperabilidad de los SACG 15 En este flujo se consideran los supuestos de excepción siguientes: 1. La Instancia de recepción no está disponible. Este flujo ocurre si al momento de enviar el Mensaje, la OPE no puede contactar a la Instancia destino (aplica para cada Instancia con la que la Instancia A tenga una Relación de Interoperabilidad). La OPE intentará realizar la conexión no más de 6 veces, en lapsos de 1 hora entre cada intento. Luego de cada intento de envío de actualización fallido, la OPE generará un mensaje de error que enviará al administrador del SACG destino, vía correo electrónico. Resultado: Las Instancias con las que la Instancia A tiene Relación de Interoperabilidad, cuentan con el directorio actualizado de la Instancia A. 5.7. ENVIÓ DE SOLICITUD Descripción: Escenario de Interoperabilidad que habilita el envío de un Mensaje de tipo RegistroOficioElectronico de un SACG a otro. Precondiciones: Existe Relación de Interoperabilidad entre la Instancia que remite la solicitud y la Instancia destino. Protocolo de Comunicación: En el intercambio de los Mensajes de este escenario se aplica el Protocolo Instancia-Instancia. Las operaciones especificadas en el Protocolo se encuentran definidas en el apartado 8 “Convenciones de Comunicaciones” de este Documento Técnico. Tipos de Datos: En este escenario se envía un Mensaje de tipo RegistroOficioElectronico con un elemento de tipo OficioElectronico, el cual tendrá el valor Solicitud en el atributo TipoOficio. Especificación del Escenario: Flujo normal de eventos En el flujo normal de eventos se consideran los siguientes pasos: 1. La Instancia A genera un Mensaje de tipo RegistroOficioElectronico con un elemento de tipo OficioElectronico, el cual tendrá el valor Solicitud en el atributo TipoOficio para la Instancia B y lo envía a la OPE. 2. La OPE recibe el Mensaje y realiza las validaciones siguientes: a. Que el área o unidad administrativa de la Instancia A que envía la solicitud, así como el usuario o firmante Remitente del oficio, se encuentran en el Directorio Consolidado de Interoperabilidad. Documento Técnico para la Interoperabilidad de los SACG 16 b. Que el área o unidad administrativa de la Instancia B a quien se dirige la solicitud, así como el usuario o usuarios Destinatarios (originales o en copia) del oficio, se encuentran en el Directorio Consolidado de Interoperabilidad. Después de efectuadas las validaciones mencionadas, la OPE reenvía el Mensaje de tipo RegistroOficioElectronico a la Instancia B, según lo estipulado en el Protocolo Instancia-Instancia. 3. La Instancia B recibe el Mensaje y realiza las validaciones siguientes: a. Que el área o unidad administrativa de la Instancia A que envía la solicitud, así como el usuario o firmante Remitente del oficio se encuentran en el Directorio Consolidado de Interoperabilidad. b. Que el área o unidad administrativa de la Instancia B a quien se dirige la solicitud, así como el usuario o usuarios Destinatarios (originales o en copia) del oficio, se encuentran en el Directorio Consolidado de Interoperabilidad. Después de efectuadas las validaciones mencionadas el destinatario registra y procesa la solicitud recibida, conforme al SACG. El registro de la solicitud deberá incluir todos los elementos de la misma. Si en el Mensaje de tipo RegistroOficioElectronico se incluyen archivos anexos, éstos deberán ser validados con respecto a sus respectivos atributos “HashArchivo”, y registrados en la Instancia destino al momento de la recepción de cada solicitud. En los casos en que estos archivos se transmitan como referencias (elementos ReferenciaWeb), deberán ser descargados para su validación y registro. Flujos Alternos En los flujos alternos se consideran los siguientes casos: 1. Envío de copias de solicitud. En el flujo normal de eventos, el área o unidad administrativa de la Instancia A, envía un Mensaje de tipo RegistroOficioElectronico al área o unidad administrativa de la Instancia B, con copia a una o más áreas o unidades administrativas de una o más Instancias. a. En el paso 2 del Flujo normal de eventos, la OPE realiza las validaciones especificadas, por cada uno de los destinatarios de la solicitud. b. Después de efectuadas las validaciones mencionadas, la OPE reenvía el Mensaje de tipo RegistroOficioElectronico a todas las Instancias destino, según lo estipulado en el Protocolo Instancia-Instancia. 2. Cada Instancia que recibe copia del Mensaje, realiza las siguientes validaciones: Documento Técnico para la Interoperabilidad de los SACG 17 a. Que el área o unidad administrativa de la Instancia A que envía la solicitud, así como el usuario o firmante Remitente del oficio, se encuentran en el Directorio Consolidado de Interoperabilidad. b. Que el área o unidad administrativa de la Instancia B a quien se dirige la solicitud, así como el usuario o usuarios Destinatarios (originales o en copia) del oficio, se encuentran en el Directorio Consolidado de Interoperabilidad. Después de efectuadas las validaciones mencionadas, los destinatarios de las copias las reciben y les dan el trámite que en términos de las disposiciones aplicables corresponda. El registro de la copia de solicitud deberá incluir todos los elementos de la misma. Si en el Mensaje de tipo RegistroOficioElectronico se incluyen archivos anexos, éstos deberán ser validados con respecto a sus respectivos atributos “HashArchivo”, y registrados en la Instancia destino al momento de la recepción de cada copia de solicitud. En los casos en que estos archivos se transmitan como referencias (elementos ReferenciaWeb), deberán ser descargados para su validación y registro. Flujos de Excepción En este flujo se consideran los supuestos de excepción siguientes: 1. El área o unidad administrativa, o el usuario o firmante Remitente del oficio, son desconocidos por la Instancia destino. Este flujo ocurre si durante el paso 3 del flujo normal de eventos o el paso 2 del flujo alterno, la Instancia B no encuentra el área o unidad administrativa, o el usuario o firmante Remitente del oficio de la Instancia A en el Directorio Consolidado de Interoperabilidad. a. La Instancia B solicita a la OPE, el Directorio Consolidado de Interoperabilidad completo para actualizar su directorio. Esto lo realiza conforme al Escenario: Sincronización Completa OPE a Instancia. b. Una vez recibido el Directorio Consolidado de Interoperabilidad, la Instancia B valida si la Instancia A y el área o unidad administrativa, y el usuario o firmante Remitente del oficio están registrados: i. Si la Instancia A sí está registrada, la Instancia B registra y procesa la solicitud recibida, conforme al SACG. ii. Si la Instancia A no está registrada, la Instancia B elimina la solicitud recibida y envía un Mensaje de rechazo, especificando en el atributo CodigoError el valor MiembroDesconocido. 2. La Instancia de recepción no está disponible. Documento Técnico para la Interoperabilidad de los SACG 18 Este flujo de evento ocurre si al momento de enviar el Mensaje, la OPE no puede contactar a la Instancia destino del Mensaje. La OPE intentará realizar la conexión no más de 6 veces en lapsos de 1 hora entre cada intento. Después de cada intento de envío de actualización fallido, la OPE generará un mensaje de error que enviará al administrador del SACG destino, vía correo electrónico. 3. El Oficio Electrónico contiene archivos anexos por ReferenciaWeb y la Instancia destino no puede descargar alguno de estos archivos. Este flujo ocurre si durante el paso 3 del flujo normal de eventos o el paso 2 del flujo alterno, la Instancia B no puede descargar algún archivo de los anexos incluidos en el Oficio Electrónico como ReferenciaWeb (URL de descarga). a. La Instancia B envía un Mensaje de rechazo, especificando en el atributo CodigoError el valor DatosInvalidos. 4. El Oficio Electrónico contiene archivos anexos y falla la validación de “HashArchivo” de alguno de ellos. Este flujo ocurre si durante el paso 3 del flujo normal de eventos o el paso 2 del flujo alterno, la Instancia B encuentra discrepancia entre alguno de los “HashArchivo” declarado en el Oficio Electrónico y su correspondiente “HashArchivo” calculado. a. La Instancia B envía un Mensaje de rechazo, especificando en el atributo CodigoError el valor DatosInvalidos. Resultado: La Instancia B ha registrado la solicitud recibida. 5.8. ENVÍO DE RESPUESTA Descripción: Escenario de Interoperabilidad que habilita el envío de una respuesta a una solicitud de una Instancia a otra. Precondiciones: 1. La Instancia que envía la respuesta es una Instancia registrada en la Comunidad. 2. Existe Relación de Interoperabilidad entre la Instancia que remite la solicitud y la Instancia destino. 3. Existe una solicitud a la cual se está respondiendo. Protocolo de Comunicación: En el intercambio de los Mensajes de este escenario se aplica el Protocolo Instancia-Instancia. Las operaciones especificadas en el Protocolo se encuentran definidas en el apartado 8 “Convenciones de Comunicaciones” de este Documento Técnico. Documento Técnico para la Interoperabilidad de los SACG 19 Tipos de Datos: En este escenario, se envía un Mensaje de tipo RegistroOficioElectronico con un elemento de tipo OficioElectronico, el cual tendrá el valor Respuesta en el atributo TipoOficio. El elemento OficioElectronico contiene la respuesta a la solicitud, e incluye el atributo EnRespuestaDe con el folio de la solicitud a la que se responde. Especificación del Escenario: Flujo normal de eventos En el flujo normal de eventos se consideran los siguientes pasos: 1. La Instancia B genera un Mensaje de tipo RegistroOficioElectronico para la Instancia A, incorporando en el atributo EnRespuestaDe el folio de la solicitud a la que se responde, y lo envía a la OPE. El folio especificado en el atributo EnRespuestaDe, debe ser el de la solicitud emitida por la Instancia A (especificado en el atributo Folio del Oficio Electrónico que se responde) y no el folio generado por la Instancia B al registrar dicha solicitud. 2. La OPE recibe el Mensaje y realiza las validaciones siguientes: a. Que existe Relación de Interoperabilidad entre la Instancia A y la Instancia B. b. Que el área o unidad administrativa de la Instancia B que envía la respuesta, así como el usuario o firmante Remitente del oficio de respuesta, se encuentran en el Directorio Consolidado de Interoperabilidad. c. Que el área o unidad administrativa de la Instancia A a la que se dirige la respuesta, así como el usuario o firmante Destinatario del oficio de respuesta, se encuentran en el Directorio Consolidado de Interoperabilidad. Después de efectuadas las validaciones mencionadas, la OPE reenvía el Mensaje RegistroOficioElectronico a la Instancia A, según lo estipulado en el Protocolo Instancia-Instancia. 3. La Instancia A recibe el Mensaje y realiza las validaciones siguientes: a. Que el área o unidad administrativa de la Instancia B que envía la respuesta, así como el usuario o firmante Remitente del oficio se encuentran en el Directorio Consolidado de Interoperabilidad. b. Que el área o unidad administrativa de la Instancia A a quien se dirige la respuesta, así como el usuario o usuarios Destinatarios (originales o en copia) del oficio, se encuentran en el Directorio Consolidado de Interoperabilidad. c. Que existe una solicitud emitida por el destinatario de la respuesta, con el folio de dicha solicitud, en el atributo EnRespuestaDe. Después de efectuadas las validaciones mencionadas, el destinatario registra y procesa la respuesta recibida en la Instancia A, conforme al SACG. Documento Técnico para la Interoperabilidad de los SACG 20 El registro de la respuesta deberá incluir todos los elementos de la misma. Si en el Mensaje de tipo RegistroOficioElectronico se incluyen archivos anexos, éstos deberán ser validados con respecto a sus correspondientes atributos “HashArchivo” y registrados en la Instancia destino al momento de la recepción de cada respuesta. En los casos en que estos archivos se transmitan como referencias (elementos ReferenciaWeb), deberán ser descargados para su validación y registro. Flujos Alternos El flujo considera los siguientes casos: 1. Envió de copias de respuesta. En el flujo normal de eventos, el área o unidad administrativa de la Instancia de B envía un Mensaje de tipo RegistroOficioElectronico al área o unidad administrativa de la Instancia A, con copia a una o más áreas o unidades administrativas de una o más Instancias. a. En el paso 2 del flujo normal de eventos, la OPE realiza las validaciones especificadas por cada uno de los destinatarios a quienes se marca copia de la respuesta. Después de efectuadas las validaciones mencionadas, la OPE reenvía el Mensaje de tipo RegistroOficioElectronico a todas las Instancias destino, según lo estipulado en el Protocolo Instancia-Instancia. b. Cada Instancia que recibe los Mensajes de copia realiza las validaciones siguientes: i. Que el emisor del Mensaje es una Instancia registrada en la Comunidad. ii. Que el área o unidad administrativa de la Instancia B, así como el usuario firmante Remitente del oficio, se encuentran en el Directorio Consolidado de Interoperabilidad. iii. Que el área o unidad administrativa de la Instancia A, así como el usuario firmante Destinatario del oficio, se encuentran en el Directorio Consolidado de Interoperabilidad. 2. Efectuadas las validaciones mencionadas, los destinatarios a quienes se marca copia de la respuesta, la reciben y le dan el trámite que en términos de las disposiciones aplicables corresponda. El registro de la copia de respuesta deberá incluir todos los elementos de la misma. Si en el Mensaje de tipo RegistroOficioElectronico se incluyen archivos anexos, éstos deberán ser validados con respecto a sus respectivos atributos “HashArchivo” y registrados en la Instancia destino al momento de la recepción de cada copia de respuesta. En los casos en que estos archivos se transmitan como referencias (elementos ReferenciaWeb), deberán ser descargados para su validación y registro. Flujos de Excepción Documento Técnico para la Interoperabilidad de los SACG 21 En este flujo se consideran los supuestos de excepción siguientes: 1. El área o unidad administrativa o el usuario o firmante Remitente del oficio es desconocida por el destinatario: Este flujo ocurre si durante el paso 2 del flujo normal de eventos o en el paso 1 del flujo alterno, la Instancia B, no encuentra el área o unidad administrativa de la Instancia A o de alguna Instancia a la que se dirige copia, en su Directorio Consolidado de Interoperabilidad. a. La Instancia B solicita a la OPE, el Directorio Consolidado de Interoperabilidad completo para actualizar su directorio. Esto lo realiza conforme al Escenario: Sincronización Completa OPE a Instancia. b. Una vez recibido el Directorio Consolidado de Interoperabilidad, la Instancia B valida si la Instancia A y el área o unidad administrativa de ésta, o de la Instancia a la que se dirige copia, están registradas: i. Si la Instancia A o la Instancia a la que se dirige copia sí está registrada, la Instancia B procede al envío del Mensaje de tipo RegistroOficioElectronico o de su copia. ii. Si la Instancia A o la Instancia a la que se dirige copia no está registrada, la Instancia B envía un Mensaje de rechazo, especificando en el atributo CodigoError el valor MiembroDesconocido. 2. La Instancia de recepción no está disponible. Este flujo ocurre si al momento de enviar el Mensaje, la OPE no puede contactar a la Instancia destino del Mensaje. La OPE intentará realizar la conexión no más de 6 veces en lapsos de 1 hora entre cada intento. Después de cada intento de envío de actualización fallido, la OPE generará un mensaje de error que enviará al administrador del SACG destino, vía correo electrónico. 3. El Oficio Electrónico contiene archivos anexos por ReferenciaWeb y la Instancia destino no puede descargar alguno de estos archivos. Este flujo ocurre si durante el paso 3 del flujo normal de eventos o en el paso 1 del flujo alterno, la Instancia A no puede descargar algún archivo de los anexos incluidos en el Oficio Electrónico como ReferenciaWeb (URL de descarga). a. La Instancia A envía un Mensaje de rechazo, especificando en el atributo CodigoError el valor DatosInvalidos. 4. El Oficio Electrónico contiene archivos anexos y falla la validación de “HashArchivo” de alguno de ellos. Documento Técnico para la Interoperabilidad de los SACG 22 Este flujo ocurre si durante el paso 3 del flujo normal de eventos o en el paso 2 del flujo alterno, la Instancia A encuentra discrepancia entre alguno de los “HashArchivo” declarados en el Oficio Electrónico y su correspondiente “HashArchivo” calculado. a. La Instancia A envía un Mensaje de rechazo, especificando en el atributo CodigoError el valor DatosInvalidos. Resultado: La Instancia A ha registrado la respuesta recibida. DESCRIPCIÓN DE LOS CÓDIGOS DE ERROR QUE SE PRESENTAN EN LOS DIVERSOS ESCENARIOS DE INTEROPERABILIDAD Código de Error Descripción DatosInvalidos La información suministrada es inválida, o insuficiente para la acción especificada. DestinoInaccesible Se intentó enviar el Mensaje pero el destino es inaccesible. El miembro de la Comunidad que intenta enviar el Mensaje debe realizar reintentos de envío. El tratamiento del Mensaje se realiza conforme al SACG. FirmaInvalida Todo Mensaje cuya Firma Electrónica Avanzada no sea válida debe ser rechazado. El tratamiento del Mensaje se realiza conforme al SACG. MensajeMalFormado Se encontraron errores en la estructura del Mensaje recibido. MiembroDesconocido No se encontró la Instancia en el Directorio Consolidado de Interoperabilidad. En caso de que el miembro de la Comunidad que encuentra el error sea la OPE, ésta rechaza el Mensaje. La Instancia debe iniciar el escenario Sincronización Completa, Instancia a OPE. En caso de que el miembro de la Comunidad que encuentra el error sea una Instancia, ésta debe aceptar el Mensaje entrante y posteriormente iniciar el escenario Sincronización Completa, Instancia a OPE. Finalmente debe continuar con el flujo de eventos del escenario en que ocurrió el error. RelacionNoEstablecida La Instancia destino no tiene o ha suspendido la Relación de Interoperabilidad con la Instancia remitente y rechaza el Mensaje. SecuenciaDeVersionIncorrecta Una sincronización parcial de directorio especifica un número de versión fuera de secuencia con la versión registrada. Se requiere iniciar el escenario Sincronización Completa, Instancia a OPE. UsuarioDesconocido No se encontró el área o la unidad administrativa especificada en el directorio registrado. En caso de que el miembro de la Comunidad que encuentra la Documento Técnico para la Interoperabilidad de los SACG 23 Código de Error Descripción inconsistencia sea la OPE, ésta rechaza el Mensaje. Si es la Instancia debe iniciar el escenario de Sincronización Completa, Instancia a OPE. IdentificadorMensajeDuplicado Se ha recibido un Mensaje cuyo identificador existe en uno de los Mensajes registrados y ha sido rechazado por duplicidad. MensajeEnReferenciaNoEncontrado Se ha recibido un Mensaje que contiene en su encabezado el elemento EnReferenciaDe, pero no se encontró ningún Mensaje al que el IdMensaje especificado en dicho elemento hace referencia. SuscripcionActiva Se ha recibido una solicitud de suscripción de una Instancia hacia otra, pero ya existe una Relación de Interoperabilidad. ErrorInterno Ocurre un error en el servidor al procesar un Mensaje, que no es atribuible a un problema tipificado con otro código de error. 6. SERVICIOS DE INTEROPERABILIDAD Servicio: MensajeInteroperabilidadService Nombre de la operación Descripción ProcesaMensaje Recibe un elemento de tipo MensajeDeInteroperabilidad y lo procesa, con base en lo especificado en los Escenarios de Interoperabilidad. Operación: ProcesaMensaje Acción: …/IMensajeInteroperabilidadService/ProcesaMensaje Estilo: Documento Entrada (Literal): la entrada de esta operación es el elemento tns:ProcesaMensaje, el cual tiene la estructura descrita en la siguiente tabla: Elemento Tipo Secuence tns:mensaje Ocurrencia Descripción 1..1 xsd:anyType (restriction) 0..1 Elemento de XML de Tipo MensajeDeInteroperabilidad (referirse a la definición de tipo de datos en anexos) Salida (Literal): la salida de esta operación es el elemento tns:ProcesaMensajeResponse, el cual tiene la estructura descrita en la siguiente tabla: Documento Técnico para la Interoperabilidad de los SACG 24 Elemento Tipo Ocurrencia Descripción Secuence 1..1 tns:ProcesaMensajeResult xsd:anyType (restriction) 0..1 7. Elemento de XML de Tipo MensajeDeInteroperabilidad (referirse a la definición de tipo de datos en anexos) CONSIDERACIONES DE SEGURIDAD 7.1. COMUNICACIÓN Las conexiones entre los puntos de ruteo deben ser conexiones seguras, por medio del protocolo HTTPS, a fin de garantizar la integridad de los Mensajes y la confidencialidad durante la transmisión entre Instancia-OPE. Los servicios de interoperabilidad que se implementen deben hacer uso de servicios Web basados en estándares abiertos, con formato de mensajes SOAP/XML sobre protocolo HTTPS. Bajo este esquema además de manejar un transporte seguro se podrá integrar el uso de WS-Security (Web Services Security) que cumpla con el estándar WS Security Versión 1.1 Oasis Open, específicamente la implementación de la especificación XML-SIGnature, de tal forma que el mensaje SOAP-XML sea Firmado Electrónicamente por la OPE antes de enviarlo a la Instancia destino, para que se garantice la autenticidad, integridad y no repudio de los mismos. 7.2. FIRMA ELECTRÓNICA AVANZADA. Para que el remitente pueda utilizar la Firma Electrónica Avanzada en los Oficios Electrónicos, deberá integrarse un componente de firmado en los SACG. Los miembros de la Comunidad, ya sea una Instancia o la OPE, deberán aplicar los mecanismos de validación de Firma Electrónica Avanzada en los Oficios Electrónicos. El Firmado Electrónico que efectúan las Instancias asegura la autoría de los Mensajes generados por las mismas, permite mantener integra la información y el no repudio de ésta. El Firmado Electrónico que efectúa la OPE asegura la integridad de los datos transmitidos en la Plataforma. El Firmado Electrónico debe incluir todos los elementos XML del Mensaje, excepto los elementos Ruteo y FirmasMensaje, en virtud de que al de Ruteo se le agregarán las estampas de recepción y de envió, y al de FirmasMensaje se le agregarán las Firmas Electrónicas Avanzadas de la Instancia y de la OPE durante la transmisión del Mensaje. Al hacer el Firmado Electrónico se debe utilizar Estampado de Tiempo. Documento Técnico para la Interoperabilidad de los SACG 25 7.3. ESTAMPADO DE TIEMPO El Estampado de Tiempo se utiliza para dar certidumbre de que los Mensajes existieron en un momento determinado. La OPE será la encargada de realizar el Estampado de Tiempo. Las estampas de tiempo generadas servirán como evidencia forense del envío y recepción de Mensajes. El elemento utilizado para la generación de la estampa de tiempo, será el atributo IdMensaje del Mensaje. La OPE generará una estampa de tiempo en los Mensajes que reciba o envíe, agregando el elemento EstampaRecibido del PuntoRuta o EstampaEnvio del PuntoRuta, según corresponda. El formato de fechas deberá expresarse en UTC (Universal Time Coordinated) y apegarse a la definición TSP (Time-Stamp Protocol) de PKI (Public Key Infraestructure), bajo el estándar RFC3161. 8. CONVENCIONES DE COMUNICACIONES La interoperabilidad en la Plataforma se efectúa por medio de los Protocolos siguientes: 8.1. PROTOCOLO INSTANCIA-OPE Objetivo: Permitir que el remitente de un Mensaje proporcione o solicite información a un destinatario. Cuando el remitente del Mensaje es una Instancia el destinatario es la OPE, y cuando el remitente es la OPE el destinatario es una Instancia. Flujo de Mensajes de Interoperabilidad de control de gestión: Paso 1 - El remitente genera un Mensaje, para lo cual: 1.1.- Asigna un identificador único al atributo IdMensaje del encabezado. 1.2.- Agrega la fecha de envío al encabezado en el elemento FechaEnvio de tipo DateTime cuando el remitente es una Instancia, y EstampaEnvio de tipo EstampillaDeTiempo cuando el remitente es la OPE. 1.3.- Establece el tipo del Mensaje en base al Escenario de Interoperabilidad (atributo TipoMensaje del encabezado). 1.4.- Agrega, cuando resulte necesario, la información señalada en el cuerpo del Mensaje. 1.5.- Efectúa el Firmado Electrónico del Mensaje. 1.6.- Envía el Mensaje al destinatario. Documento Técnico para la Interoperabilidad de los SACG 26 Paso 2 - El destinatario del Mensaje, realiza lo siguiente: 2.1.- Valida la estructura del Mensaje (ver flujo de excepción 1 de este apartado). 2.2.- Valida que la Instancia A esté registrada en la Comunidad (no aplica para el escenario de Registro de Instancia en la Plataforma). 2.3.- Valida que el Certificado Digital del remitente esté vigente y no revocado (ver flujos de excepción 2 y 3 de este apartado). 2.4.- Valida que la Firma Electrónica Avanzada del Mensaje contenga al Certificado Digital del destinatario registrado (ver flujo de excepción 4 de este apartado). 2.5.- Procesa el Mensaje según el Escenario de Interoperabilidad (ver flujo alterno 1 de este apartado). 2.6.- Genera un MensajeInteroperabilidad cuyo TipoMensaje es AcuseRecibo, asignándole un identificador único al atributo IdMensaje del encabezado. 2.7.- Agrega la fecha de envío al encabezado en el elemento FechaEnvio de tipo DateTime, cuando el destinatario es una Instancia y EstampaEnvio de tipo EstampillaDeTiempo, cuando el destinatario es la OPE. 2.8.- Establece como tipo de Mensaje, MensajeInteroperabilidad cuyo TipoMensaje es AcuseRecibo (en el atributo TipoMensaje del encabezado). 2.9.- Efectúa el Firmado Electrónico del Mensaje. 2.10.- Envía el Mensaje al remitente. Paso 3 - Al recibir el AcuseRecibo, el remitente: 3.1.- Valida la estructura del Mensaje. 3.2.- Valida que el Certificado Digital del remitente esté vigente y no revocado. 3.3.- Valida que la Firma Electrónica Avanzada del Mensaje corresponda al Certificado Digital del destinatario registrado. 3.4.- Registra el Mensaje. Flujo Alterno 1. Mensaje con petición de información. Cuando el Mensaje recibido sea una petición de información, se observará lo siguiente: 1.- El destinatario agrega al AcuseRecibo la información solicitada. 2.- El proceso continúa con el flujo normal de eventos (Paso 2.5 de este apartado). Documento Técnico para la Interoperabilidad de los SACG 27 Flujos de Excepción 1. Estructura de Mensaje inválida. Cuando el Mensaje recibido en el Paso 2 de este apartado no cumple con la estructura esperada, el receptor: 1.- Genera un nuevo Mensaje. 2.- Establece como tipo de Mensaje, MensajeRechazado (en el atributo TipoMensaje del encabezado). 3.- Establece el valor MensajeMalFormado, en el atributo CodigoError del elemento Rechazo del cuerpo del Mensaje. 4.- Envía el Mensaje a la Instancia emisora. 5.- Termina el flujo alterno y el flujo principal. 2. Certificado Digital no vigente. Cuando el Mensaje recibido en el Paso 2 de este apartado, está Firmado Electrónicamente con la Clave Privada que corresponde a un Certificado Digital no vigente, el receptor: 1.- Genera un nuevo Mensaje. 2.- Establece como tipo de Mensaje, MensajeRechazado (en el atributo TipoMensaje del encabezado). 3.- Establece el valor FirmaInvalida, en el atributo CodigoError del elemento Rechazo del cuerpo del Mensaje. 4.- Envía el Mensaje a la Instancia emisora. 5.- Termina el flujo alterno y el flujo principal. 3. Certificado Digital revocado. Cuando el Mensaje recibido en el Paso 2 de este apartado, está Firmado Electrónicamente con la Clave Privada que corresponde a un Certificado Digital revocado, el receptor: 1.- Genera un nuevo Mensaje. 2.- Establece como tipo de Mensaje, MensajeRechazado (en el atributo TipoMensaje del encabezado) 3.- Establece el valor FirmaInvalida, en el atributo CodigoError del elemento Rechazo del cuerpo del Mensaje. 4.- Envía el Mensaje a la Instancia emisora. Documento Técnico para la Interoperabilidad de los SACG 28 5.- Termina el flujo alterno y el flujo principal. 4. Certificado Digital no válido. Cuando el Mensaje recibido en el Paso 2 de este apartado, está Firmado Electrónicamente con la Clave Privada que corresponde a un Certificado Digital que no es el registrado por el receptor, este último: 1.- Genera un nuevo Mensaje. 2.- Establece como tipo de Mensaje, MensajeRechazado (en el atributo TipoMensaje del encabezado). 3.- Establece el valor FirmaInvalida, en el atributo CodigoError del elemento Rechazo del cuerpo del Mensaje 4.- Envía el Mensaje a la Instancia emisora. 5.- Termina el flujo alterno y el flujo principal. 8.2. PROTOCOLO INSTANCIA-INSTANCIA Objetivo: Permitir que la Instancia remitente de un Mensaje proporcione información a través de la OPE a una o más Instancias. Flujo de Mensajes de Interoperabilidad de control de gestión: Paso 1 - El remitente (Instancia A) genera un Mensaje, para lo cual: 1.1.- Asigna un identificador único al atributo IdMensaje del encabezado. 1.2.- Agrega la fecha de envío en el elemento FechaEnvio de tipo DateTime del encabezado. 1.3.- Establece el tipo del Mensaje, en base al Escenario de Interoperabilidad (atributo TipoMensaje del encabezado). 1.4.- Asigna la información del origen y el destino. 1.5.- Efectúa el Firmado Electrónico del Mensaje. 1.6.- Envía el Mensaje a la Instancia destino (Instancia B), a través de la OPE. Paso 2 - La OPE recibe el Mensaje y realiza lo siguiente: 2.1.- Valida la estructura del Mensaje (ver flujo de excepción 1 del Protocolo InstanciaOPE). Documento Técnico para la Interoperabilidad de los SACG 29 2.2.- Valida que la Instancia A y la Instancia B estén registradas en la Comunidad. 2.3.- Valida que el Certificado Digital del remitente esté vigente y no revocado (ver flujos de excepción 2 y 3 del Protocolo Instancia-OPE). 2.4.- Valida que la Firma Electrónica Avanzada del Mensaje corresponda al Certificado Digital del emisor registrado (ver flujo de excepción 4 del Protocolo Instancia-OPE). 2.5.- Agrega el punto de ruteo al encabezado del Mensaje, con lo cual se acredita que el Mensaje paso por la OPE. 2.6.- Genera una Estampa de Tiempo de recepción (de tipo EstampillaDeTiempo). 2.7.- Inserta la Estampa de Tiempo de recepción, en el elemento EstampaRecibido del Punto de Ruteo (elemento PuntoRuta del encabezado). 2.8.- Registra el Mensaje. 2.7.- Genera un MensajeInteroperabilidad cuyo TipoMensaje es ConfirmacionRecibo, para lo cual: 2.7.1- Asigna un identificador único al atributo IdMensaje del encabezado. 2.7.2- Agrega la Estampilla de Tiempo de Recepción (generada conforme al numeral 2.6 anterior) al elemento EstampaEnvio del Punto de Ruteo (elemento PuntoRuta del encabezado). 2.7.3- Establece como tipo de Mensaje, ConfirmacionRecibo (en el atributo TipoMensaje del encabezado). 2.7.4- Efectúa el Firmado Electrónico del Mensaje. 2.7.5- Envía el Mensaje a la Instancia remitente (Instancia A). Paso 3 - Al recibir el MensajeInteroperabilidad cuyo TipoMensaje es AcuseRecibo, la Instancia remitente: 3.1.- Valida la estructura del Mensaje. 3.2.- Valida que el Certificado Digital del remitente esté vigente y no revocado. 3.3.- Valida que la Firma Electrónica Avanzada del Mensaje corresponda al Certificado Digital de la OPE. 3.4.- Registra el Mensaje. Paso 4 - En paralelo al envío del MensajeInteroperabilidad cuyo TipoMensaje es AcuseRecibo a la Instancia remitente del Paso 2, la OPE (ver flujo alterno 1 de este apartado): Documento Técnico para la Interoperabilidad de los SACG 30 4.1.- Obtiene el Mensaje original. 4.2.- Determina el end-point de la Instancia destino (Instancia B) tomando en cuenta lo previsto en la tabla de Relaciones de Interoperabilidad. 4.3.- Genera una estampa de tiempo de envío (de tipo EstampillaDeTiempo). 4.4.- Agrega la estampa de tiempo de envío al elemento EstampaEnvio del Punto de Ruteo (elemento PuntoRuta del encabezado). 4.5.- Establece el tipo del Mensaje en base a la acción enviada por la Instancia remitente (atributo TipoMensaje del encabezado). 4.6.- Efectúa el Firmado Electrónico del Mensaje. 4.7.- Envía el Mensaje a la Instancia destino (ver flujo alterno 2 de este apartado). Paso 5 - La Instancia destino: 5.1.- Valida la estructura del Mensaje (ver flujo de excepción 1 del Protocolo InstanciaOPE). 5.2.- Valida que el Certificado Digital del remitente esté vigente y no revocado (ver flujos de excepción 2 y 3 del Protocolo Instancia-OPE). 5.3.- Valida que la Firma Electrónica Avanzada del Mensaje corresponda al Certificado Digital del destinatario registrado (ver flujo de excepción 4 del Protocolo InstanciaOPE). 5.4.- Genera un MensajeInteroperabilidad cuyo TipoMensaje es AcuseRecibo, para lo cual: 5.4.1.- Asigna un identificador único al atributo IdMensaje del encabezado. 5.4.2.- Agrega la fecha de envío en el elemento FechaEnvio (de tipo DateTime) del encabezado. 5.4.3.- Establece como tipo de Mensaje, MensajeInteroperabilidad cuyo TipoMensaje es AcuseRecibo (en el atributo TipoMensaje del encabezado). 5.4.4.- Efectúa el Firmado Electrónico del Mensaje. 5.4.5.- Envía el Mensaje a la Instancia remitente a través de la OPE. Paso 6 - Al recibir el MensajeInteroperabilidad cuyo TipoMensaje es ConfirmacionRecibo de la Instancia destino, la OPE: 6.1.- Valida la estructura del Mensaje (ver flujo de excepción 1 del Protocolo InstanciaOPE). Documento Técnico para la Interoperabilidad de los SACG 31 6.2.- Valida que el Certificado Digital del remitente esté vigente y no revocado (ver flujos de excepción 2 y 3 del Protocolo Instancia-OPE). 6.3.- Valida que la Firma Electrónica Avanzada del Mensaje corresponda al Certificado Digital del destinatario registrado (ver flujo de excepción 4 del Protocolo InstanciaOPE). 6.4.- Agrega el punto de ruteo al encabezado del Mensaje, que acredita que el Mensaje paso por la OPE. 6.5.- Genera una estampa de tiempo de recepción (de tipo EstampillaDeTiempo). 6.6.- Inserta la estampa de tiempo de recepción en el elemento EstampaRecibido del Punto de Ruteo (elemento PuntoRuta del encabezado). 6.7.- Registra el Mensaje. Paso 7 - La OPE: 7.1.- Obtiene el Mensaje recibido en el Paso 6 (ConfirmacionRecibo). 7.1.1.- Determina el end-point de la Instancia destino (remitente original) tomando en cuenta lo previsto en la tabla de Relaciones de Interoperabilidad. 7.1.2.- Genera una estampa de tiempo de envío (de tipo EstampillaDeTiempo). 7.1.3.- Inserta la estampa de tiempo de envío en el elemento EstampaEnvio del Punto de Ruteo (elemento PuntoRuta del encabezado). 7.1.4.- Establece el tipo del Mensaje en base a la acción enviada por la Instancia remitente (atributo TipoMensaje del encabezado). 7.1.5.- Efectúa el Firmado Electrónico del Mensaje. 7.1.6.- Envía el Mensaje a la Instancia destino, es decir al remitente original (ver flujo alterno 2 de este apartado). Paso 8 - La Instancia destino (el remitente original): 8.1.- Valida la estructura del Mensaje (ver flujo de excepción 1 del Protocolo InstanciaOPE). 8.2.- Valida que el Certificado Digital del remitente esté vigente y no revocado (ver flujos de excepción 2 y 3 del Protocolo Instancia-OPE). 8.3.- Valida que la Firma Electrónica Avanzada del Mensaje corresponda al Certificado Digital del destinatario registrado (ver flujo de excepción 4 del Protocolo InstanciaOPE). Documento Técnico para la Interoperabilidad de los SACG 32 8.4.- Genera una estampa de tiempo de recepción (de tipo EstampillaDeTiempo). 8.5.- Genera un MensajeInteroperabilidad cuyo TipoMensaje es AcuseRecibo, para lo cual: 8.5.1.- Asigna un identificador único al atributo IdMensaje del encabezado. 8.5.2.- Agrega la fecha de envío en el elemento FechaEnvio (de tipo DateTime) del encabezado. 8.5.3.- Establece como Mensaje, cuyo TipoMensaje es ConfirmacionRecibo (en el atributo TipoMensaje del encabezado). 8.5.4.- Efectúa el Firmado Electrónico del Mensaje. 8.5.5.- Envía el Mensaje a la OPE. Paso 9 - Al recibir el MensajeInteroperabilidad cuyo TipoMensaje es ConfirmacionRecibo, la OPE: 9.1.- Valida la estructura del Mensaje. 9.2.- Valida que el Certificado Digital del remitente esté vigente y no revocado. 9.3.- Valida que la Firma Electrónica Avanzada del Mensaje corresponda al Certificado Digital del destinatario registrado. 9.4.- Registra el Mensaje. Flujos Alternos En los Pasos 2, 5, 6 y 8 aplican los flujos de excepción 1 a 4 del Protocolo Instancia-OPE. 1. Mensaje dirigido a varias Instancias. 1.- Para cada Instancia a la cual va dirigido el Mensaje se ejecutan los Pasos 4 a 9 anteriores. 2.- Termina el flujo alterno y el flujo principal. 2. La OPE no puede enviar un Mensaje a una Instancia destino. 1.- La OPE intenta reenviar el Mensaje, como máximo 6 veces a intervalos de tiempo de una hora. 1.1.- 2.- Si el Mensaje es enviado exitosamente termina el ciclo. Si la OPE no pudo enviar el Mensaje, genera un Mensaje de rechazo y lo envía a la Instancia remitente, para lo cual: Documento Técnico para la Interoperabilidad de los SACG 33 2.1.- Genera un nuevo Mensaje. 2.2.- Establece como tipo de Mensaje, MensajeRechazado (en el atributo TipoMensaje del encabezado). 2.3.- Establece el valor DestinoInaccesible en el atributo CodigoError del elemento Rechazo del cuerpo del Mensaje. 2.4.- Envía el Mensaje a la Instancia emisora. 3 - Termina flujo alterno. 9. REFERENCIAS REFERENCIAS A ESTÁNDARES ESTÁNDAR REFERENCIA W3C XML homepage http://www.w3.org/XML/ XML 1.0 Specification http://www.w3.org/TR/REC-xml/ XSD 1.0 Primer http://www.w3.org/TR/xmlschema-0/ Tools http://www.w3.org/XML/Schema#Tools XSD 1.1 Structures http://www.w3.org/TR/xmlschema11-1/ XSD 1.1 Datatypes http://www.w3.org/TR/xmlschema11-2/ WSDL 2.0 Specification Part 0: Primer (Latest Version) http://www.w3.org/TR/wsdl20-primer/ WSDL 2.0 Specification Part 1: Core (Latest Version) http://www.w3.org/TR/wsdl20/ WSDL 2.0 Specification Part 2: Adjuncts (Latest Version) http://www.w3.org/TR/wsdl20-adjuncts/ Web Services Description Working Group http://www.w3.org/2002/ws/desc/ Profiles de OASIS Web Services Security SAML Token Profile v 1.0 and REL Token Profile v1.0 http://www.oasisopen.org/specs/#wssprofilesv1.0 WS Security 1.1 (WSS) Web Services Security v1.1 http://www.oasis-open.org/specs/#wssv1.1 TLS The IETF (Internet Engineering Task Force) TLS Workgroup http://datatracker.ietf.org/wg/tls/charter/ RFC 4346 http://tools.ietf.org/html/rfc4346 XML XSD WSDL Documento Técnico para la Interoperabilidad de los SACG 34 ESTÁNDAR RFC 2246 REFERENCIA http://tools.ietf.org/html/rfc2246 http://www.mozilla.org/projects/security/pki/nss/ ssl/draft302.txt SSL Time stamp Protocol (TSP) IETF RFC 3161 http://tools.ietf.org/html/rfc3161 10. ANEXOS Anexo 1. Definición de Datos y Catálogos. Disponible en la dirección electrónica: www.normateca.gob.mx. Anexo 2. Esquemas de Mensajes XSD. Disponible en la dirección electrónica: www.normateca.gob.mx. Documento Técnico para la Interoperabilidad de los SACG 35