Как визуализировать схему XML? - PullRequest
132 голосов
/ 21 марта 2010

Я создал схему XML - весь код в основном - и мне было интересно, есть ли способ, которым код может генерировать что-то вроде этого:

enter image description here

Если так, как я могу это сделать?

Ответы [ 14 ]

64 голосов
/ 18 апреля 2013

Java-приложение командной строки с открытым исходным кодом xsdvi создает интерактивную диаграмму в формате SVG из определения схемы XML. Сгенерированный файл 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]
44 голосов
/ 07 марта 2014

Диаграмма XSD является бесплатной (открытая лицензия GNU), не требует сборки и предоставляет интерактивную диаграмму. Вы просто открываете файл и добавляете нужные вам типы на (изначально пустую) диаграмму. Довольно прямо вперед.

enter image description here

29 голосов
/ 30 апреля 2013

Встроенный просмотрщик Oracle JDeveloper 11g , на мой взгляд, превосходит тот, который доступен для Eclipse (который, в дополнение к другим неблагоприятным точкам сравнения, которые я смог получить только при установке) для Индиго , но не для Юнона ). Если я не ошибаюсь, Oracle делает JDeveloper бесплатным (требуется только регистрация в OTN).

enter image description here

26 голосов
/ 23 апреля 2013

Вы можете использовать XMLGrid Online viewer, который обеспечивает отличную поддержку XSD и многие другие функции:

  • Отображение данных XML в сетке данных XML.
  • Поддерживает типы файлов XML, XSL, XSLT, XSD, HTML.
  • Легко изменить или удалить существующие узлы, атрибуты, комментарии.
  • Легко добавлять новые узлы, атрибуты или комментарии.
  • Легко разворачивать или сворачивать дерево узлов XML.
  • Просмотр исходного кода XML.

Скриншот:

Screenshot

18 голосов
/ 29 ноября 2012

В Linux (с моно, доступно через apt-get в Debian) и Windows:

Если вы работаете в Windows, я рекомендую взглянуть на:

Оба инструмента бесплатны, и оба могут предоставлять аналогичные визуализации, как показано в вашем примере.

18 голосов
/ 21 марта 2010

Если вам нужна простая, более ориентированная на текст документация по вашему XSD, посмотрите xs3p - таблицу стилей XSLT, которая преобразует ваш XSD в более читаемый формат HTML. Довольно красиво и совершенно бесплатно.

Если этого недостаточно, ознакомьтесь с некоторыми коммерческими инструментами - я лично предпочитаю Liquid XML Studio - не так дорого, как другие, и вполне способным!

13 голосов
/ 21 марта 2010

Это изображение генерируется с помощью инструмента редактирования схемы XML, такого как XMLSpy Altova.

Существует множество инструментов XML, каждый из которых включает в себя средство просмотра графического XSD.Я упомянул XML Spy просто потому, что он является лидером бренда.Также многие стандартные IDE, такие как Eclipse, Visual Studio и Oracle JDeveloper, смогут выполнить этот трюк.

5 голосов
/ 28 мая 2010

Мы предлагаем инструмент под названием DocFlex / XML XSDDoc , который позволяет вам наслаждаться обеими вещами одновременно:

  • Чтобы иметь представление схемы на вашей XML-схеме
  • Чтобы все эти диаграммы были встроены (и гиперссылки) в сложную документацию XML-схемы

Фактически диаграммы создаются не нами, а Altova XMLSpy .Мы реализовали интеграцию с XMLSpy (с полной поддержкой всех гиперссылок диаграмм):

XML schema documentation with diagrams generated by XMLSpy

Здесь вы можете увидеть полнуюэтот документ: http://www.filigris.com/docflex-xml/xsddoc/examples/html/XMLSchema/index.html

Все это обеспечивает функциональность, не предлагаемую ни одним из поставщиков прямо сейчас на рынке!

Некоторые наши клиенты были настолько впечатлены, что приобрели дополнительную лицензию на XMLSpyтолько из-за нашего инструмента.(Это не шутка!)


В настоящее время мы также реализовали аналогичные интеграции с другими редакторами XML:

СРедактор XML :

image XML Editor">

См .: http://www.filigris.com/docflex-xml/OxygenXML/demo/html/xslt20/index.html

С Liquid XML Studio :

XSDDoc with diagrams generated by Liquid XML

См .: http://www.filigris.com/docflex-xml/LiquidXML/demo/html/XMLSchema/index.html


Относительно того, что изображают все эти диаграммы ... По сути, они все о контентной модели XSDэлементы (а также другие компоненты XSD, которые ведут к элементам: complexTypes, группы элементов / атрибутов).Кажется, здесь есть два подхода:

  1. Чтобы показать, как будет выглядеть модель содержимого результата (представленная данным компонентом).Это подход XMLSpy.
  2. Чтобы показать, как конкретная модель контента (данного компонента) была получена из других компонентов.Это подходXML и Liquid XML.

Я лично считаю, что диаграммы, сгенерированные XMLSpy, более полезны.

Тем не менее, до сих пор не было попыток (по крайней мере, мне известно) изобразитьграфически все остальное содержится в схемах XML, хотя можно представить множество ...

4 голосов
/ 29 марта 2015

В Visual Studio 2013 встроен довольно крутой визуализатор.

Файл -> Открыть -> Файл, выберите свой .xsd, а затем перетащите элементы из XML Schema Explorer на поверхность конструктора.

3 голосов
/ 30 июля 2017

Существует новый бесплатный веб-инструмент, в котором вы можете просмотреть любую XML-схему:

Онлайн-просмотрщик схем XML

www.xml-tools.net

Он полностью написан на JavaScript, поэтому работает в большинстве современных браузеров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...