Как визуализировать XML-схему?

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

enter image description here

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

Ответ 1

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]

Ответ 2

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

введите описание изображения здесь

Ответ 3

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

enter image description here

Ответ 4

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

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

Скриншот:

Screenshot

Ответ 5

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

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

Ответ 6

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

  • XSDDiagram (также работает на Mono)

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

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

Ответ 7

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

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

Ответ 8

Мы предлагаем инструмент под названием 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:

С < oXygen/ > XML-редактор:

XSDDoc with diagrams generated by <oXygen/> 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, группы элементов/атрибутов). Кажется, здесь есть два подхода:

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

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

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

Ответ 9

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

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

Ответ 10

Вот мой подход - загрузите freemind и CAM XML Редактор шаблонов. Затем откройте CAM XML, создайте новый шаблон из XML, View → View Template As Mind Map
Плюсы этого решения:

  • Он работает локально, поэтому можно обрабатывать секретные файлы,
  • полностью бесплатно,
  • с открытым исходным кодом.

Минусы:

  • Довольно неустойчивый с большими (более 20шт MB) файлами.

Ответ 11

Существует новый бесплатный webtool, где вы можете просмотреть любую xml-схему:

Средство просмотра XML в Интернете

www.xml-tools.net

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

Ответ 12

Мы используем Liquid XML Studio, он обеспечивает интуитивно понятное редактируемое представление схемы XSD. Он также показывает аннотации inline, которые мы находим очень полезными, и просмотр split/gfx бесценен при написании или редактировании XSD.

Liquid XML Studio XSD Editor

Ответ 14

Если кто-то работает с IBM Rational Application Developer, то в нем встроен браузер XSD.

Ответ 15

Grid-ML Schema Viewer отлично подходит для поиска и визуализации XML-схем: https://gridml.com/xml-schema-viewer. Я считаю, что это лучше, чем другие инструменты, когда речь идет о больших схемах или когда просмотр диаграммы не представляется возможным. Этот инструмент также позволяет копировать путь XPath или JSON элемента выбора.

Grid-ML Схема поиска экрана