Comment visualiser un schéma XML?

J’ai créé un schéma XML – tout le code au fond – et je me demandais si le code pouvait générer quelque chose comme ceci:

entrer la description de l'image ici

Si oui, comment puis-je le faire?

L’application de ligne de commande open source java xsdvi crée un diagramme interactif au format SVG à partir d’une définition de schéma XML. Le fichier SVG généré peut être affiché par un navigateur Web moderne où l’utilisateur peut développer et réduire l’arborescence en cliquant avec la souris.

Voici un exemple de diagramme généré

http://xsdvi.sourceforge.net/ipo.svg

Le logiciel peut être téléchargé depuis

http://sourceforge.net/projects/xsdvi/

Il peut être exécuté comme suit (en supposant que Java est installé et que java.exe soit dans le chemin): –

  1. Allez dans le dossier dist/lib .
  2. Exécutez la commande suivante java -jar xsdvi.jar [ [ ...]] [style]

XSD Diagram est gratuit (licence GNU ouverte), n’a pas besoin d’être construit et donne un diagramme interactif. Vous ouvrez simplement le fichier et ajoutez les types souhaités sur le diagramme (initialement vide). Assez simple.

entrer la description de l'image ici

Le visualiseur intégré Oracle JDeveloper 11g est à mon avis supérieur à celui disponible pour Eclipse (qui, outre d’autres points de comparaison défavorables, n’a pu être installé que pour Indigo mais pas pour Juno ). Si je ne me trompe pas, Oracle rend le JDeveloper disponible gratuitement (nécessite uniquement une inscription à l’OTN).

entrer la description de l'image ici

Vous pouvez utiliser la visionneuse en ligne de XMLGrid qui offre un excellent support XSD et de nombreuses autres fonctionnalités:

  • Afficher les données XML dans une grid de données XML.
  • Prend en charge les types de fichiers XML, XSL, XSLT, XSD et HTML.
  • Facile à modifier ou à supprimer des nœuds existants, des atsortingbuts, des commentaires.
  • Facile d’append de nouveaux nœuds, atsortingbuts ou commentaires.
  • Facile à développer ou à réduire l’arborescence des noeuds XML.
  • Voir le code source XML.

Capture d’écran:

Capture d'écran

Si vous avez besoin d’une documentation simple et plus textuelle de votre XSD, consultez xs3p , une feuille de style XSLT qui transformera votre XSD en un format HTML plus lisible. Assez sympa et totalement gratuit.

Si cela ne suffit pas, jetez un coup d’œil à certains des outils commerciaux disponibles – je préfère personnellement le Liquid XML Studio – pas aussi cher que d’autres, et tout aussi performant!

Sous Linux (avec mono, disponible via apt-get sur Debian) et Windows:

  • XSDDiagram (fonctionne aussi sur Mono)

Si vous êtes sous Windows, je vous recommande de regarder:

  • XMLPad3 de WMHelp ou

Les deux outils sont gratuits et peuvent fournir des visualisations similaires à celles de votre exemple.

Cette image est générée à partir d’un outil d’édition de schéma XML, tel que XMLSpy d’Altova .

Il existe un certain nombre d’outils XML, tous comprenant un visualiseur graphique XSD. J’ai mentionné XML Spy simplement parce que c’est le leader de la marque. De plus, de nombreux IDE généraux, tels que Eclipse, Visual Studio et Oracle JDeveloper, seront en mesure de réaliser cette astuce.

Nous proposons un outil appelé DocFlex / XML XSDDoc qui vous permet de profiter des deux choses à la fois:

  • Pour avoir une représentation graphique de votre schéma XML
  • Pour intégrer tous les diagrammes (et liens hypertextes) dans une documentation de schéma XML hautement sophistiquée

Les diagrammes sont en fait générés non par nous, mais par Altova XMLSpy . Nous avons implémenté une intégration avec XMLSpy (avec le support complet de tous les liens hypertexte des diagrammes):

Documentation de schéma XML avec diagrammes générés par XMLSpy

Ici vous pouvez voir l’intégralité de ce document: http://www.filigris.com/docflex-xml/xsddoc/examples/html/XMLSchema/index.html

Le tout fournit une fonctionnalité non offerte par un fournisseur unique sur le marché!

Certains de nos clients ont été tellement impressionnés qu’ils ont acheté une licence supplémentaire pour XMLSpy uniquement grâce à notre outil. (C’est pas une blague!)


Actuellement, nous avons également implémenté des intégrations similaires avec d’autres éditeurs XML:

Avec XML Editor :

XSDDoc avec des diagrammes générés par l'éditeur <oXygen /> XML”></p>
<p>  Voir: <a href=http://www.filigris.com/docflex-xml/OxygenXML/demo/html/xslt20/index.html

Avec Liquid XML Studio :

XSDDoc avec des diagrammes générés par Liquid XML

Voir: http://www.filigris.com/docflex-xml/LiquidXML/demo/html/XMLSchema/index.html


Concernant ce que tous ces diagrammes représentent … Ils concernent essentiellement le modèle de contenu des éléments XSD (ainsi que d’autres composants XSD qui mènent à des éléments: complexTypes, groupes d’éléments / atsortingbuts). Il semble y avoir deux approches ici:

  1. Montrer à quoi ressemblerait un modèle de contenu de résultat (représenté par le composant donné). C’est l’approche de XMLSpy.
  2. Montrer comment un modèle de contenu particulier (du composant donné) a été dérivé d’autres composants. C’est l’approche de XML et XML liquide.

Je crois personnellement que les diagrammes générés par XMLSpy sont plus utiles.

Pourtant, il n’y avait pas encore eu de tentatives (au moins connues de moi) pour représenter graphiquement autre chose contenu dans les schémas XML, bien que l’on puisse imaginer beaucoup …

Visual Studio 2013 intègre un visualiseur très intéressant.

Fichier -> Ouvrir -> Fichier choisissez votre fichier .xsd, puis faites glisser les éléments de XML Schema Explorer sur la surface du concepteur.

Voici mon approche – téléchargez freemind et CAM XML Template Editor . Ensuite, ouvrez CAM XML, créez un nouveau modèle à partir de XML, View -> View Template As Mind Map
Avantages de cette solution:

  • Cela fonctionne localement, donc les fichiers secrets peuvent être traités,
  • totalement gratuit,
  • Open source.

Les inconvénients:

  • Assez instable avec des fichiers volumineux (plus de 20 Mo).

Il existe un nouvel outil Web gratuit, dans lequel vous pouvez afficher n’importe quel schéma XML:

Visionneuse de schéma XML en ligne

http://www.xml-tools.net

Il est écrit entièrement en JavaScript, donc il fonctionne dans la plupart des navigateurs modernes.

Nous utilisons Liquid XML Studio, qui fournit une représentation éditable intuitive d’un schéma XSD. Il montre également les annotations en ligne, que nous trouvons très utiles et la vue du code partagé / gfx est inestimable pour écrire ou éditer un XSD.

Liquid XML Studio XSD Editor

Si quelqu’un travaille avec IBM Rational Application Developer, le navigateur XSD est intégré.

Essayez mon xsd-viewer disponible sur https://github.com/santhosh-tekuri/jlibs .