網絡結構模塊分為兩部分,即互聯網絡接口與實時網絡接口。
互聯網絡接口主要負責互聯網絡接入功能。首先是通過網絡協議建立到服務器的連接,然后向服務器發送請求,服務器確認請求,并負責把瀏覽器請求的文件通過網絡協議傳送給瀏覽器。具體的過程如圖2所示。
車載局域網絡接口主要實現瀏覽器對汽車實時信息的獲取。瀏覽器和汽車網絡節點通信的方式有兩種:應答式通信和被動式通信。
在應答式通信過程中,車載網絡嵌入式瀏覽器對節點發送獲取某項參數的請求,網絡節點根據請求以EXML消息的形式發送實時信息。瀏覽器收到信息后通過解析模塊解析,更新數據并刷新顯示。
在被動方式下,網絡節點按一定的時間周期發送包含實時信息的EXML消息,瀏覽器偵聽網絡節點發送來的信息。一旦有新消息傳來,瀏覽器就通知解析模塊更新數據,并刷新顯示。EXML消息的格式如下:
參數值
解析模塊的設計
文檔解析模塊是整個系統的基礎模塊。在基于車載網絡的嵌入式瀏覽器中,我們根據車載網絡的應用實踐將HTML語言進行擴展,形成了EXML語言。EXML語言是XML語言在車載網絡系統中的一個應用,所以對EXML語言的解析可以使用標準的XML語言解析技術。XML的解析方式又有兩種:基于事件驅動的解析方式(SAX方式)和基于樹的解析方式(DOM方式)。SAX技術在響應事件的同時對標記文本進行處理,并不保存中間數據結構。DOM解析方式采用的是基于樹的解析方式,并使用XML Schema驗證。這種方式在解析完XML文檔后生成一個文檔樹,應用程序可以遍歷、搜索、編輯該文檔樹。
在實際的車載網絡中,嵌入式瀏覽器不僅僅需要對靜態的超文本信息進行瀏覽,還需要把下層節點發來的數據進行實時處理、顯示和保存。這就需要在內存中保存一個完整的解析數據結構,以方便數據的實時更新和顯示。因此使用DOM解析技術更加符合車載網絡的應用要求。
在文檔解析中,遵循先外后內、標簽后屬性、先到先解析的順序。首先處理處于嵌套外層的標簽,然后處理標簽的屬性;對于同一層次的標簽,先解析前面的。通過一個標簽堆棧來獲得嵌套信息,對標簽的父標簽指針賦值。具體的解析算法如圖3所示。
布局模塊的設計
HTML語言在對標記的定義中包括兩類信息:數據信息和顯示信息,而在XML語言定義的標記語言文檔是對信息的結構化表示,并不包括顯示信息。在處理對XML語言的顯示中,可以使用CSS(Cascading Style Sheets)樣式單添加額外的顯示信息,或者通過xCBL將XML文檔轉換成HTML格式的文件,然后再交付給瀏覽器,由瀏覽器顯示轉換的結果。
EXML語言也不包括顯示信息,不能決定頁面元素的顯示位置。通過CSS和XML定義顯示的方式會照成瀏覽器的高資源占用。因此,在嵌入式瀏覽器中采用主題文件定義每個頁面元素的顯示位置。
DO571 1TNE968902R2202
Quantum Cablefast Connection Cablefast 預接線系統
140CFA04000 Quantum
140CFB03200 Quantum
140CFC03200 Quantum
140CFD03200 Quantum
140CFE03200 Quantum
140CFG01600 Quantum
140CFH00800 Quantum
140CFI00800 Quantum
140CFJ00400 Quantum
140CFK00400 Quantum
140CFU00600 Quantum
140CFU08000 Quantum
140CFU40000 Quantum
140CFX00110 Quantum
140CFX00210 Quantum
140XCA10206 Quantum
140XCA10215 Quantum
140XTS00203 Quantum
140XTS00206 Quantum
140XTS00209 Quantum
140XTS00212 Quantum
140XTS01203 Quantum
140XTS01206 Quantum
140XTS01209 Quantum
140XTS01212 Quantum
140XTS10206 Quantum
140XTS10215 Quantum