Dado el siguiente código XML:Realización de un "Grupo A" en la consulta XPath XSL
<results name="queryResults">
<int name="intfield1:[* TO 10]">11</int>
<int name="intfield2:[10 TO 20]">9</int>
<int name="intfield1:[10 TO 20]">12</int>
</results>
me gustaría producir este XML:
<results>
<field name="numberfield1">
<value name="[* TO 10]">11</value>
<value name="[10 TO 10]">12</value>
</field>
<field name="numberfield2">
<value name="[10 TO 20]">9</value>
</field>
</results>
no se me ocurre cómo hacer esto en XSL principalmente porque estoy queriendo por el grupo numbericfield .. Todo lo que puedo llegar a es la siguiente:
<xsl:if test="count(results/int) > 0">
<results>
<xsl:for-each select="results/int">
<field>
<xsl:attribute name="name">
<xsl:value-of select="substring-before(@name, ':')"/></xsl:attribute>
<value>
<xsl:attribute name="name">
<xsl:value-of select="substring-after(@name, ':') "/>
</xsl:attribute>
<xsl:value-of select="."/>
</value>
</field>
</xsl:for-each>
</results>
</xsl:if>
sin embargo, esto no produce el buen grupo lista ed vez me sale esto:
<results>
<field name="numberfield1">
<value name="[* TO 10]">11</value>
</field>
<field name="numberfield2">
<value name="[10 TO 20]">9</value>
</field>
<field name="numberfield1">
<value name="[10 TO 10]">12</value>
</field>
</results>
Si alguien me puede stear en la dirección correcta .. Eso sería genial?
Gracias
Es el hombre .. aplausos .. sólo probado y funciona un convite. Voy a tener que buscar esta cosa "agrupación meunchian", como en el momento en que todo parece como el vudú – CraftyFella
Una pregunta ... ¿Hay una manera de limitar los campos int que crea .. ya que no hay otra lista de los demás int dónde y está trayendo ésos en la tecla intfield? Esperar que tiene sentido – CraftyFella
Sí, en el atributo 'partido' de XSL: clave puede introducir cualquier expresión completa XPath para ser más precisos acerca de lo que los nodos que necesite. Por ejemplo –