2010-04-24 28 views
3

我试图将一些uml图(单例,AbstractFactory ...)转换为Z规范,首先我使用starUML将我的uml图转换为xml文件,然后 使用了一个xsl程序和saxon将我的xml文件转换为.tex(对于Z),但它没有用。 如果有人对如何编写xsl程序有一个想法(只是可能的步骤),这将是伟大的。使用xsl转换将UML图转换为规范Z

谢谢

+0

什么是Z?你正在转换UML的XML格式是什么? – 2010-04-24 16:54:34

回答

2

我会说,这是一个非常糟糕的主意。存储UML有很多不同的格式。 XMI是一个标准,但是至少有三个不同的版本,它们非常复杂。使用XSLT将XML转换为TeX同样也是一个很大的障碍,特别是当您试图获得Z规范时,这些规范是功能性和过程性的,UML基于面向对象编程。 我认为他们可能是一个更好的方式来实现你想要的。以Maude for Eclipse为例,它可以从基于EMF(Eclipse建模框架)的模型生成Maude规范(代数数据类型规范),这些模型也可以是Eclipse工具中的UML2。

+0

看来Maude for Eclipse可能有点烂......他们提到Eclipse 3.2,下载站点现在无法访问。你对此有更多了解吗? – ShiDoiSi 2010-04-27 08:33:06

+0

退房接班人:http://www.cs.le.ac.uk/people/aboronat/tools/moment2/ – 2010-04-27 08:46:27

1

不是试图编写XSLT转换,而是将模型写入文本转换会好得多。假定将UML模型表示为UML元模型(AST的一种)的实例,则可以编写一个模型到文本转换,以遍历UML模型并生成相应的文本。有几个Eclipse项目。

另一种解决方案(更整洁,而且更复杂的)是定义Z的元模型和写一个模型两者之间元模型变换模型。

+0

...这可能是一个很好的解决方案与TeXlipse结合... – 2010-04-25 21:31:56