论文部分内容阅读
XML(eXtensible Markup Language)作为一种通用的格式实现数据的表示和交换。很多组织开始采用XML作为数据存储格式,一些出版、文档处理行业也采用XML文档,大多数的数据库系统也已经支持XML数据库。但是并没有一种合适的机制来生成或描述XML的概念模型。 本文的研究以MDA作为指导思想。首先,介绍了一种新型的XML概念模型——XUML,它是一种与平台无关的模型。该模型以UML类图为基础,继承了UML类图的大部分语义和特性,同时针对XML Schema的本质特征:元素间的嵌套、参引和类型的重用,引入了业务组件、广义聚集、组件内部关联等新概念。 一个业务组件包含一个层次化的XUML模型。广义聚集实现层次联系,即元素间的嵌套;组件内部关联表示元素间的参引和链接联系;类型的重用有复杂类型和简单类型两种,前者表示为类之间的泛化联系,后者表示为属性引用类型。为了便于类型被多处重用,XUML模型可被分为元素内容部分和元素类型部分,后者的类可被前者的类和属性引用。 接着,是本文的主要工作:XML概念模型到XML逻辑模型的转换,XML逻辑模型采用XML Schema。为了使生成的XML Schema文档更完善,必须对XUML模型进行扩展,扩展是通过定义Profile实现的。Profile的定义针对XML Schema主要特性,定义了相关的构造型、标记值和约束,强化了语义,明确了原则。 文章从类、属性、联系、约束等方面,定义了扩展的XUML.到Schema的映射规则。这些规则是转换算法的基础。转换前,通过为XUML添加标志,得到扩展的XUML模型。转换过程中,分别对元素内容部分和元素类型部分生成对应的Schema文档,前者生成的文档和后者生成的文档通过“include”模式组合连接起。转换后,可根据应用需求,对生成的文档做相关调整。 文章最后用PowerDesigner简单实现了XUML模型的设计及其转换。为了使该模型的设计及转换更完善,提出了基于Eelipse平台和XML Schema Infoset Model的实现构想。