Bonjour
je voudrais faire une transformation XSL vers html "à plat et alphabétiquement" côté client d'un fichier xml représentant un menu vertical hiérarchique (c-à-d avec dossier et sous-dossier dont le niveau d'imbrication peut être multiple et n'est pas connu à priori)
La difficulté pour moi est de tester l'imbrication des dossiers sachant que chaque élément du fichier xml, chaque item du menu, possède juste 4 informations: son nom, son type (menu, dossier ou contenu) l'identifiant unique de son dossier parent (1=master étant le premier niveau) et un identifiant unique donc.
ex xml:
je voudrais obtenir (pour le moment) ce genre de résultat simple "à plat":
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet href="menu.xsl" type="text/xsl"?> <plist> <item> <nom>master</nom> <type>menu</type> <parent></parent> <idunique>1</idunique> </item> <item> <nom>Dossier2</nom> <type>dossier</type> <parent>1</parent> <idunique>2</idunique> </item> <item> <nom>Dossier1</nom> <type>dossier</type> <parent>1</parent> <idunique>3</idunique> </item> <item> <nom>DossierX</nom> <type>dossier</type> <parent>5</parent> <idunique>4</idunique> </item> <item> <nom>Dossier</nom> <type>dossier</type> <parent>2</parent> <idunique>5</idunique> </item> <item> <nom>DossierY</nom> <type>dossier</type> <parent>5</parent> <idunique>6</idunique> </item> <item> <nom>Element</nom> <type>contenu</type> <parent>3</parent> <idunique>7</idunique> </item> <item> <nom>ElementA</nom> <type>contenu</type> <parent>4</parent> <idunique>8</idunique> </item> <item> <nom>ElementB</nom> <type>contenu</type> <parent>4</parent> <idunique>9</idunique> </item> <item> <nom>Element1</nom> <type>contenu</type> <parent>6</parent> <idunique>10</idunique> </item> <item> <nom>Element1</nom> <type>contenu</type> <parent>1</parent> <idunique>11</idunique> </item> <item> <nom>Element3</nom> <type>contenu</type> <parent>1</parent> <idunique>12</idunique> </item> <item> <nom>Element2</nom> <type>contenu</type> <parent>1</parent> <idunique>13</idunique> </item> <item> <nom>Element2</nom> <type>contenu</type> <parent>6</parent> <idunique>14</idunique> </item> <item> <nom>Element</nom> <type>contenu</type> <parent>2</parent> <idunique>15</idunique> </item> </plist>
Master.
-Dossier1.
--Element.
-Dossier2.
--Dossier.
---DossierX.
----ElementA.
----ElementB.
---DossierY.
----Element1.
----Element2.
--Element.
-Element1.
-Element2.
-Element3.
J'aimerais que quelqu'un me mette sur la voie, m'indiquant un lien ou un nom de méthode.
Ce doit être un cas classique qui doit s'appliquer à des menus déroulants verticaux comme à des sommaires.
Note: j'ai crée un AppleScript qui génère ce type de fichier xml à partir du menu playlist d'iTunes pour ceux que ça intéresse et pour vous donner une idée de ce que j'essaie de reproduire.
J'espère que cela vous intéressera
Merci.
![]()
Partager