Я создал схему 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]
java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]
(из xsdvi.zip /res/readme.txt)
XSD Diagram бесплатна (открытая лицензия GNU), не требует построения и дает интерактивную диаграмму. Вы просто открываете файл и добавляете нужные типы на диаграмму (изначально пустую). Довольно прямолинейно.
11g Oracle JDeveloper встроенный просмотрщик на мой взгляд , превосходит одного доступного для Eclipse , (который, в дополнение к другим точкам неблагоприятная сравнения я мог получить только установить для Indigo , но не для Juno ). Если я не ошибаюсь, Oracle предоставляет JDeveloper бесплатно (требуется только регистрация в OTN).
Вы можете использовать онлайн-просмотрщик XMLGrid, который обеспечивает отличную поддержку XSD и многие другие функции:
Снимок экрана:
В Linux (с моно, доступно через apt-get
Debian) и Windows:
Если вы работаете в Windows, я рекомендую вам взглянуть на:
Оба инструмента бесплатны, и оба могут предоставлять аналогичные визуализации, как показано в вашем примере.
Если вам нужна простая, более текстовая документация вашего XSD, обратите внимание на xs3p - таблицу стилей XSLT, которая преобразует ваш XSD в более читаемый формат HTML. Довольно красиво и совершенно бесплатно.
Если этого недостаточно, ознакомьтесь с некоторыми коммерческими инструментами - я лично предпочитаю Liquid XML Studio - не такой дорогой, как другие, и столь же функциональной!
Это изображение создается с помощью инструмента редактирования XML-схемы, такого как XMLSpy компании Altova .
Существует ряд инструментов XML, каждый из которых будет включать Graphical XSD Viewer. Я упомянул 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
Все это обеспечивает функциональность, которую сейчас на рынке не предлагает ни один поставщик!
Некоторые наши клиенты были настолько впечатлены, что приобрели дополнительную лицензию на XMLSpy только благодаря нашему инструменту. (Это не шутка!)
В настоящее время мы также реализовали аналогичные интеграции с другими редакторами XML:
С помощью редактора XML <oXygen /> :
См .: http://www.filigris.com/docflex-xml/OxygenXML/demo/html/xslt20/index.html
См. Http://www.filigris.com/docflex-xml/LiquidXML/demo/html/XMLSchema/index.html.
Что касается того, что изображают все эти диаграммы ... По сути, все они касаются модели содержимого элементов XSD (а также других компонентов XSD, которые приводят к элементам: complexTypes, группы элементов / атрибутов). Кажется, здесь есть два подхода:
Я лично считаю, что диаграммы, созданные XMLSpy, более полезны.
Тем не менее, до сих пор не было попыток (по крайней мере, известных мне) графически изобразить что-либо еще, содержащееся в схемах XML, хотя можно представить многие ...
Visual Studio 2013 имеет довольно крутой встроенный визуализатор.
Файл -> Открыть -> Файл выберите свой .xsd, а затем перетащите элементы из проводника схемы XML на поверхность конструктора.
Есть новый бесплатный веб-инструмент, в котором вы можете просматривать любую XML-схему:
Он полностью написан на JavaScript, поэтому работает в большинстве современных браузеров.
Вот мой подход - загрузите редактор XML-шаблонов freemind и CAM . Затем откройте CAM XML, создайте новый шаблон из XML, View -> View Template As Mind Map
Pros этого решения:
Минусы:
Попробуйте мой xsd-viewer, доступный по адресу https://github.com/santhosh-tekuri/jlibs .
Средство просмотра схем Grid-ML отлично подходит для поиска и визуализации схем XML: https://gridml.com/xml-schema-viewer . Я считаю, что это лучше, чем другие инструменты, когда дело касается больших схем или когда просмотр диаграмм невозможен. Инструмент также позволяет копировать путь XPath или JSON к выбранному элементу.