Partager via


Détails sur les formats de données pris en charge

Cet article fournit des détails sur la prise en charge de la lecture et de l’écriture pour toutes les balises XML et tous les types de géométrie Well Known Text. Il détaille également la manière dont les données spatiales délimitées sont analysées dans le module d’E/S spatiales.

Espaces de noms XML pris en charge

Le module d’E/S spatiales prend en charge les balises XML des espaces de noms suivants.

Préfixe d’espace de noms URI d’espace de noms Notes
atom http://www.w3.org/2005/Atom
geo http://www.w3.org/2003/01/geo/wgs84_pos# Prise en charge de la lecture seule dans les fichiers GeoRSS.
georss http://www.georss.org/georss
geourl http://geourl.org/rss/module/ Prise en charge de la lecture seule dans les fichiers GeoRSS.
gml http://www.opengis.net/gml
gpx http://www.topografix.com/GPX/1/1
gpxx http://www.garmin.com/xmlschemas/GpxExtensions/v3 Prise en charge de la lecture seule dans les fichiers GPX. Analyse et utilise DisplayColor. Toutes les autres propriétés ajoutées pour former les métadonnées.
gpx_style http://www.topografix.com/GPX/gpx_style/0/2 Pris en charge dans les fichiers GPX. Utilise la couleur de ligne.
gx http://www.google.com/kml/ext/2.2
kml http://www.opengis.net/kml/2.2
rss Lecture seule. GeoRSS écrit au format Atom.

Éléments XML pris en charge

Le module d’E/S spatiales prend en charge les éléments XML suivants. Toute balise XML qui n'est pas prise en charge est convertie en objet JSON. Ensuite, chaque balise sera ajoutée en tant que propriété dans le champ properties de la forme ou de la couche parente.

Éléments KML

Le module d’E/S spatiales prend en charge les éléments KML suivants.

Nom de l’élément Lire Write Notes
address partial Oui L’objet est analysé, mais n’est pas utilisé pour le positionnement de la forme.
AddressDetails partial non L’objet est analysé, mais n’est pas utilisé pour le positionnement de la forme.
atom:author Oui oui
atom:link oui oui
atom:name oui Oui
BalloonStyle partial partial displayMode n’est pas pris en charge. Converti en PopupTemplate. Pour écrire, ajoutez une propriété popupTemplate en tant que propriété de la fonctionnalité pour laquelle vous souhaitez écrire.
begin Oui oui
color oui Oui Inclut #AABBGGRR et #BBGGRR. Analysé dans une chaîne de couleur CSS
colorMode Oui non
coordinates oui oui
Data oui oui
description oui oui
displayName oui oui
Document oui Oui
drawOrder partial non Lecture pour les superpositions de sol et utilisées pour les trier.
east Oui oui
end oui oui
ExtendedData oui Oui Prend en charge les éléments Data, SimpleData ou Schema non typés, ainsi que les remplacements d’entité du formulaire $[dataName].
extrude partial partial Uniquement pris en charge pour les polygones. Les MultiGeometry qui ont des polygones de différentes hauteurs sont décomposés en entités individuelles. Les styles de ligne ne sont pas pris en charge. Les polygones dont l’altitude est égale à 0 sont affichés sous forme de polygone plat. Lors de la lecture, l’altitude de la première coordonnée dans la boucle extérieur est ajoutée en tant que propriété de hauteur du polygone. Ensuite, l’altitude de la première coordonnée sera utilisée pour afficher le polygone sur la carte.
fill Oui oui
Folder oui oui
GroundOverlay oui Oui color n’est pas pris en charge
heading partial non Analysé mais non restitué par SimpleDataLayer. Écrit uniquement si les données sont stockées dans la propriété de la forme.
hotSpot Oui partial Écrit uniquement si les données sont stockées dans la propriété de la forme. Les unités sont envoyées en tant que « pixels » uniquement.
href Oui Oui
Icon partial partial Analysé mais non restitué par SimpleDataLayer. Écrit uniquement la propriété Icon de la forme si elle contient des données URI. Seul href est pris en charge.
IconStyle partial partial Les valeurs icon, heading, colorMode, et hotspots sont analysées, mais pas affichées par SimpleDataLayer
innerBoundaryIs Oui oui
kml oui oui
LabelStyle non non
LatLonBox oui oui
gx:LatLonQuad oui oui
LinearRing oui oui
LineString oui oui
LineStyle oui Oui colorMode n’est pas pris en charge.
Link Oui non Seule la propriété href est prise en charge pour les liens réseau.
MultiGeometry partial partial Peut être décomposée en fonctionnalités individuelles lors de la lecture.
name Oui oui
NetworkLink oui non Les liens doivent se trouver dans le même domaine que le document.
NetworkLinkControl non non
north oui oui
open oui oui
outerBoundaryIs oui oui
outline oui oui
overlayXY non non
Pair partial non Seul le style normal dans un StyleMap est pris en charge. highlight n’est pas pris en charge.
phoneNumber Oui oui
PhotoOverlay non non
Placemark oui oui
Point oui oui
Polygon oui oui
PolyStyle oui Oui
Region partial partial LatLongBox est pris en charge au niveau du document.
rotation non non
rotationXY non non
scale non non
Schema oui oui
SchemaData oui Oui
schemaUrl partial Oui Ne prend pas en charge le chargement de styles à partir de documents externes qui ne sont pas inclus dans un KMZ.
ScreenOverlay non non
screenXY non non
SimpleData oui oui
SimpleField oui oui
size non non
Snippet partial partial L’attribut maxLines est ignoré.
south Oui oui
Style oui Oui
StyleMap partial non Seul le style normal dans un StyleMap est pris en charge.
styleUrl partial Oui Les URL de style externe ne sont pas prises en charge.
text Oui Oui Le remplacement de $[geDirections] n’est pas pris en charge
textColor Oui oui
TimeSpan oui oui
TimeStamp oui oui
value oui Oui
viewRefreshMode partial non Si vous pointez vers un service WMS, seul onStop est pris en charge pour les superpositions de sol. Ajoute BBOX={bboxWest},{bboxSouth},{bboxEast},{bboxNorth} à l’URL et se met à jour au fur et à mesure des déplacements de la carte.
visibility Oui oui
west oui oui
when oui oui
width oui Oui

