Bonjour,

Je souhaite récupérer les informations issues d'un fichier XML de parcelles agricoles (télépac) pour les retraiter ensuite. Dans le premier temps, je souhaiterais les avoir en table.


Voici le code de départ (un petit bout)

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
<producteurs xmlns="urn:x-telepac:fr.gouv.agriculture.telepac:echange-producteur" xmlns:gml="http://www.opengis.net/gml">
  <producteur numero-pacage="056021200">
    <rpg>
      <ilot numero-ilot="2">
        <geometrie>
          <gml:Polygon>
            <gml:outerBoundaryIs>
              <gml:LinearRing>
                <gml:coordinates>271920.978,6769007.1 271916.723,6769004.051 271907.183,6768997.214 271889.611,6768990.472 271842.314,6768988.008 271781.649,6768989.409 271759.782,6768990.396 271747.077,6768989.92 271920.978,6769007.1</gml:coordinates>
              </gml:LinearRing>
            </gml:outerBoundaryIs>
          </gml:Polygon>
        </geometrie>
        <commune>75000</commune>
        <surface-reference>623</surface-reference>
        <surface-attribuee>623</surface-attribuee>
        <parcelles>
          <parcelle>
            <geometrie>
              <gml:Polygon>
                <gml:outerBoundaryIs>
                  <gml:LinearRing>
                    <gml:coordinates>271851.486,6769218.693 271866.195,6769214.429 271832.473,6769094.999 271817.657,6769098.88 271817.657,6769099.585 271851.486,6769218.693</gml:coordinates>
                  </gml:LinearRing>
                </gml:outerBoundaryIs>
              </gml:Polygon>
            </geometrie>
            <s2 numero-parcelle="1" localisee-indicative="false">
              <culture code-culture="AU" />
              <surface-declaree>19</surface-declaree>
            </s2>
          </parcelle>
          <parcelle>
            <geometrie>
              <gml:Polygon>
                <gml:outerBoundaryIs>
                  <gml:LinearRing>
                    <gml:coordinates>271889.561,6769207.656 271905.011,6769203.178 271871.631,6769084.416 271857.52,6769088.649 271889.561,6769207.656</gml:coordinates>
                  </gml:LinearRing>
                </gml:outerBoundaryIs>
              </gml:Polygon>
            </geometrie>
            <s2 numero-parcelle="2" localisee-indicative="false">
              <culture code-culture="AU" />
              <surface-declaree>19</surface-declaree>
            </s2>
          </parcelle>
          <parcelle>
            <geometrie>
              <gml:Polygon>
                <gml:outerBoundaryIs>
                  <gml:LinearRing>
                    <gml:coordinates>271918.233,6769015.392 271920.978,6769007.1 271916.723,6769004.051 271907.183,6768997.214 271889.611,6768990.472  271918.233,6769015.392</gml:coordinates>
                  </gml:LinearRing>
                </gml:outerBoundaryIs>
              </gml:Polygon>
            </geometrie>
            <s2 numero-parcelle="3" localisee-indicative="false">
              <culture code-culture="BH" />
              <surface-declaree>197</surface-declaree>
            </s2>
          </parcelle>
          <parcelle>
            <geometrie>
              <gml:Polygon>
                <gml:outerBoundaryIs>
                  <gml:LinearRing>
                    <gml:coordinates>271298.373,6769095.664 271298.379,6769095.077 271298.489,6769085.017 271298.475,6769084.591 271296.927,6769063.771 271298.373,6769095.664</gml:coordinates>
                  </gml:LinearRing>
                </gml:outerBoundaryIs>
              </gml:Polygon>
            </geometrie>
            <s2 numero-parcelle="53" localisee-indicative="false">
              <culture code-culture="PT" />
              <surface-declaree>38</surface-declaree>
            </s2>
          </parcelle>
        </parcelles>
      </ilot>
    </rpg>
  </producteur>
</producteurs>
Le plus proche de ce que je souhaite me semble être :
http://blog.developpez.com/sqlpro/p1...vec-sql-server

Par contre, je n'arrive pas à récupérer les valeurs de toutes les balises (notamment les cultures ou les numéros de pacage), la structure xml me semble compliquée avec une partie vers les données géographiques et une autre sur la description de la parcelle et je n'arrive pas à séparer tout ça proprement.

Merci de votre aide

Didou139