# Reglas Generales de XML

### Reglas Generales <a href="#general-rule" id="general-rule"></a>

Aquí están las reglas generales para cargar con éxito los datos de certificación a través de un archivo XML:

<table data-header-hidden><thead><tr><th width="222"></th><th></th></tr></thead><tbody><tr><td><strong>Formato de Archivo</strong></td><td>El formato del archivo debe ser <code>.xml</code></td></tr><tr><td><strong>Tamaño de Archivo</strong></td><td>El tamaño máximo del archivo XML es de 50MB. Si tu archivo XML es mayor de 50MB, deberás dividirlo y cargar varios archivos, cada uno de los cuales debe ser inferior a 50MB.</td></tr><tr><td><strong>Nombre del Archivo</strong></td><td>IAF CertSearch recomienda que nombres tus archivos usando los siguientes formatos: Individual: <code>cb_certs.xml</code> Archivos múltiples: <code>cb_certs_1.xml</code>, <code>cb_certs_2.xml</code>, <code>cb_certs_3.xml</code></td></tr><tr><td><strong>Etiqueta XML</strong></td><td>Las etiquetas XML deben ser las mismas que en la plantilla. Si se cambian, IAF CertSearch no reconocerá los datos del campo y no serán cargados<strong>.</strong></td></tr><tr><td><strong>Secuencia de Etiquetas XML</strong></td><td>Las etiquetas deben estar en orden y ser las mismas que en la plantilla. Si se cambian, IAF CertSearch no reconocerá las etiquetas y los datos en esas etiquetas no serán cargados.</td></tr></tbody></table>

## Entendiendo el formato del archivo XML

### Notas Importantes

1. **Los documentos XML deben contener un elemento raíz que sea el padre de todos los demás elementos:**\
   Para la carga de certificados, el elemento raíz es `<client_certs></client_certs>`\\
2. Esta línea se llama el **prologo XML**: `<?xml version="1.0" encoding="UTF-8?">`\
   El prologo XML es opcional. Si existe, debe estar primero en el documento. Los documentos XML pueden contener caracteres internacionales, como el noruego øæå o el francés êèé. Para evitar errores, debes especificar la codificación utilizada, o guardar tus archivos XML como UTF-8. UTF-8 es la codificación de caracteres predeterminada para documentos XML.\\
3. **Todos los elementos XML deben tener una etiqueta de cierre**\
   Las etiquetas XML son sensibles a mayúsculas y minúsculas. La etiqueta es diferente de la etiqueta. La etiqueta de apertura y la de cierre deben escribirse en el mismo caso:\
   \
   cualquier etiqueta que quede sin cerrar resultará en un error: **Archivo XML no válido cargado**\ <mark style="color:red;">**Incorrecto:**</mark> <mark style="color:red;">`<certification_body_identity_number>%VALUE GOES HERE`</mark>\
   \ <mark style="color:green;">**Correcto:**</mark> <mark style="color:green;">`<certification_body_identity_number>%VALUE GOES HERE</certification_body_identity_number>`</mark>\
   \\

   4. **Los Elementos XML Deben Estar Correctamente Anidados**

   En XML, todos los elementos deben estar correctamente anidados dentro de otros:\
   \ <mark style="color:red;">**Incorrecto:**</mark>\ <mark style="color:red;">`<certification_identity_number>`</mark>\ <mark style="color:red;">`<certification>`</mark>`CERT-0001`<mark style="color:red;">`</certification_identity_number>`</mark>\ <mark style="color:red;">`</certification>`</mark>\
   \ <mark style="color:green;">**Correcto:**</mark>\ <mark style="color:green;">\<certification></mark>\ <mark style="color:green;">\<certification\_identity\_number></mark>CERT-0001<mark style="color:green;">\</certification\_identity\_number>\</certification></mark>\\
4. **Las Etiquetas no Pueden Contener Espacios en Blanco**\
   **Ejemplo:** <mark style="color:red;">`<certification identity number>`</mark>\
   El sistema no reconocerá esta sintaxis y generará un error: **Archivo XML no válido cargado**\\
5. **Todos los Elementos Padres deben Estar Incluidos al Cargar un Archivo XML**\
   Si faltan los elementos padres, el sistema generará un error: **Archivo XML no válido cargado**\\
6. **Si `certification_standard_and_scheme` y sus elementos hijos están vacíos,** el sistema generará un error: **Archivo XML no válido cargado**\\
7. **Las Etiquetas Inválidas para Campos Opcionales no Generarán un Error,** pero los datos agregados dentro de la etiqueta no se mostrarán en el sistema\
   \ <mark style="color:green;">**Correcto:**</mark><mark style="color:green;">`<original_issue_date>01/20/2021</original_issue_date>`</mark>\ <mark style="color:red;">**Incorrecto (desde el archivo):**</mark> <mark style="color:red;">\<orig\_issued\_date>01/20/2021\</orig\_issued\_date></mark>\
   \
   **Datos mostrados en el sistema**\
   Fecha de Emisión Original: *(vacío)*

### Hacer y No Hacer al Formatear Datos en un Archivo XML

Cosas a tener en cuenta al ingresar tus datos en un archivo XML.

### <mark style="color:green;">**Hacer**</mark>

1. **Entrada de un solo valor de dato por etiqueta**

   Asegúrate de que solo se ingrese un solo valor de dato en cada etiqueta. Al cargar múltiples valores de datos, no incluyas más de un valor de dato en una sola etiqueta.
2. **Mantén el formato de datos consistente**

   Una discrepancia en los espacios, la capitalización y otros tipos de formato causará un error y los datos no serán coincidentes.
3. **Mantén la sintaxis similar a la proporcionada en la plantilla**

### <mark style="color:red;">**No hacer**</mark>

1. **No dejes los campos obligatorios en blanco o vacíos**
2. **No agregues múltiples datos a una sola etiqueta**
3. **No combines múltiples datos en una sola etiqueta**


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://support.iafcertsearch.org/accreditation-bodies/ab-es/data-management/import-certification/certification-file-templates/xml-general-rules.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
