2017-09-27 1 views
0

J'ai le noeud de texte XML suivant, qui a un texte XML bien formé à l'intérieur, j'ai besoin d'analyser le texte à l'intérieur du noeud en utilisant l'analyseur SAXON dans XSLT 2.0. Pourriez-vous me suggérer quelqu'un pour analyser le texte XML à l'intérieur?Comment convertir une chaîne XML en noeud à l'aide de XSLT 2.0?

<description>&lt;settings&gt;&lt;display lang='de'&gt;&lt;title&gt;index-DE&lt;/title&gt;&lt;titleurl&gt;index-DE&lt;/titleurl&gt;&lt;logo&gt;&lt;/logo&gt;&lt;seourl&gt;&lt;/seourl&gt;&lt;/display&gt;&lt;display lang='fr'&gt;&lt;title&gt;index-FR&lt;/title&gt;&lt;titleurl&gt;index-FR&lt;/titleurl&gt;&lt;logo&gt;&lt;/logo&gt;&lt;seourl&gt;&lt;/seourl&gt;&lt;/display&gt;&lt;display lang='en'&gt;&lt;title&gt;index-EN&lt;/title&gt;&lt;titleurl&gt;index-EN&lt;/titleurl&gt;&lt;logo&gt;&lt;/logo&gt;&lt;seourl&gt;&lt;/seourl&gt;&lt;/display&gt;&lt;display lang='nl'&gt;&lt;title&gt;index-NL&lt;/title&gt;&lt;titleurl&gt;index-NL&lt;/titleurl&gt;&lt;logo&gt;&lt;/logo&gt;&lt;seourl&gt;&lt;/seourl&gt;&lt;/display&gt;&lt;nodeId&gt;index4b2&lt;/nodeId&gt;&lt;userType&gt;0&lt;/userType&gt;&lt;themes&gt;&lt;/themes&gt;&lt;inheritTheme&gt;Y&lt;/inheritTheme&gt;&lt;services&gt;&lt;pdf&gt;I&lt;/pdf&gt;&lt;print&gt;I&lt;/print&gt;&lt;shareOn&gt;I&lt;/shareOn&gt;&lt;/services&gt;&lt;networks&gt;&lt;/networks&gt;&lt;xmlSiteMap&gt;&lt;axes1&gt;&lt;axis&gt;fr&lt;/axis&gt;&lt;axis&gt;nl&lt;/axis&gt;&lt;/axes1&gt;&lt;axes2&gt;&lt;axis&gt;PC&lt;/axis&gt;&lt;/axes2&gt;&lt;axes3&gt;&lt;axis&gt;fb&lt;/axis&gt;&lt;/axes3&gt;&lt;axes4&gt;&lt;axis&gt;prof&lt;/axis&gt;&lt;axis&gt;expa&lt;/axis&gt;&lt;axis&gt;priv&lt;/axis&gt;&lt;/axes4&gt;&lt;inherit&gt;false&lt;/inherit&gt;&lt;weight&gt;0.5&lt;/weight&gt;&lt;/xmlSiteMap&gt;&lt;custom&gt;&lt;name&gt;type&lt;/name&gt;&lt;value&gt;&lt;/value&gt;&lt;/custom&gt;&lt;custom&gt;&lt;name&gt;languages&lt;/name&gt;&lt;value&gt;nl;fr&lt;/value&gt;&lt;/custom&gt;&lt;custom&gt;&lt;name&gt;hideOnSmallResolution&lt;/name&gt;&lt;value&gt;&lt;/value&gt;&lt;/custom&gt;&lt;custom&gt;&lt;name&gt;authenticated&lt;/name&gt;&lt;value&gt;&lt;/value&gt;&lt;/custom&gt;&lt;custom&gt;&lt;name&gt;segments&lt;/name&gt;&lt;value&gt;&lt;/value&gt;&lt;/custom&gt;&lt;custom&gt;&lt;name&gt;navigationElement&lt;/name&gt;&lt;value&gt;&lt;/value&gt;&lt;/custom&gt;&lt;custom&gt;&lt;name&gt;user&lt;/name&gt;&lt;value&gt;&lt;/value&gt;&lt;/custom&gt;&lt;/settings&gt;</description> 

Répondre

1

La version actuelle de Saxon (9.8) supporte XSLT 3.0 et XPath 3.1, vous pouvez utiliser la fonction XPath 3.1 parse-xml().

Les versions plus anciennes de Saxon avaient une fonction similaire dans l'espace de noms Saxon: saxon: parse().

+0

Merci pour votre mise à jour. –