0
私は、XMLからデータを取得しようとしている問題を取得しています、私はこの1つだ:カテゴリごとにフィルタ結果 - XSL
<?xml version="1.0" encoding="UTF-8"?>
<base>
<!-- OFFERS -->
<offers>
<offer status="1">Sale</offer>
<offer status="2">Rent</offer>
</offers>
<!--CATEGORIES-->
<categories>
<category cat="A">Category 1</category>
<category cat="B">Category 2</category>
<category cat="C">Category 3</category>
</categories>
<!--OBJECTS-->
<objects>
<object id="1" offer="1">
<name>Object 1</name>
<category cat="A"/>
<price>12</price>
</object>
<object id="2" offer="2">
<name>Object 1</name>
<category cat="B"/>
<price>1000</price>
</object>
<object id="3" offer="2">
<name>Object 1</name>
<category cat="A"/>
<price>10</price>
</object>
</objects>
<object id="4" offer="1">
<name>Object 1</name>
<category cat="C"/>
<price>60</price>
</object>
<object id="5" offer="2">
<name>Object 1</name>
<category cat="A"/>
<price>30</price>
</object>
</base>
を、私は算術平均を知っておく必要があります家賃(//申し出/オファー)である価格
マイXSLの:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html>
<body>
<table border="1">
<tr bgcolor="#9acd32">
<th>Category</th>
<th>AM</th>
</tr>
<xsl:for-each select="//categories/category">
<xsl:variable name="cat" select="@cat"/>
<xsl:variable name="object" select="//object[category/@cat=$cat]"/>
<xsl:variable name="qtobj" select="count($obj)"/>
<tr>
<td><xsl:value-of select="." /></td>
<td><xsl:value-of select="$object/price div $qtobj"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
私の主な問題は、私は家賃のためのオブジェクトのみをフィルタリングする方法がわからないということです。
私は他のものも忘れていました。キーを使用することはまだ難しいですが、私はもう少し学び、練習を続けなければなりません、ありがとう –