什么是YAML / XML 互转?
YAML 与 XML 互转通过现有受限数据模型连接两种常见配置格式。YAML 侧拒绝自定义标签、合并键、重复键和过量别名,XML 侧拒绝 DTD 与 ENTITY;属性放在 @attributes,文本放在 #text,同名元素使用数组,使简单结构的映射清楚且可测试。常见使用场景包括:把 YAML 配置转换为旧系统需要的 XML。;把 XML 请求示例转换为较易编辑的 YAML。;检查属性、文本和重复元素的映射规则。页面同时列出输入边界、输出规则和限制,便于在复制结果或投入实际流程前核对格式、语义与安全注意事项。
适用场景
- 把 YAML 配置转换为旧系统需要的 XML。
- 把 XML 请求示例转换为较易编辑的 YAML。
- 检查属性、文本和重复元素的映射规则。
使用方法
- 确认 YAML 根结构对应一个 XML 根键。
- 使用 @attributes 和 #text 表示属性与文本。
- 执行并阅读有损转换警告。
- 对命名空间和混合内容人工复核。
- 先使用页面提供的复杂示例验证当前选项和运行方向,再替换为自己的数据。
- 检查输出区、状态提示和限制说明,确认结果符合预期后再复制、下载或继续处理。
可运行示例
工作区中的“示例 1”和“示例 2”按钮会载入对应内容。两个示例覆盖不同结构、方向或边界,可以直接运行并观察输出与状态提示。
示例 1
catalog:
"@attributes":
lang: zh-CN
tool:
- "@attributes": { id: 31 }
"#text": TOML 转换
- "@attributes": { id: 40 }
"#text": YAML CSV 转换示例 2
<release version="1.5"><tools><tool id="31">TOML Converter</tool><tool id="40">YAML CSV Converter</tool></tools><ready>true</ready></release>输入规则
- YAML 转 XML 需要唯一根键。
- 属性与文本必须使用 @attributes 和 #text。
- 自定义标签、外部实体和复杂混合内容不受支持。
- 文本输入在运行前按字符计数,当前页面上限为 1,000,000;文件类功能另按页面显示的文件上限执行。
- YAML 转 XML 要求一个根键。
输出规则
- 重复 XML 元素映射为 YAML 数组。
- YAML 注释、锚点和 XML 指令不会保留。
- 命名空间与混合内容必须人工复核。
- 输出只反映当前输入、方向和选项;切换模式或修改输入后应重新运行,不应把旧结果当成新结果。
- 复杂混合内容、注释和命名空间不能无损往返。
限制与注意事项
- YAML 转 XML 要求一个根键。
- 复杂混合内容、注释和命名空间不能无损往返。
- 拒绝 YAML 自定义标签和 XML 实体声明。
数据处理说明
YAML 和 XML 解析器都在当前浏览器内运行,不加载远程引用、外部实体或服务器资源。关闭或刷新页面后,本工具不会保留本次数据。