模式意识和流式传输

问题描述

我正在将可识别模式的样式表转换为流XSLT3。让我感到惊喜的是,似乎流和模式感知可以一起工作。例如,我可以对接地的节点(甚至模板匹配规则)进行instance of检查,并获得正确的结果。不太清楚的是如何。文档是否经过多次通过?另外,我注意到我可以在捕获的累加器上执行id()idref()操作(这是一件好事),但不清楚原因(我不复制文档节点)。>

解决方法

“ instance of”测试是临时的:它在假设节点将成为有效的前提下对其进行测试。如果结果无效,则由于验证错误是致命的,您的代码将在适当时候中止。这就是为什么try / catch onvalidation只能在整个验证事件级别上捕获错误,而不能在更细粒度的级别上进行恢复。

我不确定是否要使用id()和idref()测试,但是我怀疑这是因为捕获的累加器有效地获取了流节点的snapshot(),并且快照植根于文档中节点。大概idref()仅在引用在快照内时才起作用。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...