Hice un esquema XML, todo el código básicamente, y me preguntaba si hay una manera de que el código pueda generar algo como esto:
Si es así, ¿cómo puedo hacerlo?
Hice un esquema XML, todo el código básicamente, y me preguntaba si hay una manera de que el código pueda generar algo como esto:
Si es así, ¿cómo puedo hacerlo?
Respuestas:
La aplicación Java de línea de comando de código abierto xsdvi crea un diagrama interactivo en formato SVG a partir de una definición de esquema XML. El archivo SVG generado puede visualizarse mediante un navegador web moderno donde el usuario puede expandir y contraer el árbol haciendo clic con el mouse.
Aquí hay un ejemplo de un diagrama generado
http://xsdvi.sourceforge.net/ipo.svg
El software se puede descargar desde
http://sourceforge.net/projects/xsdvi/
Se puede ejecutar de la siguiente manera (suponiendo que Java esté instalado y java.exe
esté en la ruta): -
dist/lib
carpeta.java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]
java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]
(de xsdvi.zip /res/readme.txt)
El Diagrama XSD es gratuito (licencia abierta GNU), no necesita ser construido y proporciona un diagrama interactivo. Simplemente abra el archivo y agregue los tipos que desee en el diagrama (inicialmente en blanco). Muy claro.
El visor incorporado Oracle JDeveloper 11g es, en mi opinión, superior al disponible para Eclipse (que, además de otros puntos de comparación desfavorables, solo pude instalarlo para Indigo pero no para Juno ). Si no me equivoco, Oracle hace que JDeveloper esté disponible de forma gratuita (solo requiere registrarse en la OTN).
Puede usar el visor en línea de XMLGrid , que proporciona una excelente compatibilidad con XSD y muchas otras características:
Captura de pantalla:
En Linux (con mono, disponible a través apt-get
de Debian) y Windows:
Si está en Windows, le recomiendo que eche un vistazo a:
Ambas herramientas son gratuitas y ambas pueden proporcionar visualizaciones similares a las mostradas en su ejemplo.
Si necesita una documentación simple y más orientada al texto de su XSD, consulte xs3p , una hoja de estilo XSLT que transformará su XSD en un formato HTML más legible. Bastante agradable y totalmente gratis.
Si eso no es suficiente, echa un vistazo a algunas de las herramientas comerciales que existen, personalmente prefiero el Liquid XML Studio , ¡no tan caras como otras y tan capaces!
Esa imagen se genera a partir de una herramienta de edición de esquemas XML, como XMLSpy de Altova .
Hay una serie de herramientas XML, todas las cuales incluirán un visor gráfico XSD. Mencioné XML Spy simplemente porque es el líder de la marca. También muchos IDE generales como Eclipse, Visual Studio y Oracle JDeveloper podrán hacer este truco.
Visual Studio 2013 tiene incorporado un visualizador bastante bueno.
Archivo -> Abrir -> Archivo, elija su .xsd y luego arrastre elementos desde el Explorador de esquemas XML a la superficie del diseñador.
Ofrecemos una herramienta llamada DocFlex / XML XSDDoc que le permite disfrutar de ambas cosas a la vez:
De hecho, los diagramas no los generamos nosotros, sino Altova XMLSpy . Implementamos una integración con XMLSpy (con el soporte completo de todos los hipervínculos de diagrama):
Aquí puede ver el documento completo: http://www.filigris.com/docflex-xml/xsddoc/examples/html/XMLSchema/index.html
¡Todo esto proporciona una funcionalidad que no ofrece ningún proveedor en este momento en el mercado!
Algunos de nuestros clientes quedaron tan impresionados que compraron una licencia adicional para XMLSpy solo por nuestra herramienta. (¡Eso no es broma!)
Actualmente, también hemos implementado integraciones similares con otros editores XML:
Ver: http://www.filigris.com/docflex-xml/OxygenXML/demo/html/xslt20/index.html
Ver: http://www.filigris.com/docflex-xml/LiquidXML/demo/html/XMLSchema/index.html
Con respecto a lo que representan todos esos diagramas ... Esencialmente, se trata del modelo de contenido de elementos XSD (así como de otros componentes XSD que conducen a elementos: tipos complejos, grupos de elementos / atributos). Parece que hay dos enfoques aquí:
Personalmente, creo que los diagramas generados por XMLSpy son más útiles.
Sin embargo, hasta ahora no hubo intentos (al menos que yo sepa) de representar gráficamente cualquier otra cosa contenida en esquemas XML, aunque uno puede imaginar muchos ...
Hay una nueva herramienta web gratuita, donde puede ver cualquier esquema xml:
Visor de esquemas XML en línea
Está escrito completamente en JavaScript, por lo que se ejecuta en la mayoría de los navegadores modernos.
Aquí está mi enfoque: descargue Freemind y CAM XML Template Editor . Luego abra CAM XML, cree una nueva plantilla a partir de XML, Ver -> Ver plantilla como mapa mental
Pros de esta solución:
Contras:
Pruebe mi xsd-viewer disponible en https://github.com/santhosh-tekuri/jlibs .
Grid-ML Schema Viewer es ideal para buscar y visualizar esquemas XML: https://gridml.com/xml-schema-viewer . Lo encuentro mejor que otras herramientas cuando se trata de esquemas grandes o cuando no es posible navegar a través de un diagrama. La herramienta también le permite copiar la ruta XPath o JSON del elemento de selección.