Szczegóły obsługiwanego formatu danych
Ten artykuł zawiera szczegółowe informacje dotyczące obsługi odczytu i zapisu dla wszystkich tagów XML i Well-Known typów geometrii tekstu. Szczegółowe informacje o tym, jak rozdzielane dane przestrzenne są analizowane w module operacji we/wy przestrzennego.
Obsługiwane przestrzenie nazw XML
Moduł przestrzennego we/wy obsługuje tagi XML z następujących przestrzeni nazw.
Prefiks przestrzeni nazw | Identyfikator URI przestrzeni nazw | Uwagi |
---|---|---|
atom |
http://www.w3.org/2005/Atom |
|
geo |
http://www.w3.org/2003/01/geo/wgs84_pos# |
Obsługa tylko do odczytu w plikach GeoRSS. |
georss |
http://www.georss.org/georss |
|
geourl |
http://geourl.org/rss/module/ |
Obsługa tylko do odczytu w plikach GeoRSS. |
gml |
http://www.opengis.net/gml |
|
gpx |
http://www.topografix.com/GPX/1/1 |
|
gpxx |
http://www.garmin.com/xmlschemas/GpxExtensions/v3 |
Obsługa tylko do odczytu w plikach GPX. Analizuje i używa metody DisplayColor. Wszystkie inne właściwości dodane do metadanych kształtu. |
gpx_style |
http://www.topografix.com/GPX/gpx_style/0/2 |
Obsługiwane w plikach GPX. Używa koloru linii. |
gx |
http://www.google.com/kml/ext/2.2 |
|
kml |
http://www.opengis.net/kml/2.2 |
|
rss |
Tylko do odczytu. Funkcja GeoRSS zapisuje przy użyciu formatu Atom. |
Obsługiwane elementy XML
Przestrzenny moduł we/wy obsługuje następujące elementy XML. Wszystkie nieobsługiwane tagi XML są konwertowane na obiekt JSON. Następnie każdy tag jest dodawany jako właściwość w properties
polu nadrzędnego kształtu lub warstwy.
Elementy KML
Przestrzenny moduł we/wy obsługuje następujące elementy KML.
Nazwa elementu | Odczyt | Zapisywanie | Uwagi |
---|---|---|---|
address |
partial | tak | Obiekt jest analizowany, ale nie jest używany do pozycjonowania kształtu. |
AddressDetails |
partial | nie | Obiekt jest analizowany, ale nie jest używany do pozycjonowania kształtu. |
atom:author |
tak | tak | |
atom:link |
tak | tak | |
atom:name |
tak | tak | |
BalloonStyle |
partial | partial | displayMode nie jest obsługiwany. Przekonwertowane na element PopupTemplate . Aby napisać, dodaj popupTemplate właściwość jako właściwość funkcji, dla której chcesz ją napisać. |
begin |
tak | tak | |
color |
tak | tak | Obejmuje #AABBGGRR elementy i #BBGGRR . Analizowanie w ciągu koloru CSS |
colorMode |
tak | nie | |
coordinates |
tak | tak | |
Data |
tak | tak | |
description |
tak | tak | |
displayName |
tak | tak | |
Document |
tak | tak | |
drawOrder |
partial | nie | Odczytaj nakładki naziemne i posortuj je. |
east |
tak | tak | |
end |
tak | tak | |
ExtendedData |
tak | tak | Obsługuje nietypowe Data SimpleData zamiany jednostek , lub Schema i formularza $[dataName] . |
extrude |
partial | partial | Obsługiwane tylko w przypadku wielokątów. MultiGeometry, które mają wielokąty o różnych wysokościach, są podzielone na poszczególne cechy. Style linii nie są obsługiwane. Wielokąty o wysokości 0 są renderowane jako płaski wielokąt. Podczas czytania wysokość pierwszej współrzędnej w pierścieniu zewnętrznym jest dodawana jako właściwość wysokości wielokąta. Następnie wysokość pierwszej współrzędnej jest używana do renderowania wielokąta na mapie. |
fill |
tak | tak | |
Folder |
tak | tak | |
GroundOverlay |
tak | tak | color nie jest obsługiwana |
heading |
partial | nie | Przeanalizowane, ale nie renderowane przez SimpleDataLayer . Zapisuje tylko wtedy, gdy dane są przechowywane we właściwości kształtu. |
hotSpot |
tak | partial | Zapisuje tylko wtedy, gdy dane są przechowywane we właściwości kształtu. Jednostki są zwracane tylko jako "piksele". |
href |
tak | tak | |
Icon |
partial | partial | Przeanalizowane, ale nie renderowane przez SimpleDataLayer . Zapisuje właściwość ikony kształtu tylko wtedy, gdy zawiera dane identyfikatora URI. Obsługiwany jest tylko warunek href . |
IconStyle |
partial | partial | icon wartości , heading , colorMode i hotspots są analizowane, ale nie są renderowane przez SimpleDataLayer |
innerBoundaryIs |
tak | tak | |
kml |
tak | tak | |
LabelStyle |
nie | nie | |
LatLonBox |
tak | tak | |
gx:LatLonQuad |
tak | tak | |
LinearRing |
tak | tak | |
LineString |
tak | tak | |
LineStyle |
tak | tak | colorMode nie jest obsługiwany. |
Link |
tak | nie | Tylko właściwość jest obsługiwana href w przypadku łączy sieciowych. |
MultiGeometry |
partial | partial | Podczas odczytywania mogą być podzielone na poszczególne funkcje. |
name |
tak | tak | |
NetworkLink |
tak | nie | Łącza muszą znajdować się w tej samej domenie co dokument. |
NetworkLinkControl |
nie | nie | |
north |
tak | tak | |
open |
tak | tak | |
outerBoundaryIs |
tak | tak | |
outline |
tak | tak | |
overlayXY |
nie | nie | |
Pair |
partial | nie | normal Obsługiwany jest tylko styl w obiekcie StyleMap . highlight nie jest obsługiwany. |
phoneNumber |
tak | tak | |
PhotoOverlay |
nie | nie | |
Placemark |
tak | tak | |
Point |
tak | tak | |
Polygon |
tak | tak | |
PolyStyle |
tak | tak | |
Region |
partial | partial | LatLongBox program jest obsługiwany na poziomie dokumentu. |
rotation |
nie | nie | |
rotationXY |
nie | nie | |
scale |
nie | nie | |
Schema |
tak | tak | |
SchemaData |
tak | tak | |
schemaUrl |
partial | tak | Nie obsługuje ładowania stylów z dokumentów zewnętrznych, które nie są uwzględnione w kmz. |
ScreenOverlay |
nie | nie | |
screenXY |
nie | nie | |
SimpleData |
tak | tak | |
SimpleField |
tak | tak | |
size |
nie | nie | |
Snippet |
partial | partial | maxLines Atrybut jest ignorowany. |
south |
tak | tak | |
Style |
tak | tak | |
StyleMap |
partial | nie | Obsługiwany jest tylko normalny styl w obiekcie StyleMap . |
styleUrl |
partial | tak | Adresy URL stylu zewnętrznego nie są obsługiwane. |
text |
tak | tak | Zamiana nie jest obsługiwana $[geDirections] |
textColor |
tak | tak | |
TimeSpan |
tak | tak | |
TimeStamp |
tak | tak | |
value |
tak | tak | |
viewRefreshMode |
partial | nie | W przypadku wskazywania usługi WMS obsługiwane są tylko onStop nakładki naziemne. BBOX={bboxWest},{bboxSouth},{bboxEast},{bboxNorth} Dołącza do adresu URL i aktualizuje się w miarę poruszania się mapy. |
visibility |
tak | tak | |
west |
tak | tak | |
when |
tak | tak | |
width |
tak | tak |
Elementy geoRSS
Przestrzenny moduł we/wy obsługuje następujące elementy GeoRSS.
Nazwa elementu | Odczyt | Zapisywanie | Uwagi |
---|---|---|---|
atom:author |
tak | tak | |
atom:category |
tak | tak | |
atom:content |
tak | tak | |
atom:contributor |
tak | tak | |
atom:email |
tak | tak | |
atom:entry |
tak | tak | |
atom:feed |
tak | tak | |
atom:icon |
tak | tak | |
atom:id |
tak | tak | |
atom:link |
tak | tak | |
atom:logo |
tak | tak | |
atom:name |
tak | tak | |
atom:published |
tak | tak | |
atom:rights |
tak | tak | |
atom:source |
tak | tak | |
atom:subtitle |
tak | tak | |
atom:summary |
tak | tak | |
atom:title |
tak | tak | |
atom:updated |
tak | tak | |
atom:uri |
tak | tak | |
geo:lat |
tak | nie | Napisane jako georss:point . |
geo:lon |
tak | nie | Napisane jako georss:point . |
geo:long |
tak | nie | Napisane jako georss:point . |
georss:box |
tak | nie | Odczytaj jako wielokąt i nadaj subType mu właściwość "Prostokąt" |
georss:circle |
tak | tak | |
georss:elev |
tak | tak | |
georss:featurename |
tak | tak | |
georss:featuretypetag |
tak | tak | |
georss:floor |
tak | tak | |
georss:line |
tak | tak | |
georss:point |
tak | tak | |
georss:polygon |
tak | tak | |
georss:radius |
tak | tak | |
georss:relationshiptag |
tak | tak | |
georss:where |
tak | tak | |
geourl:latitude |
tak | nie | Napisane jako georss:point . |
geourl:longitude |
tak | nie | Napisane jako georss:point . |
position |
tak | nie | Niektóre źródła danych XML opakowują język GML za pomocą tagu pozycji zamiast opakowywać je tagiem georss:where . Odczytaj ten tag, ale zapisuje go przy użyciu tagu georss:where . |
rss |
tak | nie | GeoRSS napisany w formacie ATOM. |
rss:author |
tak | partial | Napisany jako .atom:author |
rss:category |
tak | partial | Napisany jako .atom:category |
rss:channel |
tak | nie | |
rss:cloud |
tak | nie | |
rss:comments |
tak | nie | |
rss:copyright |
tak | partial | Zapisane jako atom:rights kształt, jeśli nie ma rights properties jeszcze właściwości. |
rss:description |
tak | partial | Zapisane jako atom:content kształt, jeśli nie ma content properties jeszcze właściwości. |
rss:docs |
tak | nie | |
rss:enclosure |
tak | nie | |
rss:generator |
tak | nie | |
rss:guid |
tak | partial | Zapisane jako atom:id kształt, jeśli nie ma id properties jeszcze właściwości. |
rss:image |
tak | partial | Zapisane jako atom:logo kształt, jeśli nie ma logo properties jeszcze właściwości. |
rss:item |
tak | partial | Napisany jako .atom:entry |
rss:language |
tak | nie | |
rss:lastBuildDate |
tak | partial | Zapisane jako atom:updated kształt, jeśli nie ma updated properties jeszcze właściwości. |
rss:link |
tak | partial | Napisany jako .atom:link |
rss:managingEditor |
tak | partial | Napisany jako .atom:contributor |
rss:pubDate |
tak | partial | Zapisane jako atom:published kształt, jeśli nie ma published properties jeszcze właściwości. |
rss:rating |
tak | nie | |
rss:skipDays |
tak | nie | |
rss:skipHours |
tak | nie | |
rss:source |
tak | partial | Napisany jako element atom:source zawierający atom:link element . |
rss:textInput |
tak | nie | |
rss:title |
tak | partial | Napisany jako .atom:title |
rss:ttl |
tak | nie | |
rss:webMaster |
tak | nie |
Elementy GML
Przestrzenny moduł we/wy obsługuje następujące elementy GML.
Nazwa elementu | Odczyt | Zapisywanie | Uwagi |
---|---|---|---|
gml:coordinates |
tak | nie | Napisane jako gml:posList . |
gml:curveMember |
tak | nie | |
gml:curveMembers |
tak | nie | |
gml:Box |
tak | nie | Napisane jako gml:Envelope . |
gml:description |
tak | tak | |
gml:Envelope |
tak | tak | |
gml:exterior |
tak | tak | |
gml:Feature |
tak | nie | Napisane jako kształt. |
gml:FeatureCollection |
tak | nie | Napisane jako kolekcja geometrii. |
gml:featureMember |
tak | nie | Napisane jako kolekcja geometrii. |
gml:geometry |
tak | nie | Napisane jako kształt. |
gml:geometryMember |
tak | tak | |
gml:geometryMembers |
tak | tak | |
gml:identifier |
tak | tak | |
gml:innerBoundaryIs |
tak | nie | Napisane przy użyciu polecenia gml.interior . |
gml:interior |
tak | tak | |
gml:LinearRing |
tak | tak | |
gml:LineString |
tak | tak | |
gml:lineStringMember |
tak | tak | |
gml:lineStringMembers |
tak | nie | |
gml:MultiCurve |
tak | nie | Odczytuje gml:LineString tylko członków. Zapisane jako gml.MultiLineString |
gml:MultiGeometry |
partial | partial | Tylko odczytane jako featureCollection. |
gml:MultiLineString |
tak | tak | |
gml:MultiPoint |
tak | tak | |
gml:MultiPolygon |
tak | tak | |
gml:MultiSurface |
tak | nie | Odczytuje gml:Polygon tylko członków. Zapisane jako gml.MultiPolygon |
gml:name |
tak | tak | |
gml:outerBoundaryIs |
tak | nie | Napisane przy użyciu polecenia gml.exterior . |
gml:Point |
tak | tak | |
gml:pointMember |
tak | tak | |
gml:pointMembers |
tak | nie | |
gml:Polygon |
tak | tak | |
gml:polygonMember |
tak | tak | |
gml:polygonMembers |
tak | nie | |
gml:pos |
tak | tak | |
gml:posList |
tak | tak | |
gml:surfaceMember |
tak | tak |
Więcej notatek
- Elementy składowe są wyszukiwane pod kątem geometrii, która może zostać pochowana w elementach podrzędnych. Ta operacja wyszukiwania jest niezbędna, ponieważ wiele formatów XML, które rozciągają się od języka GML, może nie umieszczać geometrii jako bezpośredniego elementu podrzędnego elementu członkowskiego.
srsName
Jest częściowo obsługiwany dla współrzędnych WGS84 i następujących kodów:EPSG:4326) i web Mercator (EPSG:3857 lub jeden z jego alternatywnych kodów. Każdy inny system współrzędnych jest analizowany jako WGS84 zgodnie z oczekiwaniami.- Jeśli nie zostanie określony podczas odczytywania źródła danych XML, kolejność osi jest określana na podstawie wskazówek w kanale informacyjnym XML. Preferencja jest przyznawana dla kolejności osi "szerokość geograficzna, długość geograficzna".
- Jeśli nie określono niestandardowej przestrzeni nazw GML dla właściwości podczas zapisywania w pliku GML, inne informacje o właściwości nie są dodawane.
Elementy GPX
Moduł we/wy przestrzenne obsługuje następujące elementy GPX.
Nazwa elementu | Odczyt | Zapisywanie | Uwagi |
---|---|---|---|
gpx:ageofdgpsdata |
tak | tak | |
gpx:author |
tak | tak | |
gpx:bounds |
tak | tak | Przekonwertowano na element LocationRect podczas odczytu. |
gpx:cmt |
tak | tak | |
gpx:copyright |
tak | tak | |
gpx:desc |
tak | tak | Skopiowano do właściwości opisu podczas odczytu w celu wyrównania do innych formatów XML. |
gpx:dgpsid |
tak | tak | |
gpx:ele |
tak | tak | |
gpx:extensions |
partial | partial | Podczas odczytu wyodrębniane są informacje o stylu. Wszystkie inne rozszerzenia są spłaszczone w prosty obiekt JSON. Zapisywane są tylko informacje o stylu kształtu. |
gpx:geoidheight |
tak | tak | |
gpx:gpx |
tak | tak | |
gpx:hdop |
tak | tak | |
gpx:link |
tak | tak | |
gpx:magvar |
tak | tak | |
gpx:metadata |
tak | tak | |
gpx:name |
tak | tak | |
gpx:pdop |
tak | tak | |
gpx:rte |
tak | tak | |
gpx:rtept |
tak | tak | |
gpx:sat |
tak | tak | |
gpx:src |
tak | tak | |
gpx:sym |
tak | tak | Wartość jest przechwytywana, ale nie jest używana do zmiany ikony pinezki. |
gpx:text |
tak | tak | |
gpx:time |
tak | tak | |
gpx:trk |
tak | tak | |
gpx:trkpt |
tak | tak | |
gpx:trkseg |
tak | tak | |
gpx:type |
tak | tak | |
gpx:vdop |
tak | tak | |
gpx:wpt |
tak | tak | |
gpx_style:color |
tak | tak | |
gpx_style:line |
partial | partial | color , , opacity width , lineCap są obsługiwane. |
gpx_style:opacity |
tak | tak | |
gpx_style:width |
tak | tak | |
gpxx:DisplayColor |
tak | nie | Służy do określania koloru kształtu. W przypadku pisania gpx_style:line zamiast tego jest używany kolor. |
gpxx:RouteExtension |
partial | nie | Wszystkie właściwości są odczytywane do elementu properties . Jest używany tylko DisplayColor . |
gpxx:TrackExtension |
partial | nie | Wszystkie właściwości są odczytywane do elementu properties . Jest używany tylko DisplayColor . |
gpxx:WaypointExtension |
partial | nie | Wszystkie właściwości są odczytywane do elementu properties . Jest używany tylko DisplayColor . |
gpx:keywords |
tak | tak | |
gpx:fix |
tak | tak |
Więcej notatek
Podczas pisania;
- Punkty MultiPoint są podzielone na poszczególne punkty waypoint.
- Wielokąty i MultiPolygony są zapisywane jako ścieżki.
Obsługiwane typy geometrii tekstu Well-Known
Typ geometrii | Odczyt | Zapisywanie |
---|---|---|
PUNKT | x | x |
PUNKT Z | x | x |
PUNKT M | x | x[2] |
PUNKT ZM | x[1][2] | |
LINESTRING | x | x |
LINESTRING Z | x | x |
LINESTRING M | x | x[2] |
LINESTRING ZM | x[1][2] | |
WIELOKĄT | x | x |
WIELOKĄT Z | x | x |
WIELOKĄT M | x | x[2] |
WIELOKĄT 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 |
WIELOWIERSZOWE 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] Tylko parametr Z jest przechwytywany i dodawany jako trzecia wartość w wartości Pozycji.
[2] Parametr M nie jest przechwytywany.
Obsługa rozdzielonych danych przestrzennych
Rozdzielane dane przestrzenne, takie jak pliki wartości rozdzielane przecinkami (CSV), często zawierają kolumny zawierające dane przestrzenne. Na przykład mogą istnieć kolumny zawierające informacje o szerokości geograficznej i długości geograficznej. W formacie Well-Known Tekst może istnieć kolumna zawierająca dane geometrii przestrzennej.
Wykrywanie kolumn danych przestrzennych
Podczas odczytywania pliku rozdzielanego zawierającego dane przestrzenne nagłówek jest analizowany w celu określenia, które kolumny zawierają pola lokalizacji. Jeśli nagłówek zawiera informacje o typie, służy do rzutowania wartości komórek do odpowiedniego typu. Jeśli nie określono nagłówka, pierwszy wiersz jest analizowany w celu wygenerowania nagłówka. Podczas analizowania pierwszego wiersza jest wykonywane sprawdzanie w celu dopasowania nazw kolumn z następującymi nazwami w sposób bez uwzględniania wielkości liter. Kolejność nazw jest priorytetem, jeśli w pliku istnieje co najmniej dwie nazwy.
Szerokość geograficzna
latitude
lat
latdd
lat_dd
latitude83
latdecdeg
y
ycenter
point-y
Długość geograficzna
longitude
lon
lng
long
longdd
long_dd
longitude83
longdecdeg
x
xcenter
point-x
Podniesienie uprawnień
elevation
elv
altitude
alt
z
Lokalizacja geograficzna
Pierwszy wiersz danych jest skanowany pod kątem ciągów, które są w formacie Well-Known Tekst.
Rozdzielane typy kolumn danych
Podczas skanowania wiersza nagłówka wszystkie informacje o typie w nazwie kolumny są wyodrębniane i używane do rzutowania komórek w tej kolumnie. Oto przykład nazwy kolumny, która ma wartość typu: "ColumnName (typeName)". Obsługiwane są następujące nazwy typów bez uwzględniania wielkości liter:
Liczby
- edm.int64
- int
- długi
- edm.double
- float
- double
- liczba
Wartości logiczne
- edm.boolean
- bool
- boolean
Daty
- edm.datetime
- data
- datetime
Lokalizacja geograficzna
- edm.geography
- Geografia
Ciągi
- edm.string
- varchar
- tekst
- ciąg
Jeśli nie można wyodrębnić informacji o typie z nagłówka, a opcja dynamicznego wpisywania jest włączona podczas odczytywania, każda komórka jest indywidualnie analizowana w celu określenia, jaki typ danych najlepiej nadaje się do rzutowania.
Następne kroki
Aby uzyskać więcej przykładów kodu, zobacz następujące artykuły, aby dodać je do map: