Convertidor de YAML a XML
Pega YAML o sube un archivo .yml y obtén XML limpio y bien formado. Elige el elemento raíz, cómo se escriben las listas y qué claves se convierten en atributos; los errores de YAML se muestran con su línea y columna exactas.
Última actualización:
Cómo usar Convertidor de YAML a XML
- Pega tu YAML en el recuadro izquierdo, sube un archivo .yaml/.yml o haz clic en Ejemplo.
- Define el nombre del elemento raíz, o marca la opción para usar una única clave de nivel superior como raíz.
- Elige cómo se ven las listas: elementos repetidos o envueltos en una etiqueta de elemento como <item>.
- Usa atributos empezando una clave con el prefijo; por ejemplo, @id: 7 se convierte en id="7".
- Copia o descarga el XML. Corrige primero cualquier error de YAML que se muestre con su número de línea.
Reglas de conversión de YAML a XML
| YAML | XML |
|---|---|
name: Ann | <name>Ann</name> |
user: {age: 30} | <user><age>30</age></user> |
tags: [a, b] (repetir) | <tags>a</tags><tags>b</tags> |
tags: [a, b] (envolver) | <tags><item>a</item><item>b</item></tags> |
book: {"@id": 7, title: X} | <book id="7"><title>X</title></book> |
price: {"@cur": EUR, "#text": 9.5} | <price cur="EUR">9.5</price> |
manager: ~ o null | <manager/> |
opened: 2019-04-01 | <opened>2019-04-01</opened> |
2024: yes, first name: Ann | <_2024>yes</_2024>, <first_name>Ann</first_name> |
XML no tiene tipos de datos, así que los números, booleanos y fechas se escriben en forma de texto. Como @ es un indicador reservado en YAML, las claves que deben ser atributos tienen que ir entre comillas: "@id": 7. Los comentarios del YAML no forman parte del modelo de datos y no se trasladan.
¿Por qué XML necesita un elemento raíz?
Un documento XML bien formado tiene exactamente un elemento de nivel superior que contiene todo lo demás. YAML no tiene esa regla, así que el convertidor envuelve tus datos en el elemento raíz que elijas (root por defecto). Si tu YAML ya tiene una única clave de nivel superior, como config:, marca "Usar la clave única de nivel superior como raíz" para usarla directamente en lugar de anidarla dentro de <root>.
Errores comunes de YAML
- Tabulaciones para indentar: YAML solo permite espacios. Al pulsar Tab en el recuadro de entrada se insertan dos espacios.
- Indentación inconsistente: todas las claves del mismo nivel deben empezar en la misma columna.
- Caracteres especiales sin comillas: los valores que empiezan con
@,`,*,&,!,%o que contienen:deben ir entre comillas. - Claves duplicadas en el mismo mapeo se rechazan, porque la segunda sobrescribiría la primera sin avisar.
Preguntas frecuentes
¿Cómo se asigna YAML a XML?
Cada clave de un mapeo se convierte en un elemento y su valor en el contenido del elemento, así que name: Ann se convierte en <name>Ann</name>. Los mapeos anidados se convierten en elementos anidados, y todo se envuelve en un único elemento raíz porque un documento XML debe tener exactamente una raíz.
¿Cómo se convierten las listas de YAML?
Por defecto, cada elemento de la lista repite el elemento padre: tags: [a, b] se convierte en <tags>a</tags><tags>b</tags>, que es la convención XML más común. Con el estilo envuelto obtienes <tags><item>a</item><item>b</item></tags>, usando el nombre de etiqueta que elijas.
¿Cómo creo atributos XML desde YAML?
Empieza la clave con el prefijo de atributo, @ por defecto. Por ejemplo, user: {'@id': 7, name: Ann} produce <user id="7"><name>Ann</name></user>. Una clave #text define el texto del elemento junto con sus atributos. Pon entre comillas las claves que empiezan con @ en YAML, porque @ es un carácter reservado.
¿Qué pasa con las claves que no son nombres de elemento XML válidos?
Los nombres XML no pueden empezar con un dígito ni contener espacios ni la mayoría de los signos de puntuación. Esas claves se ajustan automáticamente; por ejemplo, 2024 se convierte en _2024 y first name en first_name, y la línea de estado te indica cuántas se renombraron.
¿Admite anclas, alias y varios documentos?
Sí. El YAML se analiza con js-yaml, así que se resuelven &anclas, *alias, claves de fusión <<:, escalares de bloque (| y >) y documentos separados por ---. Los documentos múltiples se escriben como elementos <document> separados dentro de la raíz.
¿Se sube mi YAML?
No. El análisis y la conversión se ejecutan totalmente en tu navegador; tus archivos de configuración nunca salen de tu dispositivo.
¿Se prueban todas las herramientas de FreeToolCabin para comprobar su calidad y precisión?
Sí. Cada herramienta del sitio pasa pruebas automáticas en navegadores reales para comprobar que el resultado es correcto y que no hay errores. Si encuentras un fallo o tienes una sugerencia, escríbenos a [email protected] y lo revisaremos.
Herramientas relacionadas
Ver todas las de Conversores de datos y formatos de archivo →