Comment visualiser un schéma XML? [fermé]

138

J'ai créé un schéma XML - tout le code en gros - et je me demandais s'il y avait un moyen pour que le code puisse générer quelque chose comme ceci:

entrez la description de l'image ici

Si oui, comment puis-je le faire?

mat
la source
3
Si vous utilisez Confluence, consultez le nouveau plugin de visionneuse XSD sur Atlassian Marketplace
1
il semble que l' outil que j'ai trouvé est celui dont l'OP avait une capture d'écran.
toddmo
Quel langage de programmation utilisez-vous? Si vous recherchez simplement une recommandation de logiciel, il existe de meilleurs sites StackExchange pour cela.
Aminadav Glickshtein

Réponses:

68

L'application java en ligne de commande open source 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 se java.exetrouve dans le chemin): -

  1. Allez dans le dist/libdossier.
  2. Exécutez la commande suivante java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]
Erik Sjölund
la source
2
utilisation: java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style](à partir de xsdvi.zip /res/readme.txt)
roblogic
Le seul problème avec cet outil est que le SVG généré est un peu lent. Par exemple, si je «tout effondre» après l'ouverture, il faut environ quinze secondes pour qu'il s'effondre. Mais c'est gratuit ... alors ...
An Illusion
Excellent logiciel open source! le seul problème est que le SVG sera un gros fichier et que le clic sur le bouton +/- deviendra très lent (3-5 secondes)
Xin Meng
Excellent outil! Je me demande s'il est possible de faire une telle transformation XSD-> SVG avec XSLT
Dima Fomin
Vous devez acheter un ordinateur plus rapide :) Cela fonctionne bien pour moi, outil vraiment sympa
debuti
52

Le diagramme XSD est gratuit (licence ouverte GNU), n'a pas besoin d'être construit et donne un diagramme interactif. Il vous suffit d'ouvrir le fichier et d'ajouter les types souhaités sur le diagramme (initialement vide). Assez simple.

entrez la description de l'image ici

Toddmo
la source
3
belle, fonctionne même avec le dernier Mono-MDK (4.0) sur OSX. Exactement ce que je cherchais
Erich Eichinger
1
Petit logiciel génial. Super léger et n'a pas besoin de JRE, rapide. Aimer.
Mohammed Lokhandwala
C'est plutôt bien.
Uwe Ziegenhagen le
30

Le visualiseur intégré Oracle JDeveloper 11g est à mon avis supérieur à celui disponible pour Eclipse (qui, en plus d'autres points de comparaison défavorables, je n'ai pu installer 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).

entrez la description de l'image ici

Marcus Junius Brutus
la source
1
JDeveloper (édition Java) a fait le travail pour moi, a essayé d'autres logiciels mentionnés ici mais pas de chance.
SyAu
2
Attention lors de son utilisation sur OSX: après avoir décompressé le fichier .zip, JDeveloper.app ne démarre pas en raison d'un problème d'autorisation de fichier. Vous devez définir le bit exécutable sur /Applications/jdeveloper/JDeveloper.app/Contents/MacOS/JDeveloper. Ensuite, il ne démarrera toujours pas tant que vous n'aurez pas enregistré le chemin de votre JDK dans ~ / .jdev_jdk comme ceci: echo $ JAVA_HOME> ~ / .jdev_jdk
user17481
Ça fonctionne super bien! Nous avions l'habitude d'utiliser XMLSpy pour ajouter des images de l'API, ce qui conduisait à des moments difficiles pour trouver quelqu'un qui avait une licence, trouver quelqu'un qui avait un essai ou trouver quelqu'un qui n'avait pas déjà installé l'essai pour faire les images. Il semblait idiot d'acheter un programme de 500 $ pour quelques photos seulement.
Captain Man le
28

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

  • Affichez les données XML dans une grille de données XML.
  • Prend en charge les types de fichiers XML, XSL, XSLT, XSD et HTML.
  • Facile à modifier ou supprimer les nœuds, attributs, commentaires existants.
  • Facile à ajouter de nouveaux nœuds, attributs ou commentaires.
  • Facile à développer ou réduire l'arborescence des nœuds XML.
  • Afficher le code source XML.

Capture d'écran:

Capture d'écran

gelées
la source
21

Sous Linux (avec mono, disponible via apt-getDebian) et Windows:

Si vous êtes sous Windows, je vous recommande de jeter un œil à:

Les deux outils sont gratuits et sont tous deux capables de fournir des visualisations similaires, comme indiqué dans votre exemple.

datentyp
la source
2
Le diagramme XSD est vraiment sympa. Merci. Une chose à noter: lorsque vous chargez un XSD, l'application n'affiche rien sur l'onglet diagramme, pas même l'élément racine. Je pensais que c'était cassé, mais il s'avère que vous devez juste lui dire explicitement quels éléments montrer.
dan-gph
19

Si vous avez besoin d'une documentation simple et plus orientée texte 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 œil à certains des outils commerciaux - je préfère personnellement Liquid XML Studio - pas aussi cher que d'autres, et tout aussi performant!

