-
balises identiques
Bonjour à tous
Question de débutant
Le fragment XML peut-il être considéré comme "orthodoxe" ?
...
<patient>
<nom>....</nom>
<date>01/01/1961</date>
<adresse>....</adresse>
<hospitalisation>
<date>01/01/2002</date>
...
</hospitalisation>
</patient>
...
La balise <date> possède 2 significations différentes
-date de naissance du patient
-date d'hospitalisation
Est-ce accepté ? Est-ce recommandé ?
Changer le nom de la balise pose un problème (je ne contrôle pas la production de ce fichier XML). Faut-il utiliser un "namespace" ?
Merci de votre attention.
-
a mon avis ca ne pose pas de probleme.
En fait, ca va peut etre dependre de ce que tu veux en faire. Est ce que tu veux le parser ou est ce que tu vas simplement l'afficher a l'aide de feuille de style XSL ?
Pour l'affichage, il n'y aura pas de probleme. Si tu veux le parser, je me demande si ca ne depend pas de l'API que tu vas utiliser.
Est ce qu'un expert en XML pourrait me dire si ca a du sens !!! :wink:
-
Je l'ai déjà parsé grace à un scanner (www.destructor.de). Ca focntionne bien mais la programmation n'est pas très élégante puisque, pour interpréter la balise <date>, je dois tenir compte du contexte (se trouve-t-elle sous la balise <patient> ou sous la balise <hospitalisation>).
-
oui, c'est clair. Mais je ne vois pas trop comment est ce que tu peux faire autrement en fait.
-
D'une je ne vois pas du tout le probleme, du moment qu'une date est une date, aucun probleme. Je dirais meme plus, je te le conseille.
Regarde les 2000 fichiers de config en Xml par exemple (devenus tres a la mode), tu retrouves des tags genre:
<attribute name="" value="">
dans tous les autres tags. Ca veut bien dire ce que ca veut dire.
En Html par exemple, <b> peut etre contenu dans <div> ou dans <p>
Toujours pas de probleme.
Ca serait un probleme si par exemple, une date devait etre une date style:
1er Septembre 2003
et l'autre devait etre une date SQL, ou autre chose. Et que ton parseur devait faire la difference.
Bon courage.
-
je dois etre un peu con mais je ne comprends pas exactement ce que tu veux dire.
En fait, dans le cas de phmichel, si tu veux parser le fichier tel qu'il arrive, c'est a dire avec des tags de meme nom a des endroits differents dans l'arborescence, comment est ce que tu fais ?
Comment est ce que tu peux faire si par exemple tu veux recuperer la date de l'hospitalisation et la mettre dans une variable hospitalisationDate et recuperer la date de naissance pour la mettre dans naissanceDate sans faire le distingo a l'aide du contexte ?
Sorry si je dis des conneries !!! :wink:
-
c'est exactement cela
Je récupère des données administratives d'un patient sur l'intranet (en particulier sur l'AS400) de l'hôpital. Ces données me sont envoyées au format XML et je les introduit, après les avoir "parsées" via un ClientDataSet, dans une base de donnée départementale (actuellement Paradox :( , prochainement Interbase).
Dans ce contexte, il me semble clair qu'une <date> de naissance n'a rien à voir avec une <date> d'hospitalisation.
Comment les distinguer sans tenir compte du contexte (balises sous lesquelles elles apparaissent).
J'espère que cette explication est plus claire.
Philippe
-
justement la balise conteneur te donne le contexte et c'est tant mieux. maintenant si tu veux parser tes balises sans tenir compte de ca... il y a un problème de fond et de conception.
-
on est d'accord, on est oblige de tenir compte du contexte alors !!!