DSPL 检查是一种用于验证 DSPL 数据集的实用程序 包括遵循官方 DSPL 架构、 内部引用的一致性和 CSV 文件结构。该实用程序可以 捕获了许多会导致 DSPL 导入错误的问题,从而帮助您检测 并在开始输入过程之前迅速解决这些问题。
请注意,该实用程序不会(尚未)检查您的 DSPL 数据集, 各种可能的问题。不过,它可以捕获 如果该工具成功验证您的数据集, 在公开数据中将其导入并可视化 。请参阅检查详情部分 。
运行 DSPL 检查
基础知识
注意:以下说明假定您已经 已经完成了安装 DSPL 工具页面上的说明。
如需运行 DSPL 检查,请前往系统上的终端 / 提示符,然后 类型:
python dsplcheck.py [path to dataset XML or zip file]
括号中的字词会替换为指向任意 数据集 XML 文件或压缩的 DSPL 软件包。
如果数据集有效,该工具会输出“验证” 成功”消息。否则,它会输出一条或多条错误消息 说明验证失败的原因。如果发生了后一种情况,请解决 按照说明设置您的数据集,然后再次运行该工具。
检查等级
默认情况下,DSPL 检查将检查整个数据集,包括 CSV 从主 DSPL XML 文件中引用。这个过程适合 但可能会停滞或耗尽内存 大型语言模型(即数百 MB 或 更大的文件)。
为解决这些情况,该工具提供了检查级别
通过此选项,您可以设置检查范围
性能如要使用,请插入 --checking_level=[...]
括号中的字词会替换为
以下值:
schema_only
:根据 官方 DSPL 架构,然后再停止。schema_and_model
:执行架构和基本模型验证,但 忽略标题行后面的 CSV 内容。full
:执行架构、模型和数据验证(默认)。
正在检查详细信息
DSPL 检查会执行以下验证序列:
- XML 架构验证:验证数据集 是有效的 XML 文件,且符合 官方 DSPL 架构。
- CSV 存在性:检查所有 CSV 文件 从您的数据集中引用的条目存在并且可加载。
-
概念检查:针对项目中的每个概念进行各种检查
数据集包括:
<ph type="x-smartling-placeholder">
- </ph>
- 数据集至少有一个概念*
- 所有主题引用均有效
- 如果将概念用作非时间,则存在表引用 维度*
- 表引用有效(如果存在)
- 引用的表格有一列与概念 ID 相对应
-
切片检查:对您网站中每个切片进行的各种检查
数据集包括:
<ph type="x-smartling-placeholder">
- </ph>
- 数据集至少有一个切片*
- 至少有一个切片引用非时间维度*
- 切片至少包含一个指标和一个维度
- 恰好 1 个维度引用
time
规范概念* - 每个切片都有唯一的维度组合
- 对本地概念的所有引用均有效
- 表引用已存在
- 表引用有效
- 在引用的表格中,每个维度和指标都有一列 切片中
- 引用表中的列类型与 切片中使用的概念
-
表检查:对表格中的每个表进行各种检查
数据集包括:
<ph type="x-smartling-placeholder">
- </ph>
- 数据集至少有一个表*
- CSV 文件的列数与表相同
- CSV 标题字符串与列 ID 匹配
- 所有日期列都具有
format
属性 - 日期格式与相关的时间概念大致匹配,
例如,
time:year
列的格式至少包括 一个y
字符*
-
CSV 数据检查:对 CSV 数据文件进行的各种检查
数据集 XML 文件引用,其中包括:
<ph type="x-smartling-placeholder">
- </ph>
- 每个 CSV 行的列数与其标题相同
- 概念定义 CSV 文件每行最多包含一行 概念 ID
- 对于 Slice CSV 的每种组合, 尺寸
- 切片 CSV 中引用的维度值有效
- 对切片 CSV 进行了正确排序
- 整数和浮点 CSV 值的格式正确
必须 但从技术角度而言,这并不是 DSPL 格式。
另一方面,该工具(尚未)检查以下内容:
- 数据集导入
- 属性和属性参考
- 概念扩展