摘要:文章分析了目前的交通信息系統(tǒng)的建模方法及其存在的問題,結(jié)合GML3.1、GML模式和線性參考方法,研究了使用GML對公共交通數(shù)據(jù)模型的幾何和拓撲關系建模的方法。以城市公共交通模型為開發(fā)實例,給出了基于GML的鄭州市公共交通的建模方案和具體實現(xiàn)方法,并使用XSLT技術將最終結(jié)果可視化。
關鍵詞:GIS;GML;XSLT;SVG;XML;LRM;公共交通模型;交通要素
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2009)14-3589-03
GML Modeling of Public Transport Data Model
WANG Yu-Jie
(Department of Information Management, Henan Economy and Trade Vocational College, Zhengzhou 450053, China)
Abstract: This work is about modeling the transport model with the help of the primitive components supported in GML3.1. GML schema and Linear Referencing Method were adopted to study the methods for GML modeling of transport data and its geometry and topology properties. GML instance data was validated and visualized on the web browser as a map.
Key words: GIS; GML; XSLT; SVG; XML; LRM; public transport model; transport feature key word
1 引言
1.1 研究背景
GML(Geography Markup Language)是一個由 Open GIS Consortium(OGC)開發(fā)的地理數(shù)據(jù)互操作規(guī)范,是一套用于地理信息的傳遞和存儲的XML編碼。它包括地理要素的幾何和特征(OGC2004)[1]。已經(jīng)有一些研究和應用,嘗試用GML以層次化的形式管理和表示道路網(wǎng)絡[2-3]。對于交通地理信息系統(tǒng)來說,交通數(shù)據(jù)模型是關鍵。而交通數(shù)據(jù)模型的核心是交通要素以及它們之間的幾何和拓撲關系。使用GML對這樣一個整合的模型進行建模,需要進一步研究現(xiàn)有的建模方法。
1.2 問題描述
根據(jù)OGC的描述,GML是一款整合不同來源數(shù)據(jù)的工具。在交通領域,數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的關鍵,用以整合交通要素并保證它們的一致性[4]。然而,GML是個相當年輕的元標準,對于如何用它來表示交通數(shù)據(jù)庫的研究仍然很少。
本文是研究GML交通數(shù)據(jù)庫建模的第一步,可用性和可操作性是研究的重點,主要關注總體建模和可視化方法。在以后的研究中,將建立基于GML的交通數(shù)據(jù)模型的完整機制,成為網(wǎng)絡環(huán)境中交通數(shù)據(jù)信息交換的基礎。如果在現(xiàn)實中應用本方法,將需要更加復雜的應用模型和編程軟件,把現(xiàn)有的交通數(shù)據(jù)轉(zhuǎn)換成GML的形式。
本文研究的主要問題可以被概括如下:如何使用GML對公共交通數(shù)據(jù)模型的幾何和拓撲關系建模,并將相應的實例數(shù)據(jù)可視化。
1.3 目標
在現(xiàn)有的地理信息系統(tǒng)交通數(shù)據(jù)模型中,幾何和拓撲關系對交通數(shù)據(jù)的整合起重要作用。今天,XML正逐漸成為互聯(lián)網(wǎng)環(huán)境下數(shù)據(jù)共享的標準[5],使用GML對交通數(shù)據(jù)進行全面建模是對現(xiàn)有建模方法的一個挑戰(zhàn)。為了解決這個問題,必須實現(xiàn)以下目標:
第一個目標是建立一個包括現(xiàn)有模型普遍特征的、簡化的交通數(shù)據(jù)模型[6]。為了研究對交通要素的幾何和拓撲關系建模的可能的方法,一個簡化、但是典型的模型,比一個具有許多非相關信息的復雜模型更加適用。
第二個目標是使用GML profile將簡化的交通數(shù)據(jù)模型轉(zhuǎn)換成GML友好(GML-friendly)的模型。幾何和拓撲屬性應被考慮在內(nèi)。并且基于該模型建立GML模式(schema),GML的實例數(shù)據(jù)可以通過該模式來驗證。
第三個目標是將格式良好的GML實例數(shù)據(jù)在瀏覽器上可視化。使用影射規(guī)則,在真實的地圖上反映對象間的幾何和拓撲關系。
2 簡化的交通數(shù)據(jù)模型
2.1 概念化的公共交通數(shù)據(jù)模型
公共交通數(shù)據(jù)模型可以被概括如下:
1) 多要素結(jié)構(gòu)共同實現(xiàn)基于空間網(wǎng)絡的多模型操作。
2) 使用線性參考方法實現(xiàn)多參考網(wǎng)絡的一步幾何更新。參考對象使用線性參考鍵值作為屬性。例如:Stop的屬性中包括沿道路邊緣的測量點。
3) 使用拓撲關系和線性參考方法共同保證交通要素間數(shù)據(jù)的一致性。
圖1展示了這個模型。
總的來說,公共交通數(shù)據(jù)模型可以描述為以下3層:
1) 模型概念的中心是基礎網(wǎng)絡要素,它包括TransportEdge和TransportJunction,分別等同于TOP和 UNETRANS中的TransportEdge和TransportJunction。因為公共交通主要集中在城市地區(qū),TransportEdge的定義就是連續(xù)的公路段,因此它也等同于OS MasterMap中的道路鏈。
2) 路線網(wǎng)絡要素在基礎網(wǎng)絡對象的上層描述路線。RouteStop沿TransportEdge定位,并在transit系統(tǒng)中充當一個StopPoint。例如,在公交運輸系統(tǒng)中,它就是乘客上下車的公交站臺。RouteSegment是連續(xù)的TransportEdge或是兩端各有一個RouteStop的部分TransportEdge。一條路線由一系列RouteSegment和與之匹配的RouteStops所構(gòu)成。
3) 公路網(wǎng)絡要素表示實名公路,參考代表不同等級公路的連續(xù)的TransportEdge要素。
2.2 拓撲
通過使用拓撲,我們的模型可以保證空間關系的一致性,還可以編輯不同參考層上的共享幾何,產(chǎn)生一個一致的公共交通設施的參考數(shù)據(jù)集。
基礎網(wǎng)絡是通用參考層,它本身也是拓撲結(jié)構(gòu)的:TransportEdge和TransportJunction是相連的。路線網(wǎng)絡對象和公路網(wǎng)絡對象通過一套對象類間的拓撲規(guī)則與基礎網(wǎng)絡保持一致:
1) RouteStop通過線性參考方法參考TransportDdge。
2) RouteSegment定義為一系列特定的點,包括兩個RouteStops和可能的TransportJunction。
3) Route 定義為一系列特定的RouteSegments。
4) Road定義為一系列特定的TransportEdges。
2.3 GML友好的UML模型
概念模型是不針對應用的,它并沒有指明如何應用在GML/XML中。將概念UML模型轉(zhuǎn)換成相應的GML模式需要一個中間的“GML友好的”邏輯模型。這個邏輯模型將概念模型轉(zhuǎn)化成對象模型,并將一些特定的UML結(jié)構(gòu)替換成和GML/XML一致的結(jié)構(gòu)。主要目標是將概念模型重新解釋成GML模式。
邏輯模型可以通過以下規(guī)則轉(zhuǎn)換成GML模式:
1) UML類被映射為相應的GML類(包括Basic Types, Feature Types和Enumeration)。
2) UML屬性(attribute)和關聯(lián)被映射為GML屬性(property),UML屬性(property)名稱是GML屬性(attribute)名稱或和目標對象關聯(lián)的規(guī)則名稱。minOccurs和maxOccurs屬性對應與UML模型中的定義。
主要邏輯實體和他們之間的關聯(lián)用圖2中的UML符號表示。注意該圖表不包括所有規(guī)則和屬性。
2.4 GML模式
2.4.1 模式結(jié)構(gòu)
最終的公用交通(PT)GML應用模式是基于以上UML模型的。模式文件的組成如圖3所示。
公用交通的GML應用模式包括一下四個模式層:
1) Attribute.xsd包括合法的公用交通屬性和基本類型。
2) PTCRS.xsd定義了LinearDatum和模型中使用的CRS。
3) GeometryTopology.xsd定義了公共交通要素所需要的集合和拓撲屬性。
4) Object.xsd定義了公共交通要素和要素集合。
GmlPT.xsd模式是從GML3.1中提取出來的,是PT應用模式所需要的標準定義。使用這個簡化的定義可以提高驗證解析器的效率。
2.4.2 屬性模式
在該模式中為交通對象定義了屬性和基本類型。
這些屬性和類型的值由擁有該應用模式的組織機構(gòu)決定。在本文中,我們以鄭州的公共交通模型為例。該系統(tǒng)使用的是中國交通部的《公路工程技術標準》。由于我們的目標是提供一個一致交通數(shù)據(jù)建模的可能方法,而不是開發(fā)一個實際應用中的模型,所以并不包括所有的基礎類型和屬性。
2.4.3 事先定義的幾何和拓撲模式
通常,單獨公共交通要素的幾何可用兩個方法來表示:獨立的要素和拓撲的要素。在獨立方法中,幾何被定位為一個對象幾何屬性中一對或一列坐標。在拓撲方法中,幾何被定義為一套相關要素的參考,相關要素是有明確坐標的獨立要素,或是參照與其他獨立要素。圖4是Road Link用這兩種方式表示的UML描述和圖形表示:
本文中,幾何和拓撲關系的定義將遵循我們?nèi)龑幽P偷闹行母拍?多參考網(wǎng)絡共享幾何關系,幾何關系的更新將只限于基礎網(wǎng)絡層。基本方法可描述如下:
1) 定義基礎拓撲類型:模型中所有的點,線,面被定義在單獨的文件中,以下步驟中所定義的相關要素將參照它們。
2) 定義基礎網(wǎng)絡要素中的幾何和拓撲關系:使用
3) 定義路線網(wǎng)絡要素的幾何和拓撲關系:在我們的模型中,RouteStop的位置使用線性參考方法沿TransportEdge測量決定。測量值用元素編碼。使用一個定義好的CRS模式參照測量值和相應的TransportEdge。拓撲關系將RouteStop的拓撲屬性參照第一步定義的相應基礎拓撲類型來定義。RouteSegment的幾何關系也用拓撲方式來定義,參照組成路段的RouteStops和TransportJunctions。采用這種方法,基礎網(wǎng)絡要素是幾何更新的基礎;其他層的要素通過要素間的幾何和拓撲關系得以更新。
2.5 GML實例文檔
2.5.1 交通對象
該模型定義了六種交通要素類型:交通邊緣(TransportEdge),junction(TransportJunction),stop point( RouteStop),route segment(RouteSegement), route(Route)和road(Road)。他們的幾何類型和拓撲關系定義為先前的數(shù)據(jù)模型和GML模式。
2.6 XSLT文檔
XSLT stylesheet的結(jié)構(gòu)完全基于GML應用模式和需要的SVG輸出[7-9]。CSS被用來定義渲染SVG文檔時的圖形元素[10]。圖5是一部分轉(zhuǎn)換并可視化的測試數(shù)據(jù)。
3 結(jié)束語
本文提供了一個使用GML對公共交通數(shù)據(jù)模型建模的方法,并在瀏覽器上將實例GML數(shù)據(jù)可視化。這為用GML表示和交換交通數(shù)據(jù)提供了一個解決方法。本文關注于數(shù)據(jù)模型的幾何一致性,時間元素并沒有考慮在內(nèi)。對于支持交通要素時間特性的模型,GML推薦標準中的時間組件和動態(tài)要素還須研究、分析并添加進來。
參考文獻:
[1] OGC(2004).OpenGIS Geography Markup Language(GML) Implementation Specification- Version 3.0, Open GIS Consortium Inc.[2009-03-10].http://schemas.opengis.net/gml/3.0.1/base.
[2] OSMasterMap(2004). OS Mastarmap user guide, Product Specification, British Ordnance Survey.
[3] WebTIGERPilotProject(2003).[2009-03-10].http://aries.geo.census.gov/WebTIGER/index.html.
[4] Dueker, K.J. and J.A. Butler(2000).\"A geographic information system framework for transportation data sharing.\" Transportation Research Part C:Emerging Technologies 8(1-6):13-36.
[5] Galdos(2003).GML Foundation Project - Developing and Managing GML Application Schemas. TR2003-232-01,Galdos Systems Inc.
[6] Curtin, K.,V.Noronha,et al.(2003).ArcGIS Transportation Data Model (UNETRANS). UNETRANS Data Model Reference.
[7] Adler,S.,A. Berglund, et al.(2001). Extensible Stylesheet Language (XSL) version 1.0 W3C Recommendation. W.W.W.Consortium., http://www.w3.org/TR/xsl/ 15 October 2001.
[8] W3C(1999).XSL Transformations(XSLT) Version 1.0 W3C Recommendation, World Wide Web Consortium. http://www.w3.org/TR/xslt 16 November 1999.
[9] W3C(2003).Scalable Vector Graphics(SVG)1.1 Specification W3C Recommendation, World Wide Web Consortium. http://www.w3.org/TR/SVG/ 14 January 2003.
[10] W.T.M.S.B.Tennakoon(2003). Visualization on GML data using XSLT. INTERNATIONAL INSTITUTE FOR GEO-INFORMATION SCIENCE AND EARTH OBSERVATION . ENSCHEDE.