一種將UML類圖轉(zhuǎn)化成XML文檔模式的方法
UML是用面向?qū)ο蠹夹g(shù)描述一個(gè)系統(tǒng)的有效方法,XML是一種描述數(shù)據(jù)和交換數(shù)據(jù)標(biāo)準(zhǔn),W3CXMLSchema是用來描述XML文檔的模式。通過討論UML類圖中類之間的關(guān)系,給出一種將一個(gè)用UML類圖轉(zhuǎn)化成一個(gè)XML文檔模式。
1.引言
UML是UnifiedModelingLanguage(統(tǒng)一建模語言)的縮寫,它定義了一個(gè)用于簡(jiǎn)化系統(tǒng)模型的標(biāo)準(zhǔn)語言和圖形符號(hào)。UML是分析、設(shè)計(jì)軟件系統(tǒng)時(shí)廣泛采用的標(biāo)準(zhǔn)。XML是eXtensibleMarkupLanguage(可擴(kuò)展置標(biāo)語言)的縮寫,它定義了一種描述數(shù)據(jù)、交換數(shù)據(jù)的標(biāo)準(zhǔn),也可以作為原語言定義其它的標(biāo)準(zhǔn)。W3CXMLSchema是2001年5月通過的用于描述XML文檔結(jié)構(gòu)的模式語言。它具有豐富的數(shù)據(jù)類型和強(qiáng)大的數(shù)據(jù)結(jié)構(gòu)定義及約束功能、用標(biāo)準(zhǔn)XML格式表示.支持命名空間、具有廣泛的應(yīng)用前景等優(yōu)點(diǎn)。
現(xiàn)有的系統(tǒng)有很大一部分是基于RUP建模技術(shù)建立的模型,都是通過UML圖來描述整個(gè)系統(tǒng)的。為了方便與其他系統(tǒng)的數(shù)據(jù)的交換,需要將數(shù)據(jù)轉(zhuǎn)化成用XML描述的。通過對(duì)類與類之間的關(guān)系的研究,給出了一種將UML類圖轉(zhuǎn)化成XMLSchema的方法。
2.UML和XMLSchema
2.1UML
UML是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的建模語言。它溶入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。它的作用域不限于支持面向?qū)ο蟮姆治雠c設(shè)計(jì),還支持從需求分析開始的軟件開發(fā)的全過程。作為一種建模語言,UML的定義包括UML語義和UML表示法兩個(gè)部分:
◆UML語義 描述基于UML的精確元模型定義。元模型為UML的所有元素在語法和語義上提供了簡(jiǎn)單、一致、通用的定義性說明,使開發(fā)者能在語義上取得一致,消除了因人而異的最佳表達(dá)方法所造成的影響。此外UML還支持對(duì)元模型的擴(kuò)展定義。
◆UML表示法 定義UML符號(hào)的表示法,為開發(fā)者或開發(fā)工具使用這些圖形符號(hào)和文本語法為系統(tǒng)建模提供了標(biāo)準(zhǔn)。這些圖形符號(hào)和文字所表達(dá)的是應(yīng)用級(jí)的模型,在語義上它是UML元模型的實(shí)例。
2.2XMLSchema
XMLSchema是用一套預(yù)先規(guī)定的XML元素和屬性創(chuàng)建的,這些元素和屬性定義了文檔的結(jié)構(gòu)和內(nèi)容模式。相應(yīng)的一套精巧的規(guī)則指定了每個(gè)Schema元素或者屬性的合法用途。如果違反這些規(guī)則解析器就會(huì)拒絕解析你的Schema以及任何同它相聯(lián)系的文檔。
XMLSchema通過元素以及元素的屬性和類型來描述對(duì)象。元素的類型可以使簡(jiǎn)單類型,也可以是復(fù)雜類型。元素之間的約束描述了元素之間的關(guān)聯(lián)重?cái)?shù)。元素的類型是復(fù)雜類型,復(fù)雜類型的元素的類型又是復(fù)雜類型,這樣就構(gòu)成了一個(gè)樹狀的分層的結(jié)構(gòu)。這樣一個(gè)樹狀層級(jí)結(jié)構(gòu)描述了類和類之間的層級(jí)關(guān)系。
聯(lián)系客服