跳转到主要内容
会对 Extraction Rules 活动进行编译,以检查用于指定图像对象搜索条件的元素属性是否有效。

编译检查

将检查以下内容:
  1. 元素属性。 用于指定对象参数和搜索区域的元素属性应仅链接到位于所搜索元素之上的 Search Elements 树中的元素。否则,程序会标出无效元素。
  2. field 属性。 field 属性不应包含指向被排除元素或不存在元素的链接。
  3. 在 FlexiLayout language 中的正则表达式:
    • 代码不应包含任何语法错误。
    • Search Conditions 部分中指定的附加条件应仅引用位于所搜索元素之上的 Search Elements 树中描述的元素。在 Hypotheses Evaluation 部分中指定的附加条件应仅引用所搜索的元素以及在 Search Elements 树中位于其之上的元素。
    • 代码中使用的所有全局常量都应已定义。
    • 代码中使用的所有变量都应已定义并完成初始化。
    • 代码本身应仅调用该代码相应部分中可用的实体。
    • 同一类型的元素不应被赋予另一类型元素的属性(例如,Static Text 不能具有 Max width 属性)。
当你退出活动编辑器或单击 MatchTest Activity 时,会自动编译 Extraction Rules 活动。若编译检测到任何错误,则无法继续匹配。任何存在错误的搜索元素都会标记错误图标。将鼠标悬停在该图标上可查看详细的错误说明。要继续,你必须修正这些错误,确保你的活动符合上述条件。

匹配过程

匹配 是 Advanced Designer 根据各元素属性中指定的条件查找图像对象的过程。程序将沿着 Search Elements 树逐一向下,尝试定位各元素所描述的所有对象。

匹配示例

假设我们有一个组元素 A,其中包含两个简单元素 ab,以及一个组元素 B(由元素 aabb 组成)。再假设我们另外还有两个简单元素 cd。元素 Acd 处于相同的嵌套层级。在匹配 Extraction Rules 活动时,程序将按以下顺序尝试查找相应对象:abaabbcd
元素 A
    元素 a
    元素 b
    元素 B
        元素 aa
        元素 bb
元素 c
元素 d
如果程序能够定位到与所有必需元素对应的对象,匹配将会成功。若程序未能检测到任一必需对象,匹配将停止,您需要编辑该活动。

匹配命令

要对 Extraction Rules 活动执行匹配,您可以使用以下命令之一:
  • Match 将活动与所选文档进行匹配,但不会在 Activity Editor 的 Results 选项卡中显示结果。此方法可用于调试活动,以检查特定元素属性是否有效。
  • Test Activity 将活动与活动集中的每个文档进行匹配。匹配结果会显示在统计信息中,并用于将当前版本的 Extraction Rules 活动的匹配质量与其早期版本进行比较。
注意: Extraction Rules 活动的编译与匹配状态会显示在通知日志中(可通过单击右上角的铃形 icon 查看)。您可以在通知日志中单击相应通知以跳转到匹配结果。

验证活动

要快速检查“提取规则”活动是否存在错误,点击更多 icon,然后点击验证活动。“提取规则”活动将被编译,但不会执行匹配。