支援的資料格式詳細資料
針對所有 XML 標記和已知文字幾何類型的讀取和寫入支援,本文將提供詳細資訊。 本文亦會詳細說明如何在空間 IO 模組中剖析分隔空間資料。
支援的 XML 命名空間
空間 IO 模組支援來自下列命名空間的 XML 標記。
命名空間前置字元 | 命名空間 URI | 備註 |
---|---|---|
atom |
http://www.w3.org/2005/Atom |
|
geo |
http://www.w3.org/2003/01/geo/wgs84_pos# |
GeoRSS 檔案中的唯讀支援。 |
georss |
http://www.georss.org/georss |
|
geourl |
http://geourl.org/rss/module/ |
GeoRSS 檔案中的唯讀支援。 |
gml |
http://www.opengis.net/gml |
|
gpx |
http://www.topografix.com/GPX/1/1 |
|
gpxx |
http://www.garmin.com/xmlschemas/GpxExtensions/v3 |
GPX 檔案中的唯讀支援。 剖析及使用 DisplayColor。 新增至圖形中繼資料的所有其他屬性。 |
gpx_style |
http://www.topografix.com/GPX/gpx_style/0/2 |
支援 GPX 檔案。 使用線條色彩。 |
gx |
http://www.google.com/kml/ext/2.2 |
|
kml |
http://www.opengis.net/kml/2.2 |
|
rss |
唯讀。 GeoRSS 使用 Atom 格式寫入。 |
支援的 XML 元素
空間 IO 模組支援下列 XML 元素。 任何不受支援的 XML 標記都會轉換為 JSON 物件。 然後,每個標記都會新增為父圖形或圖層 properties
欄位中的屬性。
KML 元素
空間 IO 模組支援下列 KML 元素。
元素名稱 | 讀取 | 寫入 | 備註 |
---|---|---|---|
address |
partial | 是 | 已剖析物件,但不會用於定位圖形。 |
AddressDetails |
partial | 否 | 已剖析物件,但不會用於定位圖形。 |
atom:author |
是 | 是 | |
atom:link |
是 | 是 | |
atom:name |
是 | 是 | |
BalloonStyle |
partial | partial | 不支援 displayMode 。 已轉換為 PopupTemplate 。 若要寫入,請將 popupTemplate 屬性新增為您要為其寫入功能的屬性。 |
begin |
是 | 是 | |
color |
是 | 是 | 包含 #AABBGGRR 和 #BBGGRR 。 剖析為 CSS 色彩字串 |
colorMode |
是 | 否 | |
coordinates |
是 | 是 | |
Data |
是 | 是 | |
description |
是 | 是 | |
displayName |
是 | 是 | |
Document |
是 | 是 | |
drawOrder |
partial | 否 | 讀取地面重疊,並用於加以排序。 |
east |
是 | 是 | |
end |
是 | 是 | |
ExtendedData |
是 | 是 | 支援不具類型的 Data 、SimpleData 或 Schema 以及 $[dataName] 格式的實體取代。 |
extrude |
partial | partial | 僅支援多邊形。 具有不同高度之多邊形的 MultiGeometry 會拆分為個別功能。 不支援線條樣式。 高度為 0 的多邊形會轉譯為平面多邊形。 在讀取時,外部環形中第一個座標的高度將會新增為多邊形的高度屬性。 然後,第一個座標的高度會用於在地圖上轉譯多邊形。 |
fill |
是 | 是 | |
Folder |
是 | 是 | |
GroundOverlay |
是 | 是 | 不支援 color |
heading |
partial | 否 | 已剖析但並未由 SimpleDataLayer 轉譯。 只有在資料儲存於圖形屬性時才會寫入。 |
hotSpot |
是 | partial | 只有在資料儲存於圖形屬性時才會寫入。 單位僅作為「像素」輸出。 |
href |
是 | 是 | |
Icon |
partial | partial | 已剖析但並未由 SimpleDataLayer 轉譯。 只有在圖形包含 URI 資料時,才會寫入圖形的圖示屬性。 只支援 href 。 |
IconStyle |
partial | partial | 已剖析 icon 、heading 、colorMode 和 hotspots 值,但不會由 SimpleDataLayer 轉譯 |
innerBoundaryIs |
是 | 是 | |
kml |
是 | 是 | |
LabelStyle |
否 | 否 | |
LatLonBox |
是 | 是 | |
gx:LatLonQuad |
是 | 是 | |
LinearRing |
是 | 是 | |
LineString |
是 | 是 | |
LineStyle |
是 | 是 | 不支援 colorMode 。 |
Link |
是 | 否 | 網路連結僅支援 href 屬性。 |
MultiGeometry |
partial | partial | 在讀取時可能會拆分為個別功能。 |
name |
是 | 是 | |
NetworkLink |
是 | 否 | 連結與文件必須位於相同網域上。 |
NetworkLinkControl |
否 | 否 | |
north |
是 | 是 | |
open |
是 | 是 | |
outerBoundaryIs |
是 | 是 | |
outline |
是 | 是 | |
overlayXY |
否 | 否 | |
Pair |
partial | 否 | 僅支援 StyleMap 中的 normal 樣式。 不支援 highlight 。 |
phoneNumber |
是 | 是 | |
PhotoOverlay |
否 | 否 | |
Placemark |
是 | 是 | |
Point |
是 | 是 | |
Polygon |
是 | 是 | |
PolyStyle |
是 | 是 | |
Region |
partial | partial | LatLongBox 在文件層級獲支援。 |
rotation |
否 | 否 | |
rotationXY |
否 | 否 | |
scale |
否 | 否 | |
Schema |
是 | 是 | |
SchemaData |
是 | 是 | |
schemaUrl |
partial | 是 | 不支援從 KMZ 未涵蓋的外部文件中載入樣式。 |
ScreenOverlay |
否 | 否 | |
screenXY |
否 | 否 | |
SimpleData |
是 | 是 | |
SimpleField |
是 | 是 | |
size |
否 | 否 | |
Snippet |
partial | partial | 會忽略 maxLines 屬性。 |
south |
是 | 是 | |
Style |
是 | 是 | |
StyleMap |
partial | 否 | 僅支援 StyleMap 中的一般樣式。 |
styleUrl |
partial | 是 | 不支援外部樣式 URL。 |
text |
是 | 是 | 不支援取代 $[geDirections] |
textColor |
是 | 是 | |
TimeSpan |
是 | 是 | |
TimeStamp |
是 | 是 | |
value |
是 | 是 | |
viewRefreshMode |
partial | 否 | 如果指向 WMS 服務,則地面重疊僅支援 onStop 。 將 BBOX={bboxWest},{bboxSouth},{bboxEast},{bboxNorth} 附加至 URL,並隨著地圖移動而更新。 |
visibility |
是 | 是 | |
west |
是 | 是 | |
when |
是 | 是 | |
width |
是 | 是 |
GeoRSS 元素
空間 IO 模組支援下列 GeoRSS 元素。
元素名稱 | 讀取 | 寫入 | 備註 |
---|---|---|---|
atom:author |
是 | 是 | |
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 |
是 | 否 | 寫入為 georss:point 。 |
geo:lon |
是 | 否 | 寫入為 georss:point 。 |
geo:long |
是 | 否 | 寫入為 georss:point 。 |
georss:box |
是 | 否 | 讀取為多邊形,並指定「Rectangle」的 subType 屬性 |
georss:circle |
是 | 是 | |
georss:elev |
是 | 是 | |
georss:featurename |
是 | 是 | |
georss:featuretypetag |
是 | 是 | |
georss:floor |
是 | 是 | |
georss:line |
是 | 是 | |
georss:point |
是 | 是 | |
georss:polygon |
是 | 是 | |
georss:radius |
是 | 是 | |
georss:relationshiptag |
是 | 是 | |
georss:where |
是 | 是 | |
geourl:latitude |
是 | 否 | 寫入為 georss:point 。 |
geourl:longitude |
是 | 否 | 寫入為 georss:point 。 |
position |
是 | 否 | 某些 XML 摘要會以位置標記而非 georss:where 標記包裝 GML。 讀取此標籤,但會使用 georss:where 標記寫入。 |
rss |
是 | 否 | 以 ATOM 格式寫入的 GeoRSS。 |
rss:author |
是 | partial | 寫入為 atom:author 。 |
rss:category |
是 | partial | 寫入為 atom:category 。 |
rss:channel |
是 | 否 | |
rss:cloud |
是 | 否 | |
rss:comments |
是 | 否 | |
rss:copyright |
是 | partial | 如果圖形還沒有 rights properties 屬性,則寫入為 atom:rights 。 |
rss:description |
是 | partial | 如果圖形還沒有 content properties 屬性,則寫入為 atom:content 。 |
rss:docs |
是 | 否 | |
rss:enclosure |
是 | 否 | |
rss:generator |
是 | 否 | |
rss:guid |
是 | partial | 如果圖形還沒有 id properties 屬性,則寫入為 atom:id 。 |
rss:image |
是 | partial | 如果圖形還沒有 logo properties 屬性,則寫入為 atom:logo 。 |
rss:item |
是 | partial | 寫入為 atom:entry 。 |
rss:language |
是 | 否 | |
rss:lastBuildDate |
是 | partial | 如果圖形還沒有 updated properties 屬性,則寫入為 atom:updated 。 |
rss:link |
是 | partial | 寫入為 atom:link 。 |
rss:managingEditor |
是 | partial | 寫入為 atom:contributor 。 |
rss:pubDate |
是 | partial | 如果圖形還沒有 published properties 屬性,則寫入為 atom:published 。 |
rss:rating |
是 | 否 | |
rss:skipDays |
是 | 否 | |
rss:skipHours |
是 | 否 | |
rss:source |
是 | partial | 寫入為包含 atom:link 的 atom:source 。 |
rss:textInput |
是 | 否 | |
rss:title |
是 | partial | 寫入為 atom:title 。 |
rss:ttl |
是 | 否 | |
rss:webMaster |
是 | 否 |
GML 元素
空間 IO 模組支援下列 GML 元素。
元素名稱 | 讀取 | 寫入 | 備註 |
---|---|---|---|
gml:coordinates |
是 | 否 | 寫入為 gml:posList 。 |
gml:curveMember |
是 | 否 | |
gml:curveMembers |
是 | 否 | |
gml:Box |
是 | 否 | 寫入為 gml:Envelope 。 |
gml:description |
是 | 是 | |
gml:Envelope |
是 | 是 | |
gml:exterior |
是 | 是 | |
gml:Feature |
是 | 否 | 寫入為圖形。 |
gml:FeatureCollection |
是 | 否 | 寫入為幾何集合。 |
gml:featureMember |
是 | 否 | 寫入為幾何集合。 |
gml:geometry |
是 | 否 | 寫入為圖形。 |
gml:geometryMember |
是 | 是 | |
gml:geometryMembers |
是 | 是 | |
gml:identifier |
是 | 是 | |
gml:innerBoundaryIs |
是 | 否 | 使用 gml.interior 寫入。 |
gml:interior |
是 | 是 | |
gml:LinearRing |
是 | 是 | |
gml:LineString |
是 | 是 | |
gml:lineStringMember |
是 | 是 | |
gml:lineStringMembers |
是 | 否 | |
gml:MultiCurve |
是 | 否 | 僅讀取 gml:LineString 成員。 寫入為 gml.MultiLineString |
gml:MultiGeometry |
partial | partial | 僅讀取為 FeatureCollection。 |
gml:MultiLineString |
是 | 是 | |
gml:MultiPoint |
是 | 是 | |
gml:MultiPolygon |
是 | 是 | |
gml:MultiSurface |
是 | 否 | 僅讀取 gml:Polygon 成員。 寫入為 gml.MultiPolygon |
gml:name |
是 | 是 | |
gml:outerBoundaryIs |
是 | 否 | 使用 gml.exterior 寫入。 |
gml:Point |
是 | 是 | |
gml:pointMember |
是 | 是 | |
gml:pointMembers |
是 | 否 | |
gml:Polygon |
是 | 是 | |
gml:polygonMember |
是 | 是 | |
gml:polygonMembers |
是 | 否 | |
gml:pos |
是 | 是 | |
gml:posList |
是 | 是 | |
gml:surfaceMember |
是 | 是 |
其他注意事項
- 會於成員元素中搜尋可能隱藏在子項目中的幾何。 此為必要的搜尋作業,因為許多從 GML 擴充的 XML 格式可能不會將幾何放置為成員元素的直接子系。
srsName
部分支援 WGS84 座標和下列程式碼:EPSG:4326) 以及 Web Mercator (EPSG:3857 或其替代程式碼的其中一個。 任何其他座標系統都會按原樣剖析為 WGS84。- 除非在讀取 XML 摘要時已指定軸順序,否則會根據 XML 摘要中的提示決定。 已指定「緯度、經度」軸順序的喜好設定。
- 除非在寫入 GML 檔案時,為屬性指定自訂 GML 命名空間,否則不會新增其他屬性資訊。
GPX 元素
空間 IO 模組支援下列 GPX 元素。
元素名稱 | 讀取 | 寫入 | 備註 |
---|---|---|---|
gpx:ageofdgpsdata |
是 | 是 | |
gpx:author |
是 | 是 | |
gpx:bounds |
是 | 是 | 在讀取時轉換為 LocationRect。 |
gpx:cmt |
是 | 是 | |
gpx:copyright |
是 | 是 | |
gpx:desc |
是 | 是 | 在讀取時複製到說明屬性中,以便與其他 XML 格式對齊。 |
gpx:dgpsid |
是 | 是 | |
gpx:ele |
是 | 是 | |
gpx:extensions |
partial | partial | 在讀取時,會擷取樣式資訊。 所有其他延伸模組都會壓平合併為簡單的 JSON 物件。 僅寫入圖形樣式資訊。 |
gpx:geoidheight |
是 | 是 | |
gpx:gpx |
是 | 是 | |
gpx:hdop |
是 | 是 | |
gpx:link |
是 | 是 | |
gpx:magvar |
是 | 是 | |
gpx:metadata |
是 | 是 | |
gpx:name |
是 | 是 | |
gpx:pdop |
是 | 是 | |
gpx:rte |
是 | 是 | |
gpx:rtept |
是 | 是 | |
gpx:sat |
是 | 是 | |
gpx:src |
是 | 是 | |
gpx:sym |
是 | 是 | 已擷取值,但不會用於改變圖釘圖示。 |
gpx:text |
是 | 是 | |
gpx:time |
是 | 是 | |
gpx:trk |
是 | 是 | |
gpx:trkpt |
是 | 是 | |
gpx:trkseg |
是 | 是 | |
gpx:type |
是 | 是 | |
gpx:vdop |
是 | 是 | |
gpx:wpt |
是 | 是 | |
gpx_style:color |
是 | 是 | |
gpx_style:line |
partial | partial | 支援 color 、opacity 、width 、lineCap 。 |
gpx_style:opacity |
是 | 是 | |
gpx_style:width |
是 | 是 | |
gpxx:DisplayColor |
是 | 否 | 用於指定圖形色彩。 如果寫入,則會改用 gpx_style:line 色彩。 |
gpxx:RouteExtension |
partial | 否 | 所有屬性都會讀入 properties 。 只會使用 DisplayColor 。 |
gpxx:TrackExtension |
partial | 否 | 所有屬性都會讀入 properties 。 只會使用 DisplayColor 。 |
gpxx:WaypointExtension |
partial | 否 | 所有屬性都會讀入 properties 。 只會使用 DisplayColor 。 |
gpx:keywords |
是 | 是 | |
gpx:fix |
是 | 是 |
其他注意事項
在寫入時;
- MultiPoint 會拆分為個別導航點。
- 多邊形和 MultiPolygon 都會寫入追蹤。
支援的已知文字幾何類型
幾何類型 | 讀取 | 寫入 |
---|---|---|
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] 僅擷取 Z 參數,並在位置值中新增為第三個值。
[2] 未擷取 M 參數。
分隔空間資料支援
分隔空間資料,例如逗號分隔值檔案 (CSV),通常具有包含空間資料的資料行。 例如,可能有包含緯度和經度資訊的資料行。 在已知文字格式中,可能有包含空間幾何資料的資料行。
空間資料行偵測
在讀取包含空間資料的分隔檔案時,會分析標頭以判斷哪些資料行包含位置欄位。 如果標頭包含類型資訊,則會用於將儲存格值轉換為適當類型。 如果未指定標頭,則會分析第一個資料列以產生標頭。 在分析第一個資料列時,會執行檢查並將資料行名稱與下列名稱進行比對 (以不區分大小寫的方式)。 如果檔案中存在兩個或多個名稱,則以名稱順序作為優先順序。
緯度
latitude
lat
latdd
lat_dd
latitude83
latdecdeg
y
ycenter
point-y
緯度
longitude
lon
lng
long
longdd
long_dd
longitude83
longdecdeg
x
xcenter
point-x
提升權限
elevation
elv
altitude
alt
z
地理位置
系統會掃描第一個資料列,尋找已知文字格式的字串。
分隔資料行類型
在掃描標頭資料列時,會擷取資料行名稱中任何類型的資訊,並用於轉換該資料行中的儲存格。 以下是具有類型值的資料行名稱範例:"ColumnName (typeName)"。 支援下列類型名稱 (不區分大小寫):
數字
- edm.int64
- int
- long
- edm.double
- FLOAT
- double
- 數值
布林值
- edm.boolean
- bool
- boolean
日期
- edm.datetime
- date
- Datetime
地理位置
- edm.geography
- 地理位置
字串
- edm.string
- varchar
- text
- string
如果無法從標頭擷取類型資訊,且在讀取時啟用動態類型選項,則會個別分析每個儲存格,以判斷最適合轉換為何種資料類型。
下一步
請參閱下列文章,以取得更多可新增至地圖的程式碼範例: