如何可视化XML模式?
我已经做了一个XML模式 – 所有的代码基本上 – 并想知道是否有一种方式,代码可以产生这样的事情:
如果是这样,我该怎么办呢?
开源命令行java应用程序xsdvi从XML模式定义创buildSVG格式的交互图。 生成的SVG文件可以通过现代Web浏览器显示,用户可以通过点击鼠标来展开和折叠树。
这是一个生成图的例子
该软件可以从中下载
XSD图是免费的(GNU开放许可证),不需要build立,并给出一个交互图。 您只需打开文件并在(最初为空)图上添加所需的types即可。 非常直截了当。
Oracle JDeveloper 11g内置查看器在我看来优于Eclipse提供的查看器(除了其他不利的比较点之外,我只能安装Indigo,而不能用于Juno )。 如果我没有弄错,Oracle 可以免费提供JDeveloper (只需要在OTN上注册)。
您可以使用XMLGrid的在线查看器,它提供了很好的XSD支持和许多其他function:
- 在XML数据网格中显示XML数据。
- 支持XML,XSL,XSLT,XSD,HTML文件types。
- 易于修改或删除现有的节点,属性,评论。
- 轻松添加新节点,属性或评论。
- 易于展开或折叠XML节点树。
- 查看XML源代码。
截图:
如果您需要一个简单的,面向文本的XSD文档,请查看xs3p – 一个将您的XSD转换为更具可读性的HTML格式的XSLT样式表。 非常好,完全免费。
如果这还不够,请查看一些商业工具 – 我个人更喜欢Liquid XML Studio–不像其他的那么昂贵,而且function也相当强大!
该图片是从XML Schema编辑工具(如Altova的XMLSpy)生成的 。
有许多XML工具,所有这些工具都将包含一个Graphical XSD Viewer。 我只是提到XML Spy,因为它是品牌的领导者。 另外,Eclipse,Visual Studio和Oracle JDeveloper等许多通用IDE都可以做到这一点。
在Linux上(使用单声道,可通过Debian上的apt-get
)和Windows:
- XSDDiagram (在Mono上运行)
如果你在Windows上,我build议你看看:
- 从WMHelp或XMLPad3
这两个工具都是免费的,都可以提供类似的可视化,如你的例子所示。
Visual Studio 2013内置了一个很酷的可视化工具。
文件 – >打开 – >文件select您的.xsd,然后将元素从XML模式资源pipe理器拖到devise器表面。
这是我的方法 – 下载freemind和CAM XML模板编辑器 。 然后打开CAM XML,从XML创build新的模板,查看 – >查看模板作为思维导图
这个解决scheme的优点:
- 它在本地工作,所以秘密文件可以被处理,
- 完全免费,
- 开源。
缺点:
- 相当不稳定的大(超过20sh的MB)文件。
我们提供了一个名为DocFlex / XML XSDDoc的工具,可以让您一次享受这两件事:
- 让图表表示您的XML模式
- 将所有这些图embedded(和超链接)在一个高度复杂的XML模式文档
实际上这些图不是由我们生成的,而是由Altova XMLSpy生成的 。 我们实现了与XMLSpy的集成 (完全支持所有图表超链接):
在这里您可以看到完整的文档: http : //www.filigris.com/docflex-xml/xsddoc/examples/html/XMLSchema/index.html
整个事情提供了现在市场上没有任何单一供应商提供的function!
我们的一些客户印象深刻,他们只是因为我们的工具而购买了XMLSpy的额外许可证。 (这不是玩笑!)
目前,我们还实施了与其他XML编辑器的类似集成:
使用<oXygen /> XML编辑器 :
请参阅: http : //www.filigris.com/docflex-xml/OxygenXML/demo/html/xslt20/index.html
使用Liquid XML Studio :
请参阅: http : //www.filigris.com/docflex-xml/LiquidXML/demo/html/XMLSchema/index.html
关于所有这些图表描述…实质上,它们都是关于XSD元素的内容模型(以及导致元素的其他XSD组件:complexTypes,元素/属性组)。 看来,这里有两种方法:
- 显示结果内容模型(由给定组件表示)的外观。 这是XMLSpy的方法。
- 显示特定内容模型(给定组件)是如何从其他组件派生的。 这就是<oXygen /> XML和Liquid XML的方法。
我个人认为XMLSpy生成的图更有用。
然而,目前还没有尝试(至less我知道)以graphics方式描述XML模式中包含的其他内容,尽pipe可以想象得到许多…
我们使用Liquid XML Studio,它提供了XSD模式的直观的可编辑表示。 它还显示内嵌的注释,我们发现它非常有用,分割代码/ gfx视图在写入或编辑XSD时是非常有用的。
有一个新的免费使用的webtool,您可以在其中查看任何XML模式:
在线XML模式查看器
它完全用JavaScript编写,所以它在大多数现代浏览器中运行。
如果有人使用IBM Rational Application Developer,那么内置XSD浏览器。
试试我的xsd-viewer从https://github.com/santhosh-tekuri/jlibs 。