Condividi tramite


Dettagli sul formato dati supportato

Questo articolo fornisce informazioni specifiche sul supporto di lettura e scrittura per tutti i tag XML e i tipi di geometria testo noti. Illustra anche come vengono analizzati i dati spaziali delimitati nel modulo di I/O spaziale.

Spazi dei nomi XML supportati

Il modulo di I/O spaziale supporta i tag XML dagli spazi dei nomi seguenti.

Prefisso spazio dei nomi URI dello spazio dei nomi Note
atom http://www.w3.org/2005/Atom
geo http://www.w3.org/2003/01/geo/wgs84_pos# Supporto di sola lettura nei file GeoRSS.
georss http://www.georss.org/georss
geourl http://geourl.org/rss/module/ Supporto di sola lettura nei file GeoRSS.
gml http://www.opengis.net/gml
gpx http://www.topografix.com/GPX/1/1
gpxx http://www.garmin.com/xmlschemas/GpxExtensions/v3 Supporto di sola lettura nei file GPX. Analizza e usa DisplayColor. Tutte le altre proprietà aggiunte ai metadati della forma.
gpx_style http://www.topografix.com/GPX/gpx_style/0/2 Supportato nei file GPX. Usa il colore della linea.
gx http://www.google.com/kml/ext/2.2
kml http://www.opengis.net/kml/2.2
rss Sola lettura. Scritture GeoRSS tramite il formato Atom.

Elementi XML supportati

Il modulo di I/O spaziale supporta gli elementi XML seguenti. Tutti i tag XML non supportati vengono convertiti in un oggetto JSON. Ogni tag viene quindi aggiunto come proprietà nel campo properties della forma o del livello padre.

Elementi KML

Il modulo di I/O spaziale supporta gli elementi KML seguenti.

Nome elemento Lettura Scrittura Note
address partial yes L'oggetto viene analizzato ma non viene usato per il posizionamento della forma.
AddressDetails partial no L'oggetto viene analizzato ma non viene usato per il posizionamento della forma.
atom:author yes
atom:link
atom:name yes
BalloonStyle partial partial displayMode non è supportata. Convertito in un PopupTemplate. Per scrivere, aggiungere una proprietà popupTemplate come proprietà della funzionalità per cui la si vuole scrivere.
begin yes
color yes Include #AABBGGRR e #BBGGRR. Analizzato in una stringa di colori CSS
colorMode yes no
coordinates yes
Data
description
displayName
Document yes
drawOrder partial no Letto per le sovrapposizioni a terra e usato per ordinarle.
east yes
end
ExtendedData yes Supporta sostituzioni di Data, SimpleData o Schema non tipizzate e dell'entità del modulo $[dataName].
extrude partial partial Supportato solo per i poligoni. La multigeometria con poligoni di altezze diverse è suddivisa in singole funzionalità. Gli stili di linea non sono supportati. I poligoni con altitudine pari a 0 vengono sottoposti a rendering come poligoni piatti. Durante la lettura, l'altitudine della prima coordinata nell'anello esterno viene aggiunta come proprietà altezza del poligono. Quindi, l'altitudine della prima coordinata viene usata per eseguire il rendering del poligono sulla mappa.
fill yes
Folder
GroundOverlay yes color non è supportato
heading partial no Analizzato ma non sottoposto a rendering da SimpleDataLayer. Scrive solo se i dati vengono archiviati nella proprietà della forma.
hotSpot yes partial Scrive solo se i dati vengono archiviati nella proprietà della forma. Le unità vengono restituite solo come "pixel".
href yes yes
Icon partial partial Analizzato ma non sottoposto a rendering da SimpleDataLayer. Scrive solo la proprietà icona della forma se contiene dati URI. È supportato solo href.
IconStyle partial partial I valori icon, heading, colorMode e hotspots vengono analizzati ma non vengono sottoposti a rendering da SimpleDataLayer
innerBoundaryIs yes
kml
LabelStyle no no
LatLonBox yes
gx:LatLonQuad
LinearRing
LineString
LineStyle yes colorMode non è supportata.
Link yes no Solo la proprietà href è supportata per i collegamenti di rete.
MultiGeometry partial partial Può essere suddivisa in singole funzionalità durante la lettura.
name yes
NetworkLink no I collegamenti devono trovarsi nello stesso dominio del documento.
NetworkLinkControl no no
north yes
open
outerBoundaryIs
outline
overlayXY no no
Pair partial no È supportato solo lo stile normal in un StyleMap. highlight non è supportata.
phoneNumber yes
PhotoOverlay no no
Placemark yes
Point
Polygon
PolyStyle yes
Region partial partial LatLongBox è supportato a livello di documento.
rotation no no
rotationXY no no
scale no no
Schema yes
SchemaData yes
schemaUrl partial yes Non supporta il caricamento di stili da documenti esterni non inclusi in un KMZ.
ScreenOverlay no no
screenXY no no
SimpleData yes
SimpleField
size no no
Snippet partial partial L'attributo maxLines viene ignorato.
south yes
Style yes
StyleMap partial no È supportato solo lo stile normale in un StyleMap.
styleUrl partial yes Gli URL di stile esterni non sono supportati.
text yes yes La sostituzione di $[geDirections] non è supportata
textColor yes
TimeSpan
TimeStamp
value yes
viewRefreshMode partial no Se punta a un servizio WMS, solo onStop è supportato per le sovrimpressioni a terra. Aggiunge BBOX={bboxWest},{bboxSouth},{bboxEast},{bboxNorth} all'URL e si aggiorna quando la mappa viene spostata.
visibility yes
west
when
width yes

