?? 0902-0300.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0071)http://162.105.170.55/ASPs/GetLearningArticleTemp.asp?section=0902-0300 -->
<HTML><HEAD><TITLE>XML中國論壇 - 初學進階 - 9.2.3 基于XML數據庫的模型分析</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>TABLE {
FONT-SIZE: 9pt; COLOR: black; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"
}
.pt9 {
FONT-SIZE: 9pt; COLOR: black; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"
}
.pt10 {
FONT-WEIGHT: 700; FONT-SIZE: 10pt; LINE-HEIGHT: 18pt; FONT-FAMILY: "宋體"
}
.TempOutline {
FONT-SIZE: 9pt; MARGIN-LEFT: 15pt; COLOR: #666666; TEXT-INDENT: -28pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.TempOutline1 {
FONT-SIZE: 9pt; MARGIN-LEFT: 24pt; COLOR: #666666; TEXT-INDENT: -36pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.Outline {
FONT-SIZE: 9pt; MARGIN-LEFT: 15pt; TEXT-INDENT: -28pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.Outline1 {
FONT-SIZE: 9pt; MARGIN-LEFT: 24pt; TEXT-INDENT: -36pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.Outline11 {
FONT-SIZE: 9pt; MARGIN-LEFT: 38pt; TEXT-INDENT: -50pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage0 {
FONT-SIZE: 9pt; MARGIN-LEFT: 15pt; TEXT-INDENT: -28pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage1 {
FONT-SIZE: 9pt; MARGIN-LEFT: 24pt; TEXT-INDENT: -36pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage11 {
FONT-SIZE: 9pt; MARGIN-LEFT: 38pt; TEXT-INDENT: -50pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage111 {
FONT-SIZE: 9pt; MARGIN-LEFT: 51pt; TEXT-INDENT: -64pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
</STYLE>
<META content="Microsoft FrontPage 5.0" name=GENERATOR></HEAD>
<BODY vLink=#000000 aLink=#000000 link=#000000 leftMargin=0 topMargin=0
onload=""><!-- 以下為主體內容 -->
<TABLE align=center border=0 width="931">
<TBODY>
<TR vAlign=top>
<TD width=41 rowSpan=2></TD>
<TD vAlign=center width="834" >
<p align="center"><IMG height=33
src="image/title_learner.gif" width=226></TD>
<TD width=42 rowSpan=2></TD>
</TR>
<TR vAlign=top>
<TD width="834"><!-- 正文內容 -->
<DIV class=pt10><B>9.2.3 基于XML數據庫的模型分析</B></DIV>
<DIV></DIV><BR>
<DIV class=pt9>
<P>前面討論了關系數據庫、面向對象數據庫以及它們所提供的對XML的支持,那么,究竟什么樣的數據庫才能稱得上是XML數據庫呢?我們認為,一個基于XML的數據庫系統應該具備以下特征:
<OL>
<LI>能夠根據文檔類型定義(DTD或Schema)確定數據庫的模式。也就是說,能夠按照DTD或Schema來定義數據庫,而無須再進行數據庫的設計,能夠按照DTD或Schema的層次結構來進行基于XML語法的定位和查詢。通過元素名字和屬性來查詢和定位元素。
<LI>支持DOM和SAX,可以進行事件驅動的XML處理。
<LI>內置數據處理語言模塊(XML語法分析器),能夠進行XML文檔數據的語法分析,同時對數據庫中的元素進行直接的定位操作。
<LI>提供標準的XML查詢語言。通過套用一定的樣式模式,輸出多種格式的XML文檔。
<LI>能夠處理大型數據集合,能夠對置標文本的結構和內容進行索引。
<LI>提供開發工具包,支持DOM、SAX、Java、Script語言等。
<LI>提供一定的機制保證數據的一致性。如通過行級或頁級共享鎖、排他鎖對數據加鎖,滿足用戶對數據進行并發讀寫時數據的有效性。
<LI>支持OLAP和數據倉庫等高級應用。 </LI></OL>
<P>根據上面提到的特征,一個標準的XML數據庫管理系統應由下列幾個模塊組成:
<OL>
<LI><STRONG>數據編輯模塊--XML編輯器</STRONG> </LI></OL>
<P>能夠以圖形化、交互式界面方式對XML文件實例進行編輯,方便用戶對XML文件的編輯、修改等操作。另外,該編輯器還應提供同后端數據庫的接口,使得用戶能夠方便地從數據庫中調出已有的資料進行利用。編輯器應該有良好的用戶交互界面,多文檔編輯,能夠支持通用的文件類型,支持CSS和XSL,能夠按照樣式文件進行結構化文檔的顯示,查看源文件、DTD、Schema,能夠進行結構導航。EditML技術公司開發的一種開放軟件EditML就是很好的例子。
<OL start=2>
<LI><STRONG>語法分析模塊--XML Parser</STRONG> </LI></OL>
<P>能夠對XML文本進行語法分析,能夠進行元素的定位和查詢。語法分析模塊負責對DTD文件、XML文件的語法分析,能對錯誤進行定位并提出建設性的改進意見;語法分析模塊還負責生成XML文件的結構樹,并能從結構樹到文件實例的映射;負責按照文件類型定義生成數據庫的模式,包括數據庫字段的定義、可能的數據類型、存儲量的估計等等。
<OL>
<LI type=disc value=3><STRONG>數據庫的管理模塊--DB Manager</STRONG> </LI></OL>
<P>提供圖形化的數據庫管理功能,包括對XML文本資料的存貯、索引、檢索等功能,提供數據的備份、復制等功能;能夠對不同的文件類型定義的置標文本進行分類存貯。其他的管理功能包括多用戶并發共享數據庫的加鎖機制等等。
<OL start=4>
<LI><STRONG>索引和檢索模塊</STRONG> </LI></OL>
<P>一個基于數據庫的搜索引擎,它應該能夠理解結構化置標樹結構,提供全文索引和區域索引,對元素和屬性進行索引,對結構和內容進行索引,能夠按照元素和屬性定位并檢索元素。
<OL start=5>
<LI><STRONG>數據庫接口模塊</STRONG> </LI></OL>
<P>提供數據庫系統的應用程序接口模塊(API),包括數據庫本身的編程接口以及XML數據庫的標準查詢接口。這是對一個開放型系統的最低要求。<BR><BR></P></DIV>
<P></P>
<P></P></TD></TR></TBODY></TABLE>
<P></P>
<P>
<P></P></BODY></HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -