You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在XSLT 1.0中通过双向分组补全缺失节点?

稀疏行数据补全为完整网格的XSLT需求

我长期面临将稀疏行数据表条目转换为连贯网格结构的问题:此前因需将DOM转换为DDL用于后续SQL访问,所以没重视行元素缺失的问题,但现在要直接转换为HTML,结构完整性至关重要,必须补全行元素的空白。

源XML数据结构

  • 根节点为<TabularDoc>
  • 按<Section>划分不同表格
  • 每个表格内的<Segment>对应一行数据
  • <Entry>的desgn属性分为三类:
    • Table:表格标识
    • Columns:定义列结构
    • RowVals:行数据内容
  • 核心问题:部分RowVals类型的<Segment>存在<Entry>缺失的情况

期望转换结果

每个RowVals类型的<Segment>都包含与Columns一一对应的<Entry>:缺失的<Entry>需保留对应属性,但内容设为空。

已尝试的方法(均未成功)

  • 基于Columns属性分组补全RowVals,无法实现双向关联
  • 识别现有RowVals,补充Columns中未包含的成员,操作失败
  • 先基于Columns生成全量<Entry>,再用现有RowVals定制内容,但写不出对应的XPath表达式

技术偏好

优先采用低版本兼容方案:

  • 首选XSLT 1.1
  • 使用XALAN处理器(该处理器支持部分XML 2.0函数,仅兼容<xsl:stylesheet>签名)

内容的提问来源于stack exchange,提问作者MKhomo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 18:42:17