Elementi GeoRSS

Il modulo di I/O spaziale supporta gli elementi GeoRSS seguenti.

Nome elemento Lettura Scrittura Note
atom:author yes
atom:category
atom:content
atom:contributor
atom:email
atom:entry
atom:feed
atom:icon
atom:id
atom:link
atom:logo
atom:name
atom:published
atom:rights
atom:source
atom:subtitle
atom:summary
atom:title
atom:updated
atom:uri
geo:lat no Scritto come georss:point.
geo:lon yes no Scritto come georss:point.
geo:long yes no Scritto come georss:point.
georss:box yes no Letto come poligono e dotato di una proprietà subType di "Rettangolo"
georss:circle yes
georss:elev
georss:featurename
georss:featuretypetag
georss:floor
georss:line
georss:point
georss:polygon
georss:radius
georss:relationshiptag
georss:where
geourl:latitude no Scritto come georss:point.
geourl:longitude yes no Scritto come georss:point.
position yes no Alcuni feed XML incapsulano GML con un tag di posizione invece di eseguire il wrapping con un tag georss:where. Il tag viene letto ma la scrittura viene effettuata tramite un tag georss:where.
rss yes no GeoRSS scritto in formato ATOM.
rss:author yes partial Scritto come atom:author.
rss:category yes partial Scritto come atom:category.
rss:channel yes no
rss:cloud yes no
rss:comments yes no
rss:copyright yes partial Scritto come atom:rights se la forma non ha già una proprietà rights properties.
rss:description yes partial Scritto come atom:content se la forma non ha già una proprietà content properties.
rss:docs yes no
rss:enclosure yes no
rss:generator yes no
rss:guid yes partial Scritto come atom:id se la forma non ha già una proprietà id properties.
rss:image yes partial Scritto come atom:logo se la forma non ha già una proprietà logo properties.
rss:item yes partial Scritto come atom:entry.
rss:language yes no
rss:lastBuildDate yes partial Scritto come atom:updated se la forma non ha già una proprietà updated properties.
rss:link yes partial Scritto come atom:link.
rss:managingEditor yes partial Scritto come atom:contributor.
rss:pubDate yes partial Scritto come atom:published se la forma non ha già una proprietà published properties.
rss:rating yes no
rss:skipDays yes no
rss:skipHours yes no
rss:source yes partial Scritto come atom:source contenente un atom:link.
rss:textInput yes no
rss:title yes partial Scritto come atom:title.
rss:ttl yes no
rss:webMaster yes no

Elementi GML

Il modulo di I/O spaziale supporta gli elementi GML seguenti.

Nome elemento Lettura Scrittura Note
gml:coordinates yes no Scritto come gml:posList.
gml:curveMember yes no
gml:curveMembers yes no
gml:Box yes no Scritto come gml:Envelope.
gml:description yes
gml:Envelope
gml:exterior
gml:Feature no Scritto come forma.
gml:FeatureCollection yes no Scritto come raccolta di geometria.
gml:featureMember yes no Scritto come raccolta di geometria.
gml:geometry yes no Scritto come forma.
gml:geometryMember yes
gml:geometryMembers
gml:identifier
gml:innerBoundaryIs no Scritto con gml.interior.
gml:interior yes
gml:LinearRing
gml:LineString
gml:lineStringMember
gml:lineStringMembers no
gml:MultiCurve yes no Legge solo membri gml:LineString. Scritto come gml.MultiLineString
gml:MultiGeometry partial partial Letto solo come FeatureCollection.
gml:MultiLineString yes
gml:MultiPoint
gml:MultiPolygon
gml:MultiSurface no Legge solo membri gml:Polygon. Scritto come gml.MultiPolygon
gml:name yes
gml:outerBoundaryIs no Scritto con gml.exterior.
gml:Point yes
gml:pointMember
gml:pointMembers no
gml:Polygon yes
gml:polygonMember
gml:polygonMembers no
gml:pos yes
gml:posList
gml:surfaceMember yes

