Я створив XML-схему - в основному весь код - і мені було цікаво, чи є спосіб, що код може генерувати щось подібне:
Якщо так, як я можу це зробити?
Я створив XML-схему - в основному весь код - і мені було цікаво, чи є спосіб, що код може генерувати щось подібне:
Якщо так, як я можу це зробити?
Відповіді:
Командний рядок з відкритим кодом, програма java xsdvi створює інтерактивну діаграму у форматі SVG з визначення XML Schema. Згенерований 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 безкоштовна (відкрита ліцензія GNU), її не потрібно будувати та дає інтерактивну діаграму. Ви просто відкриєте файл і додайте потрібні типи на (спочатку порожню) діаграму. Досить прямо вперед.
На мою думку, вбудований переглядач Oracle JDeveloper 11g перевершує доступний для 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, зможуть зробити цей трюк.
У Visual Studio 2013 вбудований досить класний візуалізатор.
Файл -> Відкрити -> Файл, виберіть .xsd, а потім перетягніть елементи з XML Schema Explorer на поверхню дизайнера.
Ми пропонуємо інструмент під назвою DocFlex / XML XSDDoc, який дозволяє отримувати задоволення від обох речей одночасно:
Діаграми насправді генеруються не нами, а Altova XMLSpy . Ми реалізували інтеграцію з XMLSpy (за повної підтримки всіх гіперпосилань діаграми):
Тут ви можете побачити повний цей документ: http://www.filigris.com/docflex-xml/xsddoc/examples/html/XMLSchema/index.html
Все це забезпечує функціонал, який зараз не пропонує жоден постачальник на ринку!
Деякі наші клієнти були настільки вражені, що придбали додаткову ліцензію на XMLSpy лише завдяки нашому інструменту. (Це не жарт!)
В даний час ми також реалізували подібні інтеграції з іншими редакторами XML:
Дивіться: http://www.filigris.com/docflex-xml/OxygenXML/demo/html/xslt20/index.html
За допомогою рідини XML Studio :
Дивіться: http://www.filigris.com/docflex-xml/LiquidXML/demo/html/XMLSchema/index.html
Щодо зображень усіх цих діаграм ... По суті, вони стосуються змістової моделі елементів XSD (а також інших компонентів XSD, що ведуть до елементів: complexTypes, групи елементів / атрибутів). Здається, тут є два підходи:
Я особисто вважаю, що діаграми, згенеровані XMLSpy, є більш корисними.
Але поки що не було спроб (принаймні мені відомих) зобразити графічно все, що міститься в XML-схемах, хоча можна уявити багато ...
Існує новий безкоштовний у користуванні веб-інструмент, де ви можете переглядати будь-яку схему xml:
Він написаний повністю на JavaScript, тому працює у більшості сучасних браузерів.
Ось мій підхід - завантажте Freemind і редактор шаблонів CAM XML . Потім відкрийте CAM XML, створіть новий шаблон із XML, Перегляд -> Переглянути шаблон як розумну карту
Переваги цього рішення:
Мінуси:
Спробуйте мій xsd-переглядач, доступний на веб-сайті https://github.com/santhosh-tekuri/jlibs .
Переглядач схем Grid-ML відмінно підходить для пошуку та візуалізації XML-схем: https://gridml.com/xml-schema-viewer . Я вважаю, що це краще, ніж інші інструменти, коли мова йде про великі схеми або під час перегляду діаграми неможливо. Інструмент також дозволяє скопіювати шлях XPath або JSON елемента вибору.