Map密钥标识符YAML中允许的字符

时间:2012-01-30 14:11:38

标签: validation yaml

我目前正在与YAML合作,我想知道YAML中的某个字符是否被允许?

示例:

example: "Value"

我指的是'example'。

感谢。

2 个答案:

答案 0 :(得分:29)

根据YAML 1.2规范,建议使用可排除显式控制字符的可打印字符(see here):

在构建键名时,YAML规范中包含字符。用于表示语法或特殊含义需要避免(例如'#'表示注释,'>'表示折叠,' - '表示列表等)。

基本上,您需要使用需要使用YAML文档的任何代码(解析器/工具实现)来处理相关的编码约定(限制)。你坚持使用字母数字越多越好;根据我们的经验,下划线与我们遇到的大多数工具一起工作。

与我们合作的其他人共同转换时期字符“。”在将使用句点的命名空间语法映射到YAML时,使用下划线字符“_”。有些人已经成功地使用了连字符,但我们已经看到它在某些实现中被误解了。

答案 1 :(得分:9)

任何字符(如果由单引号'example'或双引号“示例”正确引用)。请注意,密钥不必是标量('示例')。它可以是列表或地图。