Altre note

  • Gli elementi membro vengono analizzati alla ricerca di una geometria che può trovarsi all'interno di elementi figlio. Questa operazione di ricerca è necessaria perché molti formati XML che si estendono da GML potrebbero non inserire una geometria come elemento figlio diretto di un elemento membro.
  • srsName è parzialmente supportato per le coordinate WGS84 e i codici seguenti:EPSG:4326) e Web Mercator (EPSG:3857 o uno dei relativi codici alternativi. Qualsiasi altro sistema di coordinate viene analizzato come WGS84 così com'è.
  • A meno che non venga specificato durante la lettura di un feed XML, l'ordine degli assi viene determinato in base agli hint nel feed XML. Viene assegnata una preferenza per l'ordine degli assi "latitudine, longitudine".
  • A meno che non venga specificato uno spazio dei nomi GML personalizzato per le proprietà durante la scrittura in un file GML, non vengono aggiunte altre informazioni sulle proprietà.

Elementi GPX

Il modulo di I/O spaziale supporta gli elementi GPX seguenti.

Nome elemento Lettura Scrittura Note
gpx:ageofdgpsdata yes
gpx:author
gpx:bounds yes Convertito in LocationRect durante la lettura.
gpx:cmt yes
gpx:copyright
gpx:desc yes Copiato in una proprietà di descrizione quando viene letto per allinearsi ad altri formati XML.
gpx:dgpsid yes
gpx:ele yes
gpx:extensions partial partial Quando viene letto, vengono estratte le informazioni sullo stile. Tutte le altre estensioni vengono rese flat in un semplice oggetto JSON. Vengono scritte solo le informazioni sullo stile della forma.
gpx:geoidheight yes
gpx:gpx
gpx:hdop
gpx:link
gpx:magvar
gpx:metadata
gpx:name
gpx:pdop
gpx:rte
gpx:rtept
gpx:sat
gpx:src
gpx:sym yes Il valore viene acquisito, ma non viene usato per modificare l'icona della puntina da disegno.
gpx:text yes
gpx:time
gpx:trk
gpx:trkpt
gpx:trkseg
gpx:type
gpx:vdop
gpx:wpt
gpx_style:color yes
gpx_style:line partial partial Sono supportati color, opacity, width e lineCap.
gpx_style:opacity yes
gpx_style:width
gpxx:DisplayColor no Utilizzato per specificare il colore di una forma. Se si scrive, viene invece utilizzato il colore gpx_style:line.
gpxx:RouteExtension partial no Tutte le proprietà vengono lette in properties. Viene usato solo DisplayColor.
gpxx:TrackExtension partial no Tutte le proprietà vengono lette in properties. Viene usato solo DisplayColor.
gpxx:WaypointExtension partial no Tutte le proprietà vengono lette in properties. Viene usato solo DisplayColor.
gpx:keywords yes
gpx:fix yes

Altre note

Durante la scrittura;

  • MultiPoints è suddiviso in singoli punti di tragitto.
  • I valori Polygons e MultiPolygons vengono scritti come tracce.

Tipi di geometria Well-Known Text supportati

Tipo di geometria Lettura Scrittura
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] Solo il parametro Z viene acquisito e aggiunto come terzo valore nel valore Posizione.

[2] Il parametro M non viene acquisito.

Supporto dei dati spaziali delimitati

I dati spaziali delimitati, ad esempio file con valori delimitati da virgole (CSV), spesso contengono colonne con dati spaziali. Ad esempio, potrebbero essere presenti colonne contenenti informazioni sulla latitudine e la longitudine. In formato testo noto potrebbe essere presente una colonna che contiene dati di geometria spaziale.

Rilevamento colonne di dati spaziali

Quando si legge un file delimitato che contiene dati spaziali, l'intestazione viene analizzata per determinare quali colonne contengono campi di posizione. Se l'intestazione contiene informazioni sul tipo, viene usata per eseguire il cast dei valori delle celle al tipo appropriato. Se non viene specificata alcuna intestazione, la prima riga viene analizzata per generarne una. Quando si analizza la prima riga, viene eseguito un controllo di corrispondenza con i nomi di colonna e i nomi seguenti senza distinzione tra maiuscole e minuscole. L'ordine dei nomi è la priorità, nel caso in cui due o più nomi esistano in un file.

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

Elevazione

  • elevation
  • elv
  • altitude
  • alt
  • z

Geografia

La prima riga di dati viene analizzata per individuare le stringhe in formato testo noto.

Tipi di colonne di dati delimitati

Durante l'analisi della riga di intestazione, vengono estratte tutte le informazioni sul tipo nel nome della colonna e vengono usate per eseguire il cast delle celle in tale colonna. Di seguito è riportato un esempio di nome di colonna con un valore di tipo: "ColumnName (typeName)". Sono supportati i nomi dei tipi senza distinzione tra maiuscole e minuscole seguenti:

Numeri

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

Valori booleani

  • edm.boolean
  • bool
  • boolean

Date

  • edm.datetime
  • data
  • datetime

Geografia

  • edm.geography
  • geografia

Stringhe

  • edm.string
  • varchar
  • Testo
  • string

Se non è possibile estrarre informazioni sul tipo dall'intestazione e l'opzione di digitazione dinamica è abilitata durante la lettura, ogni cella viene analizzata singolarmente per determinare il tipo di dati più adatto per il cast.

Passaggi successivi

Per altri esempi di codice da aggiungere alle mappe, vedere gli articoli seguenti:

Leggere e scrivere dati spaziali