Bon, je m’excuse par avance de la trivialié de la question (si trivialité il y a) mais mes connaissances sur XML ne sont que scolaires et j’ai assez peu pratiqué la chose…
Donc mon soucis est le suivant : j’ai le WSDL d’un web service dans les papattes dont je ne désire utiliser qu’une seule opération.
Sans rentrer dans le détail, le soft qui va digérer le WSDL n’apprécie que très moyennement la taille de ce dernier (quelques 600ko). Mon objectif est donc de faire le ménage dans le fichier interface de manière à ne garder que les éléments utiles pour l’opération qui m’intéresse. Vala en gros.
Pour simplifier le problème, on va virer la partie WSDL : en gros, j’ai dans mon document un élément que je considère comme père avec derrière lui tout un tas d’autres éléments en arbre. Et je veux virer tout ce qui ne touche pas de près ou de loin à la définition du père.
J’imagine qu’il faudrait que je passe par une XSLT [FEAR] ou quelque chose dans ce goût là ?..?
Tiens question con : comment relier le XSLT au XML après coup ?
Dans mes souvenirs (d’il y’a pfiouu… 15 longues journées mais j’ai pas eu de cours dessus) il fallait que le XML réfère au XSLT pour pouvoir l’utiliser. Le contraire ne semblait pas possible…
Par contre ouais y’a une ruse entre copy-of et copy, je crois que c’est pour ça que qu’il y a cette ligne chelou dans le bout de XSL que j’ai mis plus haut: <xsl:apply-templates select=« * | text() | @* »/>. Genre ça veut dire qu’il copie tout ce qu’il trouve à un niveau inférieur…
Oui, si tu ouvres ton xml et que dedans y’a un lien vers ton XSL, tu auras devant les oeils un XML modifié à la volée. Ton fichier XML de base reste identique à lui même, seule la présentation des données change. Je sais pas si c’est ta question. Ensuite libre à toi de sauvegarder dans un XML final.
Mais en fait je n’ai plus d’erreur de NS maintenant, il m’affiche quelque chose, mais pas tout à fait ce que je veux : ça ressemble à la concaténation des descriptions de certaines de mes opérations…
Je me dis qu’il y a peut être un soucis avec la recherche en elle-même.
Pour info, le père que je recherche ressemble à ça (Papa, si tu m’entends… - pardon, je m’égare) :
Je sais plus trop dans quelles circonstances, mais ça m’est arrivé plusieurs fois d’avoir en vrac tout ou partie des CDATA de mon XML. C’est très moche. Mais je me demande si tu n’as pas le résultat que tu veux, sauf qu’il l’affiche mal (genre en fait tu as bien un bel XML, sauf qu’au lieu de t’afficher balises et indentation, il te crache les CDATA en vrac quand tu regardes ça avec un browser).
Essaye peut être de sauvegarder ton résultat et de l’ouvrir avec un éditeur de texte. Peut être que tu verras les balises (je propose ça parce que je crois bien l’avoir vécu en TP, on avait des merdes avec FF et IE qui affichaient pas la même chose).
[quote=« LeGzo, post:13, topic: 26661 »]Je sais plus trop dans quelles circonstances, mais ça m’est arrivé plusieurs fois d’avoir en vrac tout ou partie des CDATA de mon XML. C’est très moche. Mais je me demande si tu n’as pas le résultat que tu veux, sauf qu’il l’affiche mal (genre en fait tu as bien un bel XML, sauf qu’au lieu de t’afficher balises et indentation, il te crache les CDATA en vrac quand tu regardes ça avec un browser).[/quote]Nope, c’est pas les bonnes données a priori (90% sûr).
[quote=« LeGzo, post:13, topic: 26661 »]Essaye peut être de sauvegarder ton résultat et de l’ouvrir avec un éditeur de texte. Peut être que tu verras les balises (je propose ça parce que je crois bien l’avoir vécu en TP, on avait des merdes avec FF et IE qui affichaient pas la même chose).[/quote]Eh pas con ça ! J’essaye demain.
Et s’il y a d’autres avis sur la question hein…
–edit–
Bon bah demain c’est aujourd’hui et après essai, l’affichage du code de ma page bizarre me donne… le fichier xml dans lequel j’ai rajouté la reférence au XSLT. Pas plus. /me est au point mort là…
Ah ah, /me est très con, /me vient d’en avoir à nouveau la preuve.
Bon, je viens de me rendre compte que le .xml que je veux transformer est en fait un schema. Je me disais bien aussi qu’il avait une tête qui me revenait pas ce fichier… Je me désespère moi-même des fois.
Donc la question devient donc : sachant un schema n’est finalement qu’un doc xml, peut-on appliquer un xsl sur un schema ? J’aurais tendance à dire que oui [-edit- définitivement oui, c’est possibe] mais je ne vois pas trop comment.
Pas d’autres xeumeuleu masta qui traînent dans le coin par hasard ?..?
[quote=« Tupperware_ass, post:15, topic: 26661 »]Ah ah, /me est très con, /me vient d’en avoir à nouveau la preuve.
Bon, je viens de me rendre compte que le .xml que je veux transformer est en fait un schema. Je me disais bien aussi qu’il avait une tête qui me revenait pas ce fichier… Je me désespère moi-même des fois.[/quote]
Ouais bon alors là je sais pas trop quoi te dire… Je suis vraiment bien loin d’être un XML guru, mais bon déjà faudrait qu’on en sache un peu plus sur ton problème, si j’ai bien pigé ça te sort juste toutes les CDATA de ton XML de départ, et ton XSL c’est celui posté plus haut?
ps : après consultation de divers personnes dans la boite (de ceux qui ne sont pas en vacances - soit 2 personnes au total), je serais face à un problème épineux. Mouais…
Je suis désolé, j’ai vraiment pas d’idée. Par contre je suis intéressé si tu avances et que tu arrives à faire ce que tu voulais pour connaître la façon que tu auras utilisée.