Rechercher : dans
Par :

Initiation en xml

Dernière réponse le 4 jun 2008 à 13:08:40 nita2006, le 4 jun 2008 à 11:00:18 
 Signaler ce message aux modérateurs

Bonjour,
je souhaite realiser un site intranet de la societé dans laquelle je fais mon stage ; en fait le langage avce lequel je dois programmer c'est du xml , dont j'ai beau cherché sur le net j'ai pas trouvé grand chose , je voudrais avoir des tp avce corrigé bien expliqué , en gros ce que j'ai comrpsi xml c'est un langage de balisage extensible dont son abjectif est de faciliter l'échange automatisé de contenus entre systèmes d'informations hétérogènes.
mais vu les exmple que j'ai trouvés sur le net ca parait un ti peu louche , dans un seul fichier ils disent que c est plus simple alors que je vois la balise qui se repete a chaque fois en fonction de chauque entrée , je sais pas si je me fais comprendre mais le probleme j essai de tourver comment ca s execute un fichier .xml , un exemple concret qui me permettra d avancer
merci

Meilleures réponses pour « initiation en xml » dans :
Introduction à XML Voir Présentation de XML XML (entendez eXtensible Markup Language et traduisez Langage à balises étendu, ou Langage à balises extensible) est en quelque sorte un langage HTML amélioré permettant de définir de nouvelles balises. Il s'agit effectivement...
Mise en page de XML avec XSL Voir Introduction à XSL XML est un langage de structuration des données, et non de représentation des données. Ainsi XSL (eXtensible StyleSheet Language) est un langage recommandé par le W3C pour effectuer la représentation des données de documents XML....
PHP - Parser du XML Voir Introduction à XML PHP permet l'analyse syntaxique (parsage ou parsing en anglais) d'un document XML. Le langage XML (eXtensible Markup Language, traduisez Langage à balises extensibles) est un métalangage, c'est-à-dire un langage permettant de...
Télécharger DriveImage XML VoirDriveImage XML est un programme permettant de faire des images du système (partitions et lecteurs logiques) à des fins de sauvegarde, à la manière de Norton Ghost. Ce programme permet : De créer des images des lecteurs logiques et des...
Structure d'un document XML VoirQu'est-ce que le XML? La norme XML en tant que telle doit être vue comme un outil permettant de définir un langage (on dit alors qu'il s'agit d'un métalangage), permettant de créer des documents structurés à l'aide de balises. Une balise est une...
DOM (Document Object Model) et SAX (Simple API for XML) VoirXML permet de définir la structure du document uniquement, ce qui permet d'une part de pouvoir définir séparément la présentation de ce document, d'autre part d'être capable de récupérer les données présentes dans le document pour les...
AJAX (Asynchronous Javascript And XML) VoirIntroduction à AJAX AJAX (Asynchronous Javascript And XML, traduisez Javascript asynchrone et XML) est une méthode de développement web basée sur l'utilisation d'un script Javascript pour effectuer des requêtes web à l'intérieur d'une page web...

1

LegGohan, le 4 jun 2008 à 11:04:34

Contact moi en mp si tu es interessé par des cours de xml que j'ai eu cette année en licence pro.
Je pense qu'ils sont pas mal du tout!!!

Répondre à LegGohan

2

sebsauvage, le 4 jun 2008 à 11:06:53

en fait le langage avce lequel je dois programmer c'est du xml

Oups... XML n'est pas un langage de programmation.

Voir: http://sebsauvage.net/comprendre/xml/index.html

XML n'est pas une fin en soit. C'est une des nombreuses méthodes pour structurer des données.
Ne jamais sous-estimer la puissance des bases de données (même SQLite !).

XML est généralement utilisé à tort et à travers.

Répondre à sebsauvage

4

sebsauvage, le 4 jun 2008 à 11:22:16

Pour illustrer mon propos:

Pourquoi je préfère SQLite à XML ?

SQLite est plus compact (XML gaspille une place énorme): Pour les mêmes données, l'XML prendra au minimum le double de place ! (à cause des balises).
XML n'est pas efficace en matière de stockage. Il est incroyablement verbeux.

XML est lent. Très lent. Lire de gros fichiers XML est horriblement lent, et ça bouffe beaucoup de CPU.
SQLite est extrêmenent rapide. Même sans les indexes, SQLite est plus rapide que toutes les API XML que j'ai pu tester.
Faites des tests de recherche dans un grand ensemble de données, vous verrez la différence (Essayez 1 Go pour voir).

XML est lourd à programmer.
Que vous choisissiez DOM ou SAX, lire un fichier XML est horriblement lourd à programmer.
A comparer à une simple requête SQL, y'a pas photo.
Ou même un simple fichier tabulaire.

En prime, le SQL peut me faire des filtres, des tris, des croisements de données, des calculs... tout un tas de trucs que vous allez reprogrammer si vous travaillez en XML.
Pourquoi ré-inventer la roue ? Vous aimez perdre du temps ?
Sans compter que les serveurs de bases de données sont optimisés pour ce genre de travail, et qu'ils feront un bien meilleur boulot que ce que vous pourrez programmer.

SQLite est portable également: Windows, Mac, Linux... des grands systèmes jusqu'aux PDA
(SQLite est utilisé dans l'iPhone d'Apple)
Je peux transférer ma base SQLite d'un système à l'autre et l'utiliser directement.

Une base SQLite est autant auto-descriptive d'un fichier XML.
Donc XML n'a aucun avantage là dessus.

Essayez de modifier une partie d'un fichier XML. Vous allez vous tirer une balle.
Soit vous passez par DOM, et ça bouffe une quantité pas possible de mémoire, soit vous passez par SAX et vous êtes bon pour ré-écrire tout le fichier. Non merci.
En SQL, j'ai un ordre UPDATE à lancer.

Essayez de stocker des données binaire en XML. Bon courage (base64 ?)
Les bases de données gèrent les données binaires sans problème, et de manière efficace.

La plupart des bases de données permettent un typage des données, inexistant en XML.

Les bases de données permettent la mise en place de contraintes pour assurer une plus grande cohérence des données.
Inexistant en XML.

Enfin, quand vous écrivez un fichier XML, vous n'avez aucune garantie d'intégrité des données.
SQLite respecte le propriétés ACID: Je suis sûr que mes données ne seront jamais en vrac.


Je parle de SQLite, mais la plupart de ces propriétés s'appliquent également aux autres bases de données (Oracle, mySQL, etc.)

XML est une solution à la recherche d'un problème, j'en suis de plus en plus convaincu (et j'ai quelques années de travail en milieu professionel derrière moi).

Répondre à sebsauvage

3

Rocky_123, le 4 jun 2008 à 11:15:04
  • +1

Salut, XML n'est pas un langage de programmation mais une façon de représenter les données. En fait c'est à toi de décider comment faire ton fichier XML, sa structure peut faire penser à un arbre, exemple :

<contacts>
 <personne>
  <nom>A</nom>
  <prenom>A</prenom>
 </personne>

 <personne>
  <nom>B</nom>
  <prenom>B</prenom>
 </personne>

 ...
</contacts>


Tout dépend jusqu'où tu veux aller. Le XML peut être utilisé pour stocker n'importe quoi, et il permet bien sûr d'être échangé facilement d'une application à l'autre.

Exemple de XML utilisé en pratique : un extrait de fichier XMLTV (pour les guides TV électroniques) :

  <channel id="tf1.fr">
    <display-name lang="fr">TF1</display-name>
    <display-name>TF1</display-name>
    <icon src="http://www.lyngsat-logo.com/logo/tv/tt/tf1.jpg" />
  </channel>
  ....

   <programme start="20080602101500 +0200" stop="20080602110500 +0200" channel="tf1.fr">
    <title>7 à la maison</title>
    <desc lang="fr">Série familiale américaine (7th Heaven). Saison 4, 1999-2000 (8/22).</desc>
    <category>série</category>
    <url>http://www.telemoustique.be/epg/fr/detail.asp?progid=7511537620080602TF1.001</url>
    <episode-num system="onscreen">(8/22)</episode-num>
    <subtitles type="teletext" />
  </programme>


Là tu vois comment est organisé le fichier XML. Après bien sûr, à l'application de traiter ce format (dans ce cas par exemple, une TV qui affiche à l'écran le programme TV).

Sur le site www.developpez.net j'ai vu quelques exemples.

Répondre à Rocky_123

5

nita2006, le 4 jun 2008 à 11:36:19

Oui tout ca j ai compris , mais je fais comment pour le voir en concret
la par exemple le bout de code que tu m'as fait
<contacts>
<personne>
<nom>A</nom>
<prenom>A</prenom>
</personne>

<personne>
<nom>B</nom>
<prenom>B</prenom>
</personne>

...
</contacts>
en quoi je peux le concrétiser ? voir ce resultat ?

Répondre à nita2006

6

sebsauvage, le 4 jun 2008 à 11:39:42

en quoi je peux le concrétiser ? voir ce resultat ?

Le résultat, tu l'as sous les yeux: Une structure de données prévue pour stocker un type de données bien précis.

Après, tu peux créer des programmes pour le transformer: en HTLM, en fichier CSV, etc.

Ce sont juste des données stockées: C'est ton programme qui va déterminer le résultat du traitement de ces données.

Répondre à sebsauvage

7

nita2006, le 4 jun 2008 à 11:58:00

Ok , et si alors j ai 200 000 entrées je vais de voir entrer 200 000 personnes , tu penses que c'est evident .?
et je fais comment pour le prog qui permet de l'afficher en html

Répondre à nita2006

8

 sebsauvage, le 4 jun 2008 à 13:08:40

Pour 200000 entrées, ça me semble aberrant d'utiliser XML.

Une base de données sera bien mieux adaptée (beaucoup plus rapide, plus facile à progammer...)

Répondre à sebsauvage
Collection CommentÇaMarche.net