Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
XSLT如何在没有ID partameter的情况下调用XML项?_Xml_Xslt - Fatal编程技术网

XSLT如何在没有ID partameter的情况下调用XML项?

XSLT如何在没有ID partameter的情况下调用XML项?,xml,xslt,Xml,Xslt,我必须按照说明使用XML数据文件和XSLT样式表创建HTML表。我应该使用包含在XML文件中的项的名称 我的数据以两种方式组织在一个XML文件中。结构如下: <Data> <FieldBook> (...) </FieldBook> <Reductions> (...) </Reductions> </Data> 及 我使用NumberOfSatellites的代码从XML树(FieldBook)的一部分获

我必须按照说明使用XML数据文件和XSLT样式表创建HTML表。我应该使用包含在XML文件中的项的名称

我的数据以两种方式组织在一个XML文件中。结构如下:

<Data>
   <FieldBook> (...) </FieldBook>
   <Reductions>  (...) </Reductions>
</Data>

我使用NumberOfSatellites的代码从XML树(FieldBook)的一部分获取必要的数据,但我不知道如何获取数据,例如,对于第二个字段,从以下项目:

<xsl:template match="PointRecord">
  <xsl:for-each select="/Data/FieldBook/PointRecord[Deleted!='true']"></xsl:for-each>
    <xsl:if test="ECEFDeltas/DeltaX/text()">
      <tr>
        (...)
        <td>
          <xsl:call-template name="my-out">
            <xsl:with-param name="Val" select="QualityControl1/NumberOfSatellites"/>
          </xsl:call-template>
        </td>
          (...)
        <td>
          <xsl:call-template name="my-format">
            <xsl:with-param name="Val" select=" >>> data from <Reductions item> <<<"/>
            <xsl:with-param name="format" select="$DecPl2"/>
          </xsl:call-template>
        </td>

      </tr>
    </xsl:if>

(...)
(...)
  • 我如何使用FieldBook中PointRecord的ID参数从减少中调用例如Point/Grid/North项值

  • 如何从FieldBook调用PointRecord item(点记录项),并使用减少的点/ID项值


  • 我想你想用一把钥匙;申报

    <xsl:key name="red-ref" match="Reductions/Point" use="ID"/>
    
    
    
    作为顶级元素(即
    xsl:stylesheet
    xsl:transform
    的子元素)。然后,在任何上下文中,您都可以处理
    点记录
    元素,您可以使用
    键('red-ref',@ID)
    查找引用的
    ,即
    键('red-ref',@ID)/Grid/North
    将为您提供该元素

    <xsl:template match="PointRecord">
      <xsl:for-each select="/Data/FieldBook/PointRecord[Deleted!='true']"></xsl:for-each>
        <xsl:if test="ECEFDeltas/DeltaX/text()">
          <tr>
            (...)
            <td>
              <xsl:call-template name="my-out">
                <xsl:with-param name="Val" select="QualityControl1/NumberOfSatellites"/>
              </xsl:call-template>
            </td>
              (...)
            <td>
              <xsl:call-template name="my-format">
                <xsl:with-param name="Val" select=" >>> data from <Reductions item> <<<"/>
                <xsl:with-param name="format" select="$DecPl2"/>
              </xsl:call-template>
            </td>
    
          </tr>
        </xsl:if>
    
    <xsl:key name="red-ref" match="Reductions/Point" use="ID"/>