У меня 5 товаров. Ввод продукта P, QR, S, T XML будет отличаться через некоторое время, когда может появиться один, два, три, четыре или пять продуктов, но здесь 5 продуктов XML, опубликованные несколько раз, продукты могут повторяться как продукт Q два раза и продукт R три раза, и некоторые продукты могут пропустить
<products>
<product>Product_P</product>
<product>Product_Q</product>
<product>Product_R</product>
<product>Product_S</product>
<product>Product_T</product>
</products>
, если ввод xml 2 продукта повторяется:
<products>
<product>Product_P</product>
<product>Product_Q</product>
<product>Product_R</product>
<product>Product_Q</product>
<product>Product_R</product>
<product>Product_S</product>
<product>Product_Q</product>
<product>Product_R</product>
<product>Product_T</product>
</products>
, если на входе xml 3 отсутствуют некоторые продукты :
<products>
<product>Product_P</product>
<product>Product_Q</product>
<product>Product_T</product>
</products>
если ввод xml 4 других типа продукции:
<products>
<product>Product_P</product>
<product>Product_U</product>
<product>Product_R</product>
<product>Product_V</product>
<product>Product_R</product>
<product>Product_W</product>
<product>Product_Q</product>
<product>Product_W</product>
<product>Product_T</product>
</products>
Мне нужны продукты вывода, связанные с P, Q, R, S, T других продуктов нет Как уже упоминалось ниже:
если на входе есть один продукт, значение которого равно product = "Product_Q", я хочу просто напечатать
Product_Q
, если на входе есть значение двух продуктов, равное product = "Product_Q" и product = "Product_S", я хочу напечатать
Product_Q or Product_S
, если вход имеет значение трех продуктов, равное product = "Product_P", product = "Product_Q" и product = "Product_R", я хочу напечатать
Product_P, Product_Q or Product_R
, если вход имеет четыре значения продуктов, равные продукции t = "Product_P", product = "Product_Q", product = "Product_R" и product = "Product_T", я хочу напечатать
Product_P, Product_Q, Product_R, Product_S or Product_T
, если на входе есть пять значений продуктов, равных product = "Product_P" , product = "Product_Q", product = "Product_R", product = "Product_S" и product = "Product_T", я хочу напечатать
Product_P, Product_Q, Product_R, Product_S or Product_T
Я пробовал приведенный ниже шаблон XSLT
<xsl:template match="products">
<xsl:variable name="product" select="products/product"/>
<xsl:if test="$product='Product_P'">
<xsl:text>Product_P</xsl:text>
</xsl:if>
<xsl:if test="$product='Product_P' and Product_Q">
<xsl:text>or</xsl:text>
</xsl:if>
<xsl:if test="$product='Product_Q'">
<xsl:text>Product_Q</xsl:text>
</xsl:if>
<xsl:if test="$product='Product_P' and Product_Q and Product_R">
<xsl:text>or</xsl:text>
</xsl:if>
<xsl:if test="$product='Product_R'">
<xsl:text>Product_R</xsl:text>
</xsl:if>
<xsl:if test="$product='Product_S'">
<xsl:text>Product_S</xsl:text>
</xsl:if>
<xsl:if test="$product='Product_T'">
<xsl:text>Product_T</xsl:text>
</xsl:if>
</xsl:template>
Пожалуйста, помогите спасибо заранее.