Éléments GeoRSS

Le module d’E/S spatiales prend en charge les éléments GeoRSS suivants.

Nom de l’élément Lire Write Notes
atom:author Oui oui
atom:category oui oui
atom:content oui oui
atom:contributor oui oui
atom:email oui oui
atom:entry oui oui
atom:feed oui oui
atom:icon oui oui
atom:id oui oui
atom:link oui oui
atom:logo oui oui
atom:name oui oui
atom:published oui oui
atom:rights oui oui
atom:source oui oui
atom:subtitle oui oui
atom:summary oui oui
atom:title oui oui
atom:updated oui oui
atom:uri oui oui
geo:lat oui non Écrit sous la forme d’un georss:point.
geo:lon Oui non Écrit sous la forme d’un georss:point.
geo:long Oui non Écrit sous la forme d’un georss:point.
georss:box Oui non Lu comme un polygone et doté d’une propriété subType de « Rectangle ».
georss:circle Oui oui
georss:elev oui oui
georss:featurename oui oui
georss:featuretypetag oui oui
georss:floor oui oui
georss:line oui oui
georss:point oui oui
georss:polygon oui oui
georss:radius oui oui
georss:relationshiptag oui oui
georss:where oui oui
geourl:latitude oui non Écrit sous la forme d’un georss:point.
geourl:longitude Oui non Écrit sous la forme d’un georss:point.
position Oui non Certains flux XML enveloppent GML avec une balise de position au lieu de l’envelopper avec une balise georss:where. Lisez cette balise, mais écrivez à l’aide d’une balise georss:where.
rss Oui non GeoRSS écrit au format ATOM.
rss:author Oui partial Écrit sous la forme d’un atom:author.
rss:category Oui partial Écrit sous la forme d’un atom:category.
rss:channel Oui non
rss:cloud Oui non
rss:comments Oui non
rss:copyright Oui partial Écrit comme un atom:rights si la forme n’avait pas déjà une propriété rights properties.
rss:description Oui partial Écrit comme un atom:content si la forme n’avait pas déjà une propriété content properties.
rss:docs Oui non
rss:enclosure Oui non
rss:generator Oui non
rss:guid Oui partial Écrit comme un atom:id si la forme n’avait pas déjà une propriété id properties.
rss:image Oui partial Écrit comme un atom:logo si la forme n’avait pas déjà une propriété logo properties.
rss:item Oui partial Écrit sous la forme d’un atom:entry.
rss:language Oui non
rss:lastBuildDate Oui partial Écrit comme un atom:updated si la forme n’avait pas déjà une propriété updated properties.
rss:link Oui partial Écrit sous la forme d’un atom:link.
rss:managingEditor Oui partial Écrit sous la forme d’un atom:contributor.
rss:pubDate Oui partial Écrit comme un atom:published si la forme n’avait pas déjà une propriété published properties.
rss:rating Oui non
rss:skipDays Oui non
rss:skipHours Oui non
rss:source Oui partial Écrit sous la forme d’un atom:source contenant un atom:link.
rss:textInput Oui non
rss:title Oui partial Écrit sous la forme d’un atom:title.
rss:ttl Oui non
rss:webMaster Oui non

