Occurences d'un element xml

Résolu
loloof64 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
loloof64 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

je suis nouveau sur ce forum .

Voilà ce qui m'embête :

Soit le XML suivant :

-------------------------------------------------------------------------------------------
<grille_kakuro>
<largeur> 3 </largeur>
<hauteur> 5 </hauteur>

<ligne_de_cases_kakuro>
<case_kakuro> (...elements volontairement omis) </case_kakuro>
<case_kakuro> (...elements volontairement omis) </case_kakuro>
<case_kakuro> (...elements volontairement omis) </case_kakuro>
<case_kakuro> (...elements volontairement omis) </case_kakuro>
(..case_kakuro volontairement omis) 
<case_kakuro> (...elements volontairement omis) </case_kakuro>
</ligne_de_cases_kakuro>

<ligne_de_cases_kakuro>  (...elements volontairement omis)  </ligne_de_cases_kakuro>
(.. ligne_de_case_kakuro volontairement omis)
 <ligne_de_cases_kakuro>  (...elements volontairement omis)  </ligne_de_cases_kakuro>
</grille_kakuro>

-------------------------------------------------------------------------------------------

Comment, avec un DTD ou un schema, vérifier que
--- il y ait exactement hauteur éléments ligne_de_cases_kakuro ?
--- il y ait exactement largeur éléments case_kakuro par igne_de_cases_kakuro ?

--------------------------------------------------------------------------------------------

Peut-être les recherches n'ont elles rien donnée parce que la difficulté n'est pas si grande qu'elle m'y parait.
Quoi qu'il en soit, je vous remercie d'avance .
A voir également:

8 réponses

JoloKossovar Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   33
 
Humm alors la je ne sais pas trop, mais cela pourrai tout simplement etre en rapport avec le tps de chargment de ta page web.
1
JoloKossovar Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   33
 
Voila un exemple de parsing avec dom4j. Pour faire ce que tu veux faire tu n'aura qu'a rajouter une petite fonction pour compter. Tu trouvera de la doc sur le site officel dom4j.org je croiss

protected ListFilm parseFile(File file) throws DocumentException, ParseException {
Document doc = Dom4jUtils.parseDocument(file);
Element listFilmElt = doc.getRootElement();

ListFilm listfilm = new ListFilm();
for(Iterator it = listFilmElt.elementIterator("film"); it.hasNext(); )
{
Element movieElt = (Element)it.next();
String name = Dom4jUtils.requiredElementText(movieElt, "name");
String url = Dom4jUtils.requiredElementText(movieElt, "url");
String weburl = Dom4jUtils.requiredElementText(movieElt, "weburl");
String category = Dom4jUtils.requiredElementText(movieElt, "category");
String screenshot = Dom4jUtils.requiredElementText(movieElt, "screenshot");
String logo = Dom4jUtils.requiredElementText(movieElt, "logo");
Film film = new Film(name,url,weburl,category,screenshot,logo);
listfilm.addItem(film);
}
return (listfilm);
}
1
loloof64 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
Merci :)

Donc il est pratiquement impossible de connaitre le nombre de case_kakuro par ligne_de_cases_kakuro du xml avant de le traiter . Mais après tout, grâce à la vitesse des processeurs de nos jours, traiter le fichier avant de le vérifier ne devrait pas poser problème .

En revanche, utiliser Dom4j a l'air beaucoup plus simple qu'utiliser le parseur/transformeur DOM classique :)
Je vais m'y mettre .

En ce qui concerne la mémoire, cela n'est pas un problème : je ne programme pratiquement que des applications pour postes hors-ligne .

Je récapitule :
---------------------------------------------------
1) La mémoire totale du programme ne devrait être problématique que pour le temps de chargement de la page Web qui l'intègre
2) Je peux utiliser l'api DOM4j et me programmer un compteur
1
JoloKossovar Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   33
 
C a m'a l air pas mal ;)
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
loloof64 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
De quoi, ce que j'en ai retenu ?
1
JoloKossovar Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   33
 
ton recapitulatif ^^
1
loloof64 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
merci :)
1
JoloKossovar Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   33
 
Salut ^^
je te conseille de vérifier cela, avec DOM4j un excellent framework pour parser du xml en tres peu de temps.
Dis moi si ca t interesse et je t'enverrai un exemple.
0
loloof64 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
Oui bien sûr cela m'intéresse :)

Si tu veux pour moi, le seul souci à intégrer une librairie à mes codes JAVA, c'est que cette librairie soit trop gourmande en taille, et que par conséquent, on dépasse la limite totale recommandée (400Ko ? Je ne m'en souviens plus). Donc un souci d'optimisation .

A propos cette recommandation sur laquelle on m'a informée est-elle due à la mémoire virtuelle de mon système et à la machine virtuelle de JAVA ?
0