国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

用Rational Rose給XML DTD造型

2019-11-17 04:44:28
字體:
來源:轉載
供稿:網友

  很多開發人員都熟悉面向對象的分析和設計工具。這些工具經常都被用來輔助數據和組件模型的開發,而這些模型要被用來搭建大型的軟件系統。對于使用Rational Rose開發工具的開發人員來說,他們會驚異地發現,你可以以給自己組件和模塊同樣的造型方式來給xml文檔造型。

  基本概念

  要在Rational Rose里開始創建XML模型,你就需要了解一些基本的概念。首先,你文檔里的每個節點都會成為一個類。你可以使用的XML類一共有四種類型:元素、實體、組和符號。在本文里,我們只會用到元素和組。

  元素是具有某些特性的基本類,它們由你在Rational Rose所指定的類型來定義。對于元素而言,你可以選擇ANY(任意)、Content Model(內容模型)、PCDATA(PC數據)或者EMPTY(空)。EMPTY元素顯然是空的,而PCDATA類型是一個字符數據容器。對于模式復雜的類型,你要使用內容模型。

  內容模型和組

  對于包含有字符數據的簡單元素,你要使用PCDATA類型。但是,你的很多元素都會包含一個或者多個子元素。對于這樣的復雜元素,你必須使用內容模型類型。

  為了向Rational Rose指明元素之間的關系,你還要使用組類型。從本質上講,每個內容模型元素都會擁有一個相關聯的組元素。該組元素應該被作為Rational Rose里的一個嵌套類被創建。內容模型元素的每個子元素都會通過將其與內容模型元素的組元素相關聯而被定義。

  快速演練

  現在讓我們來演練一個小例子。我們就從在Rational Rose創建一個新的Rational統一進程(Rational Unified PRocess,RUP)項目開始吧。你應該會在邏輯視圖(Logical View)里看到歡迎類圖表(Welcome Class Diagram)。你可以在這個圖表內刪除節點;不過這沒有必要。

  點擊工具條上的類(Class)圖標,再點擊圖表創建一個新的類。將這類命名為Order。雙擊Order類,并選擇DTDElement框。在類規格(Class Specification)對話框里選擇內容模型類型。

  在樹型視圖里右擊Order類,并選擇新建嵌套類(New Nested Class)將這個新的類命名為Order_grp。點擊并將Order_grp類拖放到類圖表里。雙擊Order_grp類并選擇DTDGroup框。放在一組的類應該是Sequence(順序),其出現次數應該是One(一次)。然后,展開樹型視圖里的關聯(Associations)項目,并將Order_grp關聯拖放到類圖表里。

  分別創建兩個新的類——Item和Customer。這兩個類都應該是被定義為內容模型類型的DTDElement。創建Order_grp組元素同Item類的新關聯,并對Customer類進行同樣的操作。

  雙擊Item類的新關聯,并將它命名為Item。然后點擊角色A的細節(Role A Detail)選項卡,并在多重下拉框里選擇1.n。這一步會指明Order元素會有一個或者多個Item元素作為其子元素。

  雙擊Customer類的關聯,并將它命名為Customer。點擊角色A的細節選項卡,在多重下拉框里選擇1。這一步會指明Order元素只會有一個Customer元素作為其子元素。

  假如有必要的話,你可以重復這一過程,以完成你的XML DTD。對于每個復雜的元素,只用簡單地指定內容模型類型,然后創建同DTDGroup框相關聯的嵌套類就行了。你的子元素然后就應該同組元素關聯在一起了。當你完成了自己的模型之后,你就可以右擊這些類,并選擇XML_DTD生成DTD(XML_DTD Generate DTD)來生成DTD的信息。你還可以從這個菜單里瀏覽DTD的源代碼。

  逆向工程

  你也可以通過選擇工具XML_DTD逆向工程XML_DTD(Tools XML_DTD Reverse Engineer XML_DTD)將你的DTD逆向轉換進Rational Rose里。在這個過程完成之后,你的Rational Rose模型會包含有用于你DTD類的新工具包。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 泗水县| 屏东县| 扬中市| 巨野县| 玛曲县| 嵊州市| 明水县| 湛江市| 仲巴县| 乐平市| 吴川市| 克什克腾旗| 华池县| 白朗县| 濮阳市| 奈曼旗| 永仁县| 洮南市| 平塘县| 张家口市| 高陵县| 宁蒗| 连州市| 铁岭县| 赣州市| 龙泉市| 崇义县| 开鲁县| 巴塘县| 灌阳县| 达拉特旗| 吉隆县| 当涂县| 正镶白旗| 朝阳区| 长宁县| 珲春市| 大名县| 乌拉特前旗| 汤原县| 漠河县|