1

一連のサブノードを持つ xml ファイルを読み込もうとしています。(セット内の) サブノードの 1 つの値に基づいて、その特定の出力を太字にしたいと考えています。

xml の例を次に示します。

<documentationOf>
  <event>
    <effectiveTime>
      <low value="9/4/2013" />
    </effectiveTime>
  </event>
</documentationOf>
<entry>
  <substanceAdministration>
    <text>
      <reference value="">
      </reference>
    </text>
    <effectiveTime>
      <low value="5/13/2013 12:00:00 AM" />
      <high value="UNK" />
    </effectiveTime>
    <consumable>
      <manufacturedProduct>
        <manufactueredMaterial>
          <code code="" displayName="Product 1">
          </code>
        </manufacturedMaterial>
      </manufacturedProduct>
    </consumable>
  </substanceAdministration>
</entry>
<entry>
  <substanceAdministration>
    <text>
      <reference value="">
      </reference>
    </text>
    <effectiveTime>
      <low value="9/4/2013 12:00:00 AM" />
      <high value="UNK" />
    </effectiveTime>
    <consumable>
      <manufacturedProduct>
        <manufactueredMaterial>
          <code code="" displayName="Product 2">
          </code>
        </manufacturedMaterial>
      </manufacturedProduct>
    </consumable>
  </substanceAdministration>
</entry>
<entry>
  <substanceAdministration>
    <text>
      <reference value="">
      </reference>
    </text>
    <effectiveTime>
      <low value="5/13/2013 12:00:00 AM" />
      <high value="UNK" />
    </effectiveTime>
    <consumable>
      <manufacturedProduct>
        <manufactueredMaterial>
          <code code="" displayName="Product 3">
          </code>
        </manufacturedMaterial>
      </manufacturedProduct>
    </consumable>
  </substanceAdministration>
</entry>

code/@displayName を表示したい (for-each を実行してそれを機能させることができます) が、effectiveTime/low/@value が今日の日付である場合 (documentationOf/event/effectivetime/low/@ にあります)値)、太字にしたい:

Product 1
<b>Product 2</b>
Product 3

これは、このために切り取られた XSL です。

<xsl:for-each select="entry">
  <xsl:value-of select="substanceAdministration/consumable/manufacturedProduct/manufacturedMaterial/code/@displayName" />
  <br />
</xsl:for-each>

おそらく独自のテンプレートを使用してこれを行う必要があることはわかっていますが、xsl msyelf を作成していないため、時間の都合上、そこにあるもので間に合わせています。ただし、テンプレートと並行して(正しい方法で)やり直そうとしていますが、出力でエントリを太字にするためにその effectiveTime/low/@value をチェックする最良の方法を知る必要があります。

助けてくれてありがとう。

4

2 に答える 2