Я сделал XML-схему - в основном весь код - и мне было интересно, есть ли способ, которым код может генерировать что-то вроде этого:
Если да, то как я могу это сделать?
Я сделал XML-схему - в основном весь код - и мне было интересно, есть ли способ, которым код может генерировать что-то вроде этого:
Если да, то как я могу это сделать?
Java-приложение командной строки с открытым исходным кодом xsdvi создает интерактивную диаграмму в формате SVG из определения схемы XML. Сгенерированный файл SVG может отображаться в современном веб-браузере, где пользователь может разворачивать и сворачивать дерево, щелкая мышью.
Вот пример сгенерированной диаграммы
http://xsdvi.sourceforge.net/ipo.svg
Программу можно скачать с
http://sourceforge.net/projects/xsdvi/
Его можно запустить следующим образом (при условии, что Java установлена и java.exe
находится в пути): -
dist/lib
.java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]
XSD Diagram бесплатна (открытая лицензия GNU), ее не нужно создавать, и дает интерактивную диаграмму. Вы просто открываете файл и добавляете нужные типы на (первоначально пустую) диаграмму. Довольно прямолинейно.
Вы можете использовать онлайн-просмотрщик XMLGrid, который обеспечивает отличную поддержку XSD и многие другие функции:
Снимок экрана:
Встроенная программа просмотра Oracle JDeveloper 11g, на мой взгляд, лучше той, что доступна для Eclipse (которую, помимо других неблагоприятных моментов сравнения, я смог установить только для Индиго, но не для Юноны). Если я не ошибаюсь, Oracle делает JDeveloper бесплатным (требуется только регистрация в ОТС).
В Linux (с моно, доступно через apt-get
в Debian) и Windows:
Если вы работаете в Windows, я рекомендую вам взглянуть на:
Оба инструмента бесплатны, и оба могут обеспечить аналогичную визуализацию, как показано в вашем примере.
sudo apt install xsddiagram
установить XSDDiagram 28.01.2021 Если вам нужна простая, более текстовая документация по вашему XSD, ознакомьтесь с xs3p — таблицей стилей XSLT. это преобразует ваш XSD в более читаемый формат HTML. Довольно красиво и совершенно бесплатно.
Если этого недостаточно, ознакомьтесь с некоторыми коммерческими инструментами — лично я предпочитаю Liquid XML Studio — не такая дорогая, как другие, и не менее мощная!
Это изображение создается с помощью инструмента редактирования схемы XML, такого как XMLSpy компании Altova.
Существует ряд XML-инструментов, каждый из которых будет включать графическое средство просмотра XSD. Я упомянул XML Spy просто потому, что это бренд-лидер. Также многие общие IDE, такие как Eclipse, Visual Studio и Oracle JDeveloper, смогут проделать этот трюк.
Мы предлагаем инструмент под названием DocFlex/XML XSDDoc, который позволяет одновременно однажды:
На самом деле диаграммы генерируются не нами, а Altova XMLSpy. Мы реализовали интеграцию с XMLSpy (с полной поддержка всех гиперссылок диаграммы):
Здесь вы можете увидеть этот документ полностью: http://www.filigris.com/docflex-xml/xsddoc/examples/html/XMLSchema/index.html?schemas/XMLSchema_xsd/complexTypes/namedAttributeGroup.html
Все это обеспечивает функциональность, не предлагаемую ни одним поставщиком прямо сейчас на рынке!
Некоторые наши клиенты были настолько впечатлены, что приобрели дополнительную лицензию на XMLSpy только из-за нашего инструмента. (Это не шутка!)
В настоящее время мы также реализовали аналогичные интеграции с другими редакторами XML:
Что касается того, что изображено на всех этих диаграммах... По сути, все они касаются модели содержимого элементов XSD (а также других компонентов XSD, ведущих к элементам: сложных типов, групп элементов/атрибутов). Кажется, здесь есть два подхода:
Я лично считаю, что диаграммы, сгенерированные XMLSpy, более полезны.
Тем не менее, до сих пор не было попыток (по крайней мере, известных мне) изобразить графически что-либо еще, содержащееся в XML-схемах, хотя можно представить себе много...
В Visual Studio 2013 встроен довольно классный визуализатор.
Файл -> Открыть -> Файл выберите свой .xsd, а затем перетащите элементы из XML Schema Explorer на поверхность конструктора.
Существует новый бесплатный веб-инструмент, где вы можете просмотреть любую схему xml:
Интернет-средство просмотра XML-схем
Он полностью написан на JavaScript, поэтому работает в большинстве современных браузеров.
Вот мой подход: загрузите freemind и редактор XML-шаблонов CAM. Затем откройте CAM XML, создайте новый шаблон из XML, выберите View -> View Template As Mind Map
Плюсы этого решения:
Минусы:
Мы используем Liquid XML Studio, он обеспечивает интуитивно понятное редактируемое представление схемы XSD. Он также показывает встроенные аннотации, которые мы находим очень полезными, а представление разделенного кода/gfx бесценно при написании или редактировании XSD.
Попробуйте мой xsd-просмотрщик, доступный по адресу https://github.com/santhosh-tekuri/jlibs. .
Если кто-то работает с IBM Rational Application Developer, то в него встроен браузер XSD.
Средство просмотра схем Grid-ML отлично подходит для поиска и визуализации схем XML: https://gridml.com/xml-schema-viewer. Я считаю, что это лучше, чем другие инструменты, когда речь идет о больших схемах или когда просмотр диаграммы невозможен. Инструмент также позволяет копировать путь XPath или JSON выбранного элемента.
java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]
(из xsdvi.zip /res/readme.txt) 14.06.2016