marc_s
la source
2
La Community Edition a été remplacée par la Starter Edition non gratuite pour 106,90 USD par an.
Andrew Swan
@Andrew Swan: quel dommage ... encore - Liquid XML est un excellent outil
marc_s
Actuellement (mars 2013), une version d'essai gratuite de 30 jours entièrement fonctionnelle est disponible (à nouveau).
Jürgen Thelen
Le lien xs3p référencé ci-dessus ne fonctionne pas. Quelqu'un sait où il est allé?
theMayer
13

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, qui comprendront tous une visionneuse 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 comme Eclipse, Visual Studio et Oracle JDeveloper pourront faire cette astuce.

APC
la source
2
Dans Eclipse, vous pouvez cliquer avec le bouton droit sur le fichier XSD et choisir Ouvrir avec -> Autre ... -> Éditeur de schéma XML, bien que l'éditeur ne réponde pas un peu à la navigation dans un fichier de 340 Ko.
Andrew Swan
2
JDeveloper XSD View a l'air bien.
Carlos
5

Visual Studio 2013 a un visualiseur assez cool intégré.

Fichier -> Ouvrir -> Fichier choisissez votre .xsd, puis faites glisser les éléments de l'Explorateur de schémas XML sur la surface du concepteur.

ambidextère
la source
Comment ouvrir la surface du designer?
Nitish Upreti
1
La surface de conception doit s'ouvrir lorsque vous faites Fichier -> Ouvrir -> choisissez le fichier .xsd. À ce stade, votre schéma XML n'est pas encore affiché, donc la surface du concepteur est en quelque sorte vide ... Elle s'ouvrira comme un onglet vide avec des instructions sur ce qu'il faut faire. Le texte lit "Visualisez les nœuds dans votre ensemble de schémas XML en les faisant glisser de l'Explorateur de schémas XML sur l'aire de conception" Vous devez cliquer sur ce mot Explorateur de schémas XML, c'est un lien qui ouvrira un onglet sur le côté (cet onglet sera puis contenez vos morceaux de schéma xml que vous pouvez faire glisser sur la surface du concepteur)
ambidextres
Je ne suis pas sûr, mais il s'agit peut-être d'une fonctionnalité disponible uniquement sur l'édition Enterprise du VS. Je n'ai pas essayé avec d'autres éditions VS.
ambidextres
Visual Studio 2017 peut également afficher la structure XSD.
Tony
5

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

  • Pour avoir une représentation de diagramme de votre schéma XML
  • Pour avoir tous ces diagrammes intégrés (et hyperliens) dans une documentation de schéma XML hautement sophistiquée

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

Documentation de schéma XML avec des 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é qui n'est proposée par aucun fournisseur unique actuellement 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. (Ce n'est pas une blague!)


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

Avec <oXygen /> XML Editor :

XSDDoc avec des diagrammes générés par <oXygen /> XML Editor

Voir: 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 ... Essentiellement, ils concernent tous 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 / d'attributs). Il semble qu'il existe deux approches ici:

  1. Pour 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 <oXygen /> XML et Liquid XML.

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

Pourtant, il n'y a eu jusqu'à présent aucune tentative (du moins à ma connaissance) de représenter graphiquement quoi que ce soit d'autre contenu dans les schémas XML, bien que l'on puisse en imaginer beaucoup ...

Léonid Rudy
la source
4

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

Visionneuse de schémas XML en ligne

www.xml-tools.net

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

Peter Raffelsberger
la source
Je ne vois aucun menu de barre d'outils en haut de Google Chrome?
user310291
Veuillez me dire la version du système d'exploitation et du navigateur - merci!
Peter Raffelsberger
Fonctionne comme un charme, merci. Profitez de votre vote positif.
Koray Tugay
3

Voici mon approche - téléchargez l' éditeur de modèles Freemind et CAM XML . Ensuite, ouvrez CAM XML, créez un nouveau modèle à partir de XML, View -> View Template As Mind Map
Pros 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 sh Mo).
0x6B6F77616C74
la source
1

Nous utilisons Liquid XML Studio, il fournit une représentation modifiable intuitive d'un schéma XSD. Il montre également les annotations en ligne, ce que nous trouvons très utiles et la vue split code / gfx est inestimable lors de l'écriture ou de l'édition d'un XSD.

Éditeur XSD Liquid XML Studio

Sprotty
la source
1

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

Santhosh Kumar Tekuri
la source
Essayer ceci, mais deadlock.netbeans.org/maven2 donne une erreur 404, et si j'utilise le fichier JAR org-netbeans-swing-outline de NetBeans 6.9.1, j'obtiens un NPE à DefaultRenderDataProvider.java:49
Andrew Swan
deadlock.netbeans.org/maven2 est en panne. maintenant j'ai utilisé mon référentiel personnel. essayez avec de nouvelles sources ...
Santhosh Kumar Tekuri
0

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

ctomek
la source
0

Grid-ML Schema Viewer est idéal pour rechercher et visualiser des schémas XML: https://gridml.com/xml-schema-viewer . Je le trouve meilleur que d'autres outils lorsqu'il s'agit de grands schémas ou lorsque la navigation dans un diagramme n'est pas faisable. L'outil vous permet également de copier le chemin XPath ou JSON de l'élément de sélection.

Écran de recherche de schéma Grid-ML

Abdias Lira
la source