曹方 楊生舉 蘇海龍 蒙杰
摘要 采用PHP技術(shù)、XML技術(shù)和數(shù)據(jù)庫技術(shù),基于B/S/D 3層架構(gòu)設(shè)計(jì)完成的藏漢雙語應(yīng)急救災(zāi)專題數(shù)據(jù)庫系統(tǒng),涉及了從采集、加工、發(fā)布、檢索到管理的專題數(shù)據(jù)庫建設(shè)全過程,滿足用戶快速建立藏漢雙語應(yīng)急救災(zāi)數(shù)據(jù)庫的需求,突破在藏區(qū)應(yīng)急救災(zāi)過程中藏語與漢語信息溝通的障礙,為應(yīng)急救災(zāi)爭取時(shí)間,降低災(zāi)害損失;加強(qiáng)對數(shù)據(jù)庫的質(zhì)量控制,為應(yīng)急救災(zāi)提供高質(zhì)量的數(shù)據(jù)支撐。詳細(xì)介紹系統(tǒng)研發(fā)所采用的PHP和XML等關(guān)鍵技術(shù)、系統(tǒng)的整體架構(gòu)、系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)過程、數(shù)據(jù)質(zhì)量的控制方法,并給出關(guān)鍵代碼,最后介紹該系統(tǒng)的應(yīng)用情況。
關(guān)鍵詞 應(yīng)急救災(zāi);XML;PHP;專題數(shù)據(jù)庫
中圖分類號 S126;TP315 文獻(xiàn)標(biāo)識碼 A 文章編號 0517-6611(2014)26-09228-03
數(shù)字信息爆炸式增長給人們帶來方便的同時(shí)也帶來了極大不便,如何從海量的信息中快速、高效、準(zhǔn)確地檢索到自己所需的有價(jià)值信息,是圖書情報(bào)界研究的一個(gè)重點(diǎn)。專題數(shù)據(jù)庫的構(gòu)建和應(yīng)用是解決這一難題的有效途徑之一[1]。
用戶對信息的需求不斷向?qū)?、深化發(fā)展,使得專題數(shù)據(jù)庫的研究越來越受到重視。所謂專題數(shù)據(jù)庫是用戶所需的專業(yè)性的、專題化的信息資源,從海量的信息資源中通過采集、標(biāo)引和組織等工作而建立的數(shù)據(jù)庫。
應(yīng)急救災(zāi)專題數(shù)據(jù)庫是指當(dāng)災(zāi)害發(fā)生后,應(yīng)快速查明災(zāi)情,及時(shí)展開應(yīng)急救援活動,做到正確果斷地指揮決策,從而為決策者快速、準(zhǔn)確地提供災(zāi)區(qū)人口、自然地理地貌、交通、重要目標(biāo)位置、聯(lián)絡(luò)方式等基礎(chǔ)信息的專門性數(shù)據(jù)庫,是政府迅速、有效應(yīng)對地震、泥石流等突發(fā)事件的重要決策依據(jù),對于提高政府防災(zāi)減災(zāi)和應(yīng)對突發(fā)事件能力具有十分重要的意義。
數(shù)據(jù)的質(zhì)量是數(shù)據(jù)庫建設(shè)的根本所在,若不重視數(shù)據(jù)質(zhì)量的控制,建成的專題數(shù)據(jù)庫使用價(jià)值可能很低甚至帶來負(fù)面價(jià)值,而在應(yīng)急救災(zāi)的緊急情況下,數(shù)據(jù)的質(zhì)量變得更為重要,是進(jìn)行科學(xué)高效救災(zāi)的前提[2]。該研究從數(shù)據(jù)完整性、準(zhǔn)確性、安全性等方面闡述了如何加強(qiáng)數(shù)據(jù)庫的質(zhì)量控制。
藏漢雙語應(yīng)急救災(zāi)數(shù)據(jù)庫的建設(shè)將為藏區(qū)的應(yīng)急救災(zāi)提供強(qiáng)有力的數(shù)據(jù)支撐,突破應(yīng)急救災(zāi)過程中藏語與漢語信息溝通的障礙,為應(yīng)急救災(zāi)爭取時(shí)間,降低災(zāi)害損失。
為此,筆者詳細(xì)介紹了系統(tǒng)研發(fā)所采用的PHP和XML等關(guān)鍵技術(shù)、系統(tǒng)的整體架構(gòu)、系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)過程、數(shù)據(jù)質(zhì)量的控制方法,并給出了關(guān)鍵代碼,最后介紹了該系統(tǒng)的應(yīng)用情況。
1 系統(tǒng)總體架構(gòu)
應(yīng)急救災(zāi)專題數(shù)據(jù)庫主要包括人口數(shù)據(jù)庫、行政區(qū)劃數(shù)據(jù)庫、地理交通數(shù)據(jù)庫、地形地貌數(shù)據(jù)庫、重點(diǎn)部位多媒體數(shù)據(jù)庫、氣候要素?cái)?shù)據(jù)庫、聯(lián)絡(luò)方式數(shù)據(jù)庫。藏漢雙語應(yīng)急救災(zāi)專題數(shù)據(jù)庫系統(tǒng)的建設(shè)是采用藏語、漢語兩種語言同步完成專題數(shù)據(jù)庫信息的采集匯總。
普通用戶通過瀏覽器訪問WEB服務(wù)的基本功能模塊;決策用戶通過身份認(rèn)證后訪問WEB服務(wù)的授權(quán)功能模塊;系統(tǒng)管理員通過數(shù)據(jù)發(fā)布系統(tǒng)發(fā)布專題數(shù)據(jù),并對數(shù)據(jù)進(jìn)行維護(hù)管理。WEB服務(wù)器通過ODBC技術(shù)訪問數(shù)據(jù)庫服務(wù)器上的應(yīng)急救災(zāi)專題數(shù)據(jù)庫,如鄉(xiāng)鎮(zhèn)人口數(shù)據(jù)、交通數(shù)據(jù)、社區(qū)行政區(qū)圖數(shù)據(jù)等。系統(tǒng)總體架構(gòu)圖如圖1所示。
2 關(guān)鍵技術(shù)
2.1 PHP技術(shù)
PHP(Hypertext Preprocessor,超文本預(yù)處理器)是一種在服務(wù)器端執(zhí)行的嵌入HTML文檔的腳本語言[3-4],完全是開源的,可以從中加入自己需要的特色。PHP的優(yōu)點(diǎn):容易與HTML網(wǎng)頁融合,執(zhí)行效率高;內(nèi)嵌在HTML主頁里,修改成本低,開發(fā)速度快;消耗較少的系統(tǒng)資源;跨平臺運(yùn)行;具有豐富的函數(shù)接口;公開API函數(shù),很容易增加模塊,進(jìn)行語言擴(kuò)展;支持幾乎所有流行的數(shù)據(jù)庫以及操作系統(tǒng);具有完善的和不斷增強(qiáng)的XML支持功能;在Web服務(wù)器端運(yùn)行,且具有很高的安全性[5]。
2.2 XML技術(shù)
XML( Extensible Markup Language,可擴(kuò)展標(biāo)記語言)是一種W3C標(biāo)準(zhǔn)[6],主要用于Web應(yīng)用程序和服務(wù)器之間的數(shù)據(jù)交互、存儲和使用[7]。它是一整套定義語義標(biāo)記的規(guī)則,允許用戶對自己的標(biāo)記語言進(jìn)行定義,這些標(biāo)記將文檔分成許多部件,并對這些部件加以標(biāo)識[8]。在系統(tǒng)開發(fā)中利用XML可輕松地格式化顯示來自幾乎任何數(shù)據(jù)源的數(shù)據(jù)。XML已在Internet界被廣泛接受和使用,成為數(shù)據(jù)交換、存儲的重要標(biāo)準(zhǔn)[9]。
3 系統(tǒng)設(shè)計(jì)
3.1 系統(tǒng)功能設(shè)計(jì)
應(yīng)急救災(zāi)專題數(shù)據(jù)庫系統(tǒng)主要包括人口數(shù)據(jù)庫、行政區(qū)劃數(shù)據(jù)庫、地理交通數(shù)據(jù)庫、地形地貌數(shù)據(jù)庫、重點(diǎn)部位多媒體數(shù)據(jù)庫、氣候要素?cái)?shù)據(jù)庫、聯(lián)絡(luò)方式數(shù)據(jù)庫。人口數(shù)據(jù)庫包含總?cè)丝跀?shù)據(jù)、人口構(gòu)成、人口分布等信息;行政區(qū)劃數(shù)據(jù)庫包含縣區(qū)、鄉(xiāng)鎮(zhèn)、社區(qū)的行政管轄劃分等信息;地理交通數(shù)據(jù)庫包含區(qū)域的鐵路、公路、航空、水運(yùn)及各種交通運(yùn)輸方式的優(yōu)缺點(diǎn)等信息;地形地貌數(shù)據(jù)庫包含區(qū)域所處的地理位置、地形地勢、土地覆蓋、高程、坡度坡向等信息;重點(diǎn)部位多媒體數(shù)據(jù)庫包含災(zāi)害易發(fā)區(qū)、交通樞紐處等重點(diǎn)部位的圖片、視頻資料等信息;氣候要素?cái)?shù)據(jù)庫包含區(qū)域的平均降水、平均溫度、濕度、氣壓、日照等信息;聯(lián)絡(luò)方式數(shù)據(jù)庫包含鄉(xiāng)鎮(zhèn)、社區(qū)每村每戶的聯(lián)系地址、聯(lián)系電話、聯(lián)系人、移動通信情況等信息。
系統(tǒng)用戶角色分為普通用戶、決策用戶和系統(tǒng)管理員。普通用戶具有的功能為數(shù)據(jù)檢索、二次檢索、聚類檢索、分類檢索等;決策用戶具有的功能為授權(quán)數(shù)據(jù)檢索、分類檢索、發(fā)布緊急通知、數(shù)據(jù)批量導(dǎo)出、統(tǒng)計(jì)報(bào)表導(dǎo)出等;系統(tǒng)管理員具有的功能為用戶管理、數(shù)據(jù)管理、元數(shù)據(jù)設(shè)計(jì)、XML模版設(shè)計(jì)等,其中數(shù)據(jù)管理包括數(shù)據(jù)批量導(dǎo)入導(dǎo)出、數(shù)據(jù)錄入、數(shù)據(jù)審核等子功能,用戶管理功能實(shí)現(xiàn)用戶信息的增加、刪除、修改以及系統(tǒng)權(quán)限的設(shè)置。
3.2 數(shù)據(jù)庫設(shè)計(jì)
系統(tǒng)通過建立與數(shù)據(jù)庫服務(wù)器的連接,來完成對數(shù)據(jù)庫的操作,從而達(dá)到對數(shù)據(jù)信息的存儲、管理、檢索的目的。數(shù)據(jù)庫系統(tǒng)采用Windows環(huán)境下關(guān)系型數(shù)據(jù)庫SQL Server 2008,這個(gè)版本增強(qiáng)了對XML數(shù)據(jù)的支持,使用XML數(shù)據(jù)類型能夠直接存儲XML文檔。
系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)分為需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)、實(shí)施、運(yùn)行和維護(hù)幾個(gè)階段。需求分析階段綜合分析各類用戶的實(shí)際需求,是整個(gè)專題數(shù)據(jù)庫設(shè)計(jì)過程的基礎(chǔ);通過對用戶需求的綜合整理、歸納抽象,形成一個(gè)獨(dú)立于具體數(shù)據(jù)庫管理系統(tǒng)(DBMS)的概念模型;邏輯設(shè)計(jì)階段將概念模型轉(zhuǎn)換成具體的數(shù)據(jù)庫產(chǎn)品支持的數(shù)據(jù)模型,并對其進(jìn)行優(yōu)化,形成數(shù)據(jù)庫邏輯模型;根據(jù)數(shù)據(jù)庫管理系統(tǒng)(DBMS)的特點(diǎn)和處理的需要,為邏輯模型選取合適的物理結(jié)構(gòu),進(jìn)行物理存儲、索引建立;運(yùn)用數(shù)據(jù)庫管理系統(tǒng)(DBMS)提供的數(shù)據(jù)語言、工具,依據(jù)邏輯設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果,建立數(shù)據(jù)庫系統(tǒng),編制調(diào)試數(shù)據(jù)庫應(yīng)用程序,部署試運(yùn)行,并不斷對其進(jìn)行評價(jià)、調(diào)整和優(yōu)化。
3.3 元數(shù)據(jù)設(shè)計(jì)
元數(shù)據(jù)設(shè)計(jì)包括元數(shù)據(jù)集和元數(shù)據(jù)項(xiàng)設(shè)計(jì)。元數(shù)據(jù)集主要用于描述和標(biāo)識元數(shù)據(jù),包括數(shù)據(jù)項(xiàng)名稱、數(shù)據(jù)標(biāo)準(zhǔn)(自定義格式和都柏林格式)、語種(漢語、藏語)、字符集(UTF-8、GB2312、GBK)、創(chuàng)建日期、數(shù)據(jù)集摘要、數(shù)據(jù)分類、數(shù)據(jù)質(zhì)量說明等內(nèi)容。元數(shù)據(jù)項(xiàng)主要用于建立數(shù)據(jù)庫中存儲的XML映射字段,包括字段名、類型、中文名、藏文名、默認(rèn)值、檢索標(biāo)識等。
3.4 XML模版設(shè)計(jì)
XML模版設(shè)計(jì)包括題錄顯示模版和文摘顯示模版。題錄顯示模版用于配置一條數(shù)據(jù)記錄的基本信息,通常包括標(biāo)題、關(guān)鍵詞、數(shù)據(jù)集聯(lián)系人信息等。文摘顯示模版用于配置一條數(shù)據(jù)記錄表示內(nèi)容特征的字段信息(包括題錄信息)。以人口數(shù)據(jù)庫題錄顯示模版為例的XML配置文檔如下:
page_num="50" attribute="width=100%"> <![CDATA[title.value source.value pub_date.value