如何可视化XML模式?[关闭]


138

我已经制作了一个XML Schema(基本上是所有代码),并且想知道代码是否可以生成类似以下内容的方法:

在此处输入图片说明

如果可以,我该怎么办?


3
如果您使用的是Confluence,请在Atlassian Marketplace中

1
看来我发现工具是OP截屏的工具。
toddmo

您使用哪种编程语言?如果您只是在寻找软件推荐,那么还有更好的StackExchange网站。
Aminadav Glickshtein

Answers:


68

开源命令行Java应用程序xsdvi从XML架构定义创建SVG格式的交互式图。可以通过现代的Web浏览器显示生成的SVG文件,用户可以在其中通过单击鼠标来展开和折叠树。

这是生成的图的示例

http://xsdvi.sourceforge.net/ipo.svg

该软件可以从以下位置下载

http://sourceforge.net/projects/xsdvi/

它可以按以下方式运行(假设已安装Java并且java.exe在路径中):

  1. 转到dist/lib文件夹。
  2. 运行以下命令 java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]

2
用法:(java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]来自xsdvi.zip /res/readme.txt)–
roblogic

该工具的唯一问题是生成的SVG有点慢。就像,如果我在打开后“折叠全部”,则折叠大约需要15秒。但是它是免费的...所以...
幻觉

很棒的开源软件!唯一的问题是SVG会很大,然后单击+/-按钮将变得非常慢(3-5秒)
Xin Meng

很棒的工具!我想知道是否有可能用XSLT进行XSD-> SVG的转换
Dima Fomin

你们必须购买一台速度更快的计算机:)它对我来说还可以,非常不错的工具
首次亮相

52

XSD Diagram是免费的(GNU开放许可证),不需要构建,并提供了一个交互式图。您只需打开文件,然后在(最初为空白)图中添加所需的类型。非常简单。

在此处输入图片说明


3
不错,即使在OSX上使用最新的Mono-MDK(4.0)也可以运行。正是我要找的东西
Erich Eichinger

1
辉煌的小软件。重量超轻,不需要JRE,速度很快。爱它。
Mohammed Lokhandwala


30

在我看来,Oracle JDeveloper 11g内置查看器优于可用于Eclipse的查看器(除了其他不利的比较点之外,我只能为Indigo安装,而不能为Juno安装)。如果我没有记错的话,Oracle 免费提供JDeveloper(仅需要在OTN上注册)。

在此处输入图片说明


1
JDeveloper(Java版)为我完成了工作,尝试了此处提到的其他软件,但是没有运气。
2013年

2
当在OSX上使用它时要当心:解压缩.zip文件后,由于文件权限问题,JDeveloper.app无法启动。您必须在/Applications/jdeveloper/JDeveloper.app/Contents/MacOS/JDeveloper上设置可执行位。然后,直到您将JDK的路径保存到〜/ .jdev_jdk中,这样才能开始:echo $ JAVA_HOME>〜/ .jdev_jdk
user17481 2013年

这就像一个魅力!我们曾经使用XMLSpy来添加API的图片,这导致一些尴尬的时刻:找到拥有许可证的人,找到具有试用版的人或找到尚未安装试用版的人来制作图片。只为几张照片购买500美元的程序似乎很愚蠢。
曼队长

28

您可以使用XMLGrid的Online查看器,它提供了出色的XSD支持和许多其他功能:

  • 在XML数据网格中显示XML数据。
  • 支持XML,XSL,XSLT,XSD,HTML文件类型。
  • 易于修改或删除现有节点,属性,注释。
  • 易于添加新的节点,属性或注释。
  • 易于扩展或折叠XML节点树。
  • 查看XML源代码。

屏幕截图:

屏幕截图


21

在Linux(带有mono,可通过apt-getDebian获得)和Windows上:

如果您使用的是Windows,建议您看一下:

两种工具都是免费的,并且都可以提供如您的示例所示的类似可视化效果。


2
XSD图非常好。谢谢。需要注意的一件事:加载XSD时,该应用程序不会在图表选项卡上显示任何内容,甚至不会显示根元素。我以为它已损坏,但事实证明,您只需要明确告诉它要显示的元素即可。
dan-gph 2015年

19

如果您需要有关XSD的简单,面向文本的简单文档,请查看xs3p -XSLT样式表,它将XSD转换为可读性更强的HTML格式。很好,而且完全免费。

如果这还不够,请查看其中的一些商业工具-我个人更喜欢Liquid XML Studio-不比其他工具贵,而且功能强大!


