HTMLに変換したいXMLがあるとします。 XMLは順序付きセクションに分割されています。XSLT 1.0を使用して、いくつかの基準に基づいてXML要素をバケットにグループ化します。
<?xml version="1.0" encoding="utf-8"?>
<root>
<section attr="someCriteria">
<h1>Title 1</h1>
<p>paragraph 1-1</p>
<p>paragraph 1-2</p>
</section>
<section attr="someOtherCriteria">
<h3>Subtitle 2</h3>
<ul>
<li>list item 2-1</li>
<li>list item 2-2</li>
<li>list item 2-3</li>
<li>list item 2-4</li>
</ul>
</section>
<section attr="anotherSetOfCriteria">
<warning>
Warning: This product could kill you
</warning>
</section>
<section attr="evenMoreCriteria">
<disclaimer>
You were warned
</disclaimer>
</section>
<section attr="criteriaSupreme">
<p>Copyright 1999-2011</p>
</section>
</root>
これらのXML文書はいくつかあります。 基準に基づいてこれらのセクションをグループ化して変換する必要があります。 2種類のバケツがあります。 第二節では、基準を満たしている場合
- だから、最初のセクションでは、それは もこのバケットに行こう「FormatOne」バケツの資格 に バケツに(例えば
<div class="FormatOne"></div>
) - を行く 3番目のセクションは異なる バケット(例えば
- は 内容は、このバケットに配置されている
- 4番目のセクションのためのバケットが、新しい バケットが再び作成された「FormatOne」(以前の形式よりも異なっている)とセクション 内容を必要とする場合は、各セクションがに行くと、このバケット
- などに配置されています前のセクションと同じバケット。同じフォーマットの場合そうでない場合は、新しいバケットが作成されます。
<div class="FormatTwo"></div>
)、新しい バケットが作成され、セクションを必要とする場合
だから、文書ごとに、バケットを分離するためのロジックに応じて、文書には、このように終わる可能性があります
<body>
<div class="FormatOne">
<h1>Title 1</h1>
<p>paragraph 1-1</p>
<p>paragraph 1-2</p>
<h3>Subtitle 2</h3>
<ul>
<li>list item 2-1</li>
<li>list item 2-2</li>
<li>list item 2-3</li>
<li>list item 2-4</li>
</ul>
</div>
<div class="FormatTwo">
<span class="warningText">
Warning: This product could kill you
</span>
</div>
<div class="FormatOne">
<span class="disclaimerText"> You were warned</span>
<p class="copyright">Copyright 1999-2011</p>
</div>
</body>
この:
<body>
<div class="FormatOne">
<h1>Title 1</h1>
<p>paragraph 1-1</p>
<p>paragraph 1-2</p>
<h3>Subtitle 2</h3>
</div>
<div class="FormatTwo">
<ul>
<li>list item 2-1</li>
<li>list item 2-2</li>
<li>list item 2-3</li>
<li>list item 2-4</li>
</ul>
</div>
<div class="FormatOne">
<span class="warningText">
Warning: This product could kill you
</span>
<span class="disclaimerText"> You were warned</span>
<p class="copyright">Copyright 1999-2011</p>
</div>
</body>
かさえ、この:
を<body>
<div class="FormatOne">
<h1>Title 1</h1>
<p>paragraph 1-1</p>
<p>paragraph 1-2</p>
<h3>Subtitle 2</h3>
<ul>
<li>list item 2-1</li>
<li>list item 2-2</li>
<li>list item 2-3</li>
<li>list item 2-4</li>
</ul>
<span class="warningText">
Warning: This product could kill you
</span>
<span class="disclaimerText"> You were warned</span>
<p class="copyright">Copyright 1999-2011</p>
</div>
</body>
セクションの定義方法によって異なります。
このタイプのグループ化マジックを実行するためにXSLTを使用する方法はありますか?
助けがあれば助かります。 ありがとう!
これは素晴らしいです!ありがとう! – RPNinja