Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[WD10] - syntaxe écriture vers XML

3 réponses
Avatar
Dev_PC
Salut à toutes & tous,

n'étant pas un spécialiste du XML, et encore moins de sa manipulation sous
WD,
je voudrais soumettre le point suivant à votre sagacité.
Je crée un document, disons "FACTURE", dans lequel je crée une arborescence
de balises comme on me le demnade avec des XMLAjouteFIls. >>> OK

A un certain niveau, je dois avoir des attributs, par exemple:
dans la balise "Reference" (<ref>) que j'ajoute classiquement, je dois
obtenir,
à l'examen du fichier XML final quelque chose comme ceci :
...
<PERE>
<ref A1="TYPE" A2="SOUSTYPE">123123123</ref>
</PERE>
...
j'ai donc ajouté, en étant au niveau <PERE> :
XMLAjouteFils(MonDocXML,"ref","",vrai)
XMLAjouteAttribut(MonDocXML,"A1","TYPE")
XMLAjouteAttribut(MonDocXML,"A2","SOUSTYPE")
mais je ne vois pas comment faire apparaître la valeur >123123123<
qui doit se situer avant la balise fermante...
J'ai donc actuellement, à l'examen de mon fichier XML :
...
<PERE>
<ref A1="TYPE" A2="SOUSTYPE" />
</PERE>
...

Rq.: en outre, cette balise fermante du dernier fils ajouté ne
mentionne toujours que " /> " tant que je n'y inclus pas une nouvelle
branche 'fils'. Ne devrait-elle pas me mentionner, dans ce cas-ci,
plutôt " /ref> " ? Cela est répété dans le document XML pour toute
branche de dernier niveau, ne comportant pas de fils, et je crois
savoir que c'est une tolérance du langage de ne pas mentionner
en fermeture, explicitement, le nom de la dernière balise ouverte.
Peut-on cependant le forcer, ou est-ce impossible, ou bien ai-je
commis une erreur qui crée ce phénomène?

Merci de vos éclaircissements.
Amicalement,
Marc

3 réponses

Avatar
Dev_PC
Salut à toutes & tous,


OK - J'ai trouvé, et j'explique au cas où d'autres chercheraient aussi...
Il faut donner la valeur à la création du fils, et ENSUITE SEULEMENT
ajouter les attributs, et par la même occasion, la ligne se termine
alors bien par la balise fermante...

Donc, faire :


XMLAjouteFils(MonDocXML,"ref","123123123",vrai)
XMLAjouteAttribut(MonDocXML,"A1","TYPE")
XMLAjouteAttribut(MonDocXML,"A2","SOUSTYPE")

et là, tout roule nickel!

Amicalement,
Marc
Avatar
JeAn-PhI
Dev_PC a formulé la demande :
Salut à toutes & tous,

n'étant pas un spécialiste du XML, et encore moins de sa manipulation sous
WD,
je voudrais soumettre le point suivant à votre sagacité.
Je crée un document, disons "FACTURE", dans lequel je crée une arborescence
de balises comme on me le demnade avec des XMLAjouteFIls. >>> OK

A un certain niveau, je dois avoir des attributs, par exemple:
dans la balise "Reference" (<ref>) que j'ajoute classiquement, je dois
obtenir,
à l'examen du fichier XML final quelque chose comme ceci :
...
<PERE>
<ref A1="TYPE" A2="SOUSTYPE">123123123</ref>
</PERE>
...
j'ai donc ajouté, en étant au niveau <PERE> :
XMLAjouteFils(MonDocXML,"ref","",vrai)
XMLAjouteAttribut(MonDocXML,"A1","TYPE")
XMLAjouteAttribut(MonDocXML,"A2","SOUSTYPE")
mais je ne vois pas comment faire apparaître la valeur >123123123<
qui doit se situer avant la balise fermante...
J'ai donc actuellement, à l'examen de mon fichier XML :
...
<PERE>
<ref A1="TYPE" A2="SOUSTYPE" />
</PERE>
...

Rq.: en outre, cette balise fermante du dernier fils ajouté ne
mentionne toujours que " /> " tant que je n'y inclus pas une nouvelle
branche 'fils'. Ne devrait-elle pas me mentionner, dans ce cas-ci,
plutôt " /ref> " ? Cela est répété dans le document XML pour toute
branche de dernier niveau, ne comportant pas de fils, et je crois
savoir que c'est une tolérance du langage de ne pas mentionner
en fermeture, explicitement, le nom de la dernière balise ouverte.
Peut-on cependant le forcer, ou est-ce impossible, ou bien ai-je
commis une erreur qui crée ce phénomène?

Merci de vos éclaircissements.
Amicalement,
Marc


<ref A1="TYPE" A2="SOUSTYPE" /> cette syntaxe est correcte quand il n'y
a pas de valeur pour la balise en cours. elle n'est visible que si vous
visualisez votre fichier XML dans un navigateur si vous l'ouvrez avec
un éditeur texte vous verrez bien <ref A1="TYPE" A2="SOUSTYPE"></ref>

--
Cordialement JeAn-PhI
Avatar
Dev_PC
> <ref A1="TYPE" A2="SOUSTYPE" /> cette syntaxe est correcte quand il n'y a
pas de valeur pour la balise en cours. elle n'est visible que si vous
visualisez votre fichier XML dans un navigateur si vous l'ouvrez avec un
éditeur texte vous verrez bien <ref A1="TYPE" A2="SOUSTYPE"></ref>

--
Cordialement JeAn-PhI




Merci JeAn-PhI de ces éclaircissements.

Amicalement,
Marc :-)