2
社区版已由非免费的简化版取代,每年的费用为106.90美元。
安德鲁·斯旺

@Andrew Swan:真可惜....仍然-Liquid XML是一个很棒的工具
marc_s 2010年

目前(2013年3月)(再次)提供了功能齐全的30天免费试用版。
尔根·塞伦(JürgenThelen)2013年

上面引用的xs3p链接不起作用。有人知道它去了哪里吗?
Mayer

13

该图片是从XML模式编辑工具(例如Altova的XMLSpy)生成的

周围有许多XML工具,所有这些工具都将包含图形XSD查看器。我提到XML Spy只是因为它是品牌领导者。同样,许多通用的IDE(如Eclipse,Visual Studio和Oracle JDeveloper)也可以做到这一点。


2
在Eclipse中,您可以右键单击XSD文件,然后选择Open With-> Other ...-> XML Schema Editor,尽管该编辑器在浏览340kb文件时有点无响应。
安德鲁·斯旺2010年

2
JDeveloper XSD视图看起来不错。
卡洛斯(Carlos)

5

Visual Studio 2013内置了一个很酷的可视化工具。

File-> Open-> File选择您的.xsd,然后将元素从XML Schema Explorer拖到设计器图面上。


如何打开设计器表面?
Nitish Upreti

1
在执行文件->打开->选择.xsd文件时,应该打开设计图面。那时您的xml模式尚未显示,因此设计器表面有点空...它将以空白标签的形式打开,其中包含一些操作说明。文本显示为“通过将XML模式集中的节点从XML模式资源管理器拖动到设计图面上来可视化节点”,您必须单击该词XML模式资源管理器,这是一个链接,它将在侧面打开一个标签页(该标签页将然后包含您可以拖到设计器图面上的xml模式片段)
含糊其词性

我不确定,但它可能是仅在VS企业版上可用的功能。我没有尝试过其他VS版本。
模棱两可的

Visual Studio 2017也可以显示XSD结构。
托尼

5

我们提供了一个名为DocFlex / XML XSDDoc的工具,该工具可让您一次享受这两种乐趣:

  • 重新设置XML模式的图
  • 将所有这些图嵌入(并超链接)到高度复杂的XML模式文档中

这些图实际上不是由我们生成的,而是由Altova XMLSpy生成的。我们实现了与XMLSpy集成(完全支持所有图超链接):

XML模式文档以及XMLSpy生成的图表

在这里,您可以看到完整的文档:http : //www.filigris.com/docflex-xml/xsddoc/examples/html/XMLSchema/index.html

整个功能提供了目前市场上任何一家供应商都无法提供的功能!

我们的一些客户印象深刻,以至于仅仅因为我们的工具,他们购买了XMLSpy的额外许可证。(这不是开玩笑!)


当前,我们还与其他XML编辑器实现了类似的集成:

使用<oXygen /> XML编辑器

XSDDoc带有由<oXygen /> XML编辑器生成的图表

参见:http : //www.filigris.com/docflex-xml/OxygenXML/demo/html/xslt20/index.html

使用Liquid XML Studio

XSDDoc带有Liquid XML生成的图表

参见:http : //www.filigris.com/docflex-xml/LiquidXML/demo/html/XMLSchema/index.html


关于所有这些图所描绘的内容……本质上,它们都是关于XSD元素(以及导致元素的其他XSD组件:complexTypes,元素/属性组)的内容模型。看来,这里有两种方法:

  1. 显示结果内容模型(由给定组件表示)的外观。这就是XMLSpy的方法。
  2. 显示如何从其他组件派生特定的内容模型(给定组件的)。这就是<oXygen /> XML和Liquid XML的方法。

我个人认为XMLSpy生成的图更有用。

但是,到目前为止,还没有尝试(至少对我来说是这样)以图形方式描述XML模式中包含的任何其他内容,尽管可以想象到很多...



3

这是我的方法-下载freemindCAM XML模板编辑器。然后打开CAM XML,从XML创建新模板,然后从View-> View Template As Mind Map
Pros解决方案:

  • 它在本地工作,因此可以处理秘密文件,
  • 完全免费
  • 开源。

缺点:

  • 大文件(超过20sh MB)非常不稳定。

1

我们使用Liquid XML Studio,它提供了XSD模式的直观可编辑表示。它还显示了内联注释,我们发现它们非常有用,并且在编写或编辑XSD时拆分代码/ gfx视图非常有用。

Liquid XML Studio XSD编辑器



0

如果有人使用IBM Rational Application Developer,那么它将内置XSD浏览器。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.