网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 软件工程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
本月文章推荐
.SaaS的蓬勃动力.
.计算机网络工程课程讲解.
.需求源于沟通 获取需求十大沟通技.
.UML建模工具UMLGraph 4.3 发布.
.SOA引发中间件市场新变局.
.编程书籍的选择.
.游戏引擎剖析(三).
.软件自动化测试实例分析.
.Java从老虎变野马 好事还是坏事?.
.Tivoli——IBM 服务管理.
.用预测性对象点度量面向对象软件.
.Atlas编程揭密之数据绑定.
.XMI与UML合力推动产品开发.
.游戏引擎剖析(七).
..Net体系结构指导.
.测试工具应用之我见.
.统一建模语言UML释义之(三).
.问与答:组件供应商谈论.NET的挑战.
.SOA核心理念的应用发展.
.压力测试实例.

用Rational Rose给XML DTD造型

发表日期:2008-3-23



  很多开发人员都熟悉面向对象的分析和设计工具。这些工具经常都被用来辅助数据和组件模型的开发,而这些模型要被用来搭建大型的软件系统。对于使用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类的新工具包。
上一篇:SaaS的蓬勃动力 人气:425
下一篇:一流软件领导的10个特征 人气:430
浏览全部软件工程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