CICS 区域标记文件
本主题介绍 CICS® 区域标记文件的模式和匹配算法。
有关区域标记的概述,请参阅 使用区域标记对 CICS 区域进行分类。
模式
区域标记文件根据 YAML 1.2 标准进行格式化。 YAML 文件必须符合特定格式以确保正确处理。
为了帮助您正确格式化区域标记 YAML 文件, CICS 在 JSON 模式存储库中提供了 JSON 模式。 一些支持模式(schema)的编辑器,例如 Visual Studio Code PyCharm, 和 IntelliJ IDEA ,可以直接从该网站下载模式。
或者,您可以手动将模式应用于相关文件。 该模式也随 CICS 作为 cicstags-1.0.0.json 提供,位于 USSHOME/schemas。 此模式可以在支持模式验证的适当代码编辑器或集成开发环境 (IDE) 中使用; 例如, Microsoft Visual Studio Code。 发生更新时,模式号会递增,这可帮助您确定何时在所选 IDE 中刷新模式文件。
有经验的用户可能希望扩展模式验证,以涵盖如何设置 APPLID 或区域用户标识以匹配您的命名约定。 您可能还希望扩展模式以验证 YAML 文件中的定制标签。 仅建议有经验的用户以这种方式扩展模式。
区域标记的匹配算法
CICS 支持在标记的过滤条件中使用通配符 * 和 ? 来标识匹配的区域: APPLID, RegionUserID和 JobName。
通配符匹配可传递最佳匹配结果。 如果找到 * 通配符,那么会将其视为字符串的结尾。 没有 * 的字符串的长度 L 被视为 8。 具有 * 的字符串的长度是 *之前的字符数。 此计数包括可能还存在的任何 ? 通配符。 如果 Q 是存在的 ? 通配符数,而 A 是存在的 * 通配符数,那么将使用以下算法计算模式匹配值:
此算法对指定字符的重要性高于对任何通配符的重要性。 指定的实际字符越多,计算值越高。 计算的值在范围 17-1 中。 如果没有任何字符匹配,那么将返回零。
该表显示了具有各种长度和通配符的 APPLID 或区域用户标识的示例以及生成的值。 它还显示从计算值开始的列组顺序。 完全指定的名称排名高于具有一个或多个通配符的任何值。
| 姓名 | A ( *的数量) |
Q ( ?的数量) |
L (长度) | 值 | 排名顺序 |
|---|---|---|---|---|---|
| ABCDEFG | 0 | 0 | 8 | 17 日 | 1 |
| ABCDEFGH | 0 | 0 | 8 | 17 日 | 1 |
| AB?DEFG | 0 | 1 | 8 | 16 | 2 |
| AB?DEFGH | 0 | 1 | 8 | 16 | 2 |
| AB?D?FG | 0 | 2 | 8 | 15 | 3 |
| AB?D?切割女性生殖器 | 0 | 2 | 8 | 15 | 3 |
| ABCDEF* | 1 | 0 | 6 | 7 | 4 |
| AB?DEF* | 1 | 1 | 6 | 6 | 5 |
| AB?D?F* | 1 | 2 | 6 | 5 | 6 |
| * | 1 | 0 | 2 | 3 | 7 |
| * | 1 | 0 | 0 | 1 | 7 |