Éléments GML

Le module d’E/S spatiales prend en charge les éléments GML suivants.

Nom de l’élément Lire Write Notes
gml:coordinates Oui non Écrit sous la forme d’un gml:posList.
gml:curveMember Oui non
gml:curveMembers Oui non
gml:Box Oui non Écrit sous la forme d’un gml:Envelope.
gml:description Oui oui
gml:Envelope oui oui
gml:exterior oui oui
gml:Feature oui non Écrit comme une forme.
gml:FeatureCollection Oui non Écrit sous la forme d’une collection de géométries.
gml:featureMember Oui non Écrit sous la forme d’une collection de géométries.
gml:geometry Oui non Écrit comme une forme.
gml:geometryMember Oui oui
gml:geometryMembers oui oui
gml:identifier oui oui
gml:innerBoundaryIs oui non Écrit à l’aide de gml.interior.
gml:interior Oui oui
gml:LinearRing oui oui
gml:LineString oui oui
gml:lineStringMember oui oui
gml:lineStringMembers oui non
gml:MultiCurve Oui non Lit uniquement les membres de gml:LineString. Écrit sous la forme d’un gml.MultiLineString.
gml:MultiGeometry partial partial Lecture uniquement en tant que FeatureCollection.
gml:MultiLineString Oui oui
gml:MultiPoint oui oui
gml:MultiPolygon oui oui
gml:MultiSurface oui non Lit uniquement les membres de gml:Polygon. Écrit sous la forme d’un gml.MultiPolygon.
gml:name Oui oui
gml:outerBoundaryIs oui non Écrit à l’aide de gml.exterior.
gml:Point Oui oui
gml:pointMember oui oui
gml:pointMembers oui non
gml:Polygon oui oui
gml:polygonMember oui oui
gml:polygonMembers oui non
gml:pos oui oui
gml:posList oui oui
gml:surfaceMember oui Oui

Autres remarques

  • Les éléments membres sont examinés à la recherche d'une géométrie qui peut être enfouie dans les éléments enfants. Cette opération de recherche est nécessaire, car de nombreux formats XML qui s’étendent à partir de GML peuvent ne pas placer une géométrie en tant qu’enfant direct d’un élément membre.
  • srsName est partiellement pris en charge pour les coordonnées WGS84 et les codes suivants :EPSG:4326 et web Mercator (EPSG:3857 ou l’un de ses autres codes). Tout autre système de coordonnées est analysé en tant que WGS84 en l’état.
  • À moins d’être spécifié lors de la lecture d’un flux XML, l’ordre de l’axe est déterminé en fonction des indications dans le flux XML. Une préférence est donnée pour l’ordre de l’axe « Latitude, longitude ».
  • À moins qu’un espace de noms GML personnalisé ne soit spécifié pour les propriétés lors de l’écriture dans un fichier GML, les informations de propriété supplémentaires ne seront pas ajoutées.

Éléments GPX

Le module d’E/S spatiales prend en charge les éléments GPX suivants.

Nom de l’élément Lire Write Notes
gpx:ageofdgpsdata Oui oui
gpx:author oui oui
gpx:bounds oui Oui Converti en LocationRect lors de la lecture.
gpx:cmt Oui oui
gpx:copyright oui oui
gpx:desc oui Oui Copié dans une propriété Description lors de la lecture pour s’aligner avec d’autres formats XML.
gpx:dgpsid Oui oui
gpx:ele oui Oui
gpx:extensions partial partial Lors de la lecture, les informations de style sont extraites. Toutes les autres extensions seront aplaties en objet JSON simple. Seules les informations de style de la forme sont écrites.
gpx:geoidheight Oui oui
gpx:gpx oui oui
gpx:hdop oui oui
gpx:link oui oui
gpx:magvar oui oui
gpx:metadata oui oui
gpx:name oui oui
gpx:pdop oui oui
gpx:rte oui oui
gpx:rtept oui oui
gpx:sat oui oui
gpx:src oui oui
gpx:sym oui Oui La valeur est capturée, mais elle n’est pas utilisée pour modifier l’icône de punaise.
gpx:text Oui oui
gpx:time oui oui
gpx:trk oui oui
gpx:trkpt oui oui
gpx:trkseg oui oui
gpx:type oui oui
gpx:vdop oui oui
gpx:wpt oui oui
gpx_style:color oui Oui
gpx_style:line partial partial color, opacity, width et lineCap sont pris en charge.
gpx_style:opacity Oui oui
gpx_style:width oui oui
gpxx:DisplayColor oui non Utilisé pour spécifier la couleur d’une forme. En cas d’écriture, la couleur gpx_style:line est utilisée à la place.
gpxx:RouteExtension partial non Toutes les propriétés sont lues dans properties. Seul DisplayColor est utilisé.
gpxx:TrackExtension partial non Toutes les propriétés sont lues dans properties. Seul DisplayColor est utilisé.
gpxx:WaypointExtension partial non Toutes les propriétés sont lues dans properties. Seul DisplayColor est utilisé.
gpx:keywords Oui oui
gpx:fix oui Oui

