空間參照系統的知名文字表示法,以標準的文字表示法來提供空間參照系統資訊。 知名文字表示法的定義,是倣效 POSC/EPSG 座標系統資料模型。
空間參照系統是一種地理的 (經緯度)、投影的 (X,Y) 或以地球為中心的 (X,Y,Z) 座標系統。 座標系統由數個物件所組成。每一個物件有一個大寫的關鍵字 (例如,DATUM 或 UNIT),後面接著以括弧括住並以逗號區隔的物件參數。 有些物件內另外包含其它物件,所以結果是巢狀結構。
註: | 施行時可使用標準括弧 ( ) 來代替方括弧 [ ],但要能夠讀取這兩種括弧。 |
使用方括弧的座標系統字串表示法的 EBNF (Extended Backus Naur Form) 定義如下 (請參閱上述的方括弧用法):
<coordinate system> = <projected cs> | <geographic cs> | <geocentric cs> <projected cs> = PROJCS["<name>", <geographic cs>, <projection>, {<parameter>,}* <linear unit>] <projection> = PROJECTION["<name>"] <parameter> = PARAMETER["<name>", <value>] <value> = <number>
若資料以投影座標表示,則資料集的座標系統由 PROJCS 關鍵字來識別 (若以地理座標表示,則由 GEOGCS 識別,若以地心座標表示,則由 GEOCCS 來識別)。PROJCS 關鍵字後面接著投影座標系統的所有定義「元素」。 任何物件的第一個元素一律為名稱。 投影座標系統名稱後面接著數個物件: 地理座標系統、地圖投影、一或多個參數、以及長度測量單位。 所有投影座標系統皆以地理座標系統為基礎,所以本節首先說明投影座標系統的相關元素。 例如,NAD83 資料項的 UTM 區域 10N 定義如下:
PROJCS["NAD_1983_UTM_Zone_10N", <geographic cs>, PROJECTION["Transverse_Mercator"], PARAMETER["False_Easting",500000.0], PARAMETER["False_Northing",0.0], PARAMETER["Central_Meridian",-123.0], PARAMETER["Scale_Factor",0.9996], PARAMETER["Latitude_of_Origin",0.0], UNIT["Meter",1.0]]
名稱和數個物件依序定義下列的地理座標系統物件: 資料項、中央子午線、及角度測量單位。
<geographic cs> = GEOGCS["<name>", <datum>, <prime meridian>, <angular unit>] <datum> = DATUM["<name>", <spheroid>] <spheroid> = SPHEROID["<name>", <semi-major axis>, <inverse flattening>] <semi-major axis> = <number> (semi-major axis 是以公尺為測量單位,必須為 > 0。) <inverse flattening> = <number> <prime meridian> = PRIMEM["<name>", <longitude>] <longitude> = <number>
GEOGCS["GCS_North_American_1983", DATUM["D_North_American_1983", SPHEROID["GRS_1980",6378137,298.257222101]], PRIMEM["Greenwich",0], UNIT["Degree",0.0174532925199433]]
<angular unit> = <unit> <linear unit> = <unit> <unit> = UNIT["<name>", <conversion factor>] <conversion factor> = <number>
轉換因數指定每單位的公尺數 (應用於長度單位) 或角度數,必須大於零。
UTM Zone 10N 的完整字串表示法如下:
PROJCS["NAD_1983_UTM_Zone_10N", GEOGCS["GCS_North_American_1983", DATUM[ "D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]], PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199433]], PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0], PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-123.0], PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_of_Origin",0.0], UNIT["Meter",1.0]]
<geocentric cs> = GEOCCS["<name>", <datum>, <prime meridian>, <linear unit>]