IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XML/XSL et SOAP Discussion :

Importation de données XML, comment les traiter ?


Sujet :

XML/XSL et SOAP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut Importation de données XML, comment les traiter ?
    Bonjour,

    jusqu'à présent j'avais réussi à me passer de XML, mais je suis obligé de l'inclure sur un produit pour permettre des importations de données externes XML vers la BDD.

    du coup je m'interroge,

    un document XML avec un DTD ou un XSL peut être validé, bien formé, tout ce qu'on veux, mais comment identifie-t-on les données du document ?

    exemple, pour autant que je sache, ces différentes syntaxes pour un même jeu de données, bien que discutables, peuvent être validées par un DTD/XSL idoine, mais comment retrouver ces petits alors que les données peuvent être présentées de façon totalement différentes ?!

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <telephonefix>0102030405</telephonefix>
    <telephoneportable>0605040302</telephoneportable>
     
    <telephone type="fix">0102030405</telephone>
    <telephone type="portable">0605040302</telephone>
     
    <champ name="telephone" type="fix" value="0102030405"/>
    <champ name="telephone" type="portable" value="0605040302"/>
     
    <telephones>
     <fix>0102030405</fix>
     <portable>0605040302</portable>
    </telephones>

    A titre indicatif, le traitement sera en PHP

    Merci
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  2. #2
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par défaut
    Ben quand tu intègres un fichier XML en base le prérequis c'est que tu en connaisses la structure.

    Si tu veux que l'utilisateur fournisse un XML arbitraire que tu tenteras de désambigüer tant bien que mal, alors il faut que l'utilisateur valide ton interprétation des données et puisse corriger le résultat (c'est ce qui est fait sur monster.com par exemple avec les CV en pdf/word).

    Mais sinon tu peux imposer ta propre DTD/XSD pour être sûr que le XML en entrée respecte la structure que tu as défini. Dans ce cas tu n'auras pas à te casser la tête à faire de la divination.

  3. #3
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    Citation Envoyé par Loceka Voir le message
    Ben quand tu intègres un fichier XML en base le prérequis c'est que tu en connaisses la structure.

    Si tu veux que l'utilisateur fournisse un XML arbitraire que tu tenteras de désambigüer tant bien que mal, alors il faut que l'utilisateur valide ton interprétation des données et puisse corriger le résultat (c'est ce qui est fait sur monster.com par exemple avec les CV en pdf/word).

    Mais sinon tu peux imposer ta propre DTD/XSD pour être sûr que le XML en entrée respecte la structure que tu as défini. Dans ce cas tu n'auras pas à te casser la tête à faire de la divination.
    ok, merci de confirmer ce que je pensais

    car en effet, l'analyse d'un XML arbitraire me semble loin d'être une évidence...
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  4. #4
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    petite question annexe, ces syntaxes XPath correspondent-elles bien aux données XML données précédemment ?

    Merci
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    /telephonefixe
    /telephoneportable
     
    /telephone[@type='fixe']
    /telephone[@type='portable']
     
    /champ[@name='telephone' AND @type='fixe']/@value
    /champ[@name='telephone' AND @type='fixe']/@value
     
    /telephones/fix
    /telephones/portable

    et un dernier pour la route
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <telephones>
     <telephone>
      <type>fix</type>
      <numero>0102030405</numero> 
     </telephone>
     <telephone>
      <type>portable</type>
      <numero>0605040302</numero> 
     </telephone>
    <telephones>
     
    /telephones/telephone[type='fix']/numero
    /telephones/telephone[type='portable']/numero
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  5. #5
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    /telephonefixe => NON
    /telephoneportable => OUI
     
    /telephone[@type='fixe'] => NON
    /telephone[@type='portable'] => OUI
     
    /champ[@name='telephone' AND @type='fixe']/@value => NON
    /champ[@name='telephone' AND @type='fixe']/@value => NON
     
    /telephones/fix => OUI
    /telephones/portable => OUI
     
    /telephones/telephone[type='fix']/numero => OUI
    /telephones/telephone[type='portable']/numero => OUI

  6. #6
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    Citation Envoyé par Loceka Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    /telephonefixe => NON
    /telephoneportable => OUI
     
    /telephone[@type='fixe'] => NON
    /telephone[@type='portable'] => OUI
     
    /champ[@name='telephone' AND @type='fixe']/@value => NON
    /champ[@name='telephone' AND @type='fixe']/@value => NON
     
    /telephones/fix => OUI
    /telephones/portable => OUI
     
    /telephones/telephone[type='fix']/numero => OUI
    /telephones/telephone[type='portable']/numero => OUI
    et avec un "e" en plus ou en moins sur fixe et avec un portable à la place d'un fixe dans le 3ième bloque c'est mieux ?

    Merci
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [OOo] import de données xml dans un document open office writer
    Par anouka dans le forum XML/XSL et SOAP
    Réponses: 11
    Dernier message: 02/08/2008, 20h20
  2. [SQL Server 2005] Importer des données XML
    Par ni0urk dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 22/05/2008, 09h06
  3. importer des données XML dans une base Oracle 9
    Par lanfeustdetroll dans le forum JDBC
    Réponses: 3
    Dernier message: 19/07/2007, 00h09
  4. Pb d'importation de données XML vers Access 2003
    Par thomasesteve dans le forum Access
    Réponses: 2
    Dernier message: 27/02/2006, 15h28
  5. Importer des données XML
    Par Oberown dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 26/07/2005, 12h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo