Я боролся в течение нескольких дней, чтобы определить, как взять XML-файл результатов игры (команды и итоговые оценки) и составить список команд, который показывает каждую команду, сколько раз они выигрывали, теряли или привязывали. Результаты также должны быть отсортированы по итоговым выигрышам, но я не могу даже вычислить хороший метод расчета выигрышей/потерь, не говоря уже о сортировке по результатам. Я знаю, что это должно включать в себя муэнтианскую группировку, и я закодировал ту часть, которая находит все отличные команды, но я тупик, куда идти оттуда. Любая помощь была бы высоко оценена.Использование группировки XSLT muenchian для расчета рейтинга спортивных команд (выигрыши/потери)?
games.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="games.xsl"?>
<Games>
<Game>
<Home>Team A</Home>
<Away>Team B</Away>
<Home_Score>20</Home_Score>
<Away_Score>15</Away_Score>
</Game>
<Game>
<Home>Team C</Home>
<Away>Team D</Away>
<Home_Score>12</Home_Score>
<Away_Score>18</Away_Score>
</Game>
<Game>
<Home>Team A</Home>
<Away>Team C</Away>
<Home_Score>8</Home_Score>
<Away_Score>8</Away_Score>
</Game>
<Game>
<Home>Team B</Home>
<Away>Team D</Away>
<Home_Score>6</Home_Score>
<Away_Score>14</Away_Score>
</Game>
<Game>
<Home>Team D</Home>
<Away>Team C</Away>
<Home_Score>9</Home_Score>
<Away_Score>11</Away_Score>
</Game>
<Game>
<Home>Team C</Home>
<Away>Team A</Away>
<Home_Score>13</Home_Score>
<Away_Score>13</Away_Score>
</Game>
</Games>
games.xsl
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!-- Key for identifying teams -->
<xsl:key name="unique-teams" match="/Games/Game" use="Home" />
<xsl:template match="/">
<html>
<head>
<title>Team Standings</title>
</head>
<body>
<!-- Get distinct teams, sort by team name -->
<xsl:apply-templates select="//Game[generate-id() = generate-id(key('unique-teams', Home)[1])]">
<xsl:sort select="Home" />
</xsl:apply-templates>
</body>
</html>
</xsl:template>
<xsl:template match="Game">
<!-- Current team -->
<xsl:variable name="selectedteam" select="Home" />
<!-- Output each unique team name to the screen -->
<h1><xsl:value-of select="$selectedteam"/></h1>
<!-- Loop through all games to calculate totals??? -->
<xsl:for-each select="//Game">
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Sam J., был мой ответ полезным для вас? –