Autres remarques

Lors de l’écriture ;

  • Multipoints est divisé en points de cheminement individuels.
  • Les polygones et les multipolygones sont écrits sous forme de pistes.

Types de géométrie Well Known Text pris en charge

Type de géométrie Lire Write
POINT x x
POINT Z x x
POINT M x x[2]
POINT ZM x[1][2]
LINESTRING x x
LINESTRING Z x x
LINESTRING M x x[2]
LINESTRING ZM x[1][2]
POLYGON x x
POLYGON Z x x
POLYGON M x x[2]
POLYGON ZM x[1][2]
MULTIPOINT x x
MULTIPOINT Z x x
MULTIPOINT M x x[2]
POMULTIPOINTINT ZM x[1][2]
MULTILINESTRING x x
MULTILINESTRING Z x x
MULTILINESTRING M x x[2]
MULTILINESTRING ZM x[1][2]
MULTIPOLYGON x x
MULTIPOLYGON Z x x
MULTIPOLYGON M x x[2]
MULTIPOLYGON ZM x[1][2]
GEOMETRYCOLLECTION x x
GEOMETRYCOLLECTION Z x x
GEOMETRYCOLLECTION M x x[2]
GEOMETRYCOLLECTION ZM x[1][2] x

[1] Seul le paramètre Z est capturé et ajouté en tant que troisième valeur dans la valeur Position.

[2] Le paramètre M n’est pas capturé.

Prise en charge des données spatiales délimitées

Les données spatiales délimitées, telles que les fichiers de valeurs séparées par des virgules (CSV), ont souvent des colonnes qui contiennent des données spatiales. Par exemple, il peut y avoir des colonnes qui contiennent des informations de latitude et de longitude. Dans un format Well Known Text, il peut y avoir une colonne qui contient des données géométriques spatiales.

Détection de colonne de données spatiales

Lors de la lecture d’un fichier délimité qui contient des données spatiales, l’en-tête est analysé pour déterminer quelles colonnes contiennent des champs d’emplacement. Si l’en-tête contient des informations de type, il sera utilisé pour caster les valeurs de cellule vers le type approprié. Si aucun en-tête n’est spécifié, la première ligne est analysée et utilisée pour générer un en-tête. Lors de l’analyse de la première ligne, un contrôle est exécuté pour faire correspondre les noms de colonnes avec les noms suivants sans respecter la casse. L’ordre des noms correspond à la priorité, au cas où plusieurs noms existent dans un fichier.

Latitude

  • latitude
  • lat
  • latdd
  • lat_dd
  • latitude83
  • latdecdeg
  • y
  • ycenter
  • point-y

Longitude

  • longitude
  • lon
  • lng
  • long
  • longdd
  • long_dd
  • longitude83
  • longdecdeg
  • x
  • xcenter
  • point-x

Elevation

  • elevation
  • elv
  • altitude
  • alt
  • z

Geography

La première ligne de données sera analysée pour rechercher les chaînes qui sont au format Well-Known Text.

Types de colonnes des données délimitées

Lors de l’analyse de la ligne d’en-tête, toutes les informations de type qui se trouvent dans le nom de la colonne sont extraites et utilisées pour caster les cellules de cette colonne. Voici un exemple d’un nom de colonne qui a une valeur de type : « ColumnName (typeName) ». Les noms de types suivants ne respectant pas la casse sont pris en charge :

Nombres

  • edm.int64
  • int
  • long
  • edm.double
  • float
  • double
  • nombre

valeurs booléennes

  • edm.boolean
  • bool
  • boolean

Dates

  • edm.datetime
  • Date
  • DATETIME

Geography

  • edm.geography
  • Geography

Chaînes

  • edm.string
  • varchar
  • text
  • string

Si aucune information de type ne peut être extraite de l’en-tête et que l’option de typage dynamique est activée lors de la lecture, alors chaque cellule est analysée individuellement pour déterminer le type de données le mieux adapté au cast.

Étapes suivantes

Pour obtenir plus d’exemples de code à ajouter à vos cartes, consultez les articles suivants :

Lire et écrire des données spatiales