replace-xpath
Dans un analyseur syntaxique regex, permet de remplacer la chaîne "active" en cours par le résultat de l'évaluation d'une expression XPath.
Attributs
- async (booléen Valeur par défaut : true) - Traitement asynchrone. Pour les balises d'analyse, indique si la demande doit être ajoutée à la file d'attente (false) ou traitée avant l'élément apparenté suivant. Pour les autres éléments, cet attribut ne fait la différence que s'ils contiennent des demandes asynchrones qui doivent être traitées avant le traitement de l'élément. Dans ce cas, lorsque l'attribut est défini sur false, l'élément apparenté suivant de l'élément ne sera traité qu'après l'élément en cours ; lorsqu'il est défini sur true, Watson Explorer n'attend pas que l'élément en cours soit traité avant de traiter son élément apparenté suivant.
- elt-id (entier) - Utilisation : Interne
- max-elt-id (entier) - Utilisation : Interne
- execute-acl (Texte)
- process (Texte) - Expression XPath qui détermine les attributs et/ou les enfants à traiter. Seuls "", "*", "@*" et "*|@*" sont actuellement pris en charge.
- select (Texte) - Expression XPath. Utilisation : doit être spécifié une fois que tous les éléments enfants ont été traités
Enfants
- Choisissez un nombre dans n'importe quel ordre.
- attribute : (Zéro ou plus) - Définit un attribut du premier élément parent
Exemples
Exemple d'entrée :
<parser name="p">
<match token="ok">
<add-document/>
<replace-xpath select="concat('concat ', viv:current-string())"/>
<add-content name="c"/>
<add-processed-xsl to="document">
<xsl:template match="/">
<content name="d">
<xsl:value-of select="name(viv:current-node())"/>
<xsl:value-of select="viv:current-string()"/>
</content>
</xsl:template>
</add-processed-xsl>
</match>
</parser>
<parse parser="p">ok</parse>
Exemple de sortie :
<parser name="p">
<match token="ok">
<add-document/>
<replace-xpath select="concat('concat ', viv:current-string())"/>
<add-content name="c"/>
<add-processed-xsl to="document">
<xsl:template match="/">
<content name="d">
<xsl:value-of select="name(viv:current-node())"/>
<xsl:value-of select="viv:current-string()"/>
</content>
</xsl:template>
</add-processed-xsl>
</match>
</parser>
<documents>
<document id="Ndoc0">
<content name="c" type="html" action="cluster" weight="1">concat ok</content>
<content name="d" type="html" action="cluster" weight="1">parseconcat ok</content>
</document>
</documents>