dgis / xsddiagram

XSD Diagram is a free Xml Schema Definition (XSD) diagram viewer for Windows written in c# Framework.NET 2.0
http://regis.cosnier.free.fr/?page=XSDDiagram&nomenu
GNU General Public License v2.0
224 stars 52 forks source link

XSD Diagram is a free xml schema definition diagram viewer (http://regis.cosnier.free.fr).

Version 1.3alpha Copyright (c) 2006-2019 Regis Cosnier, All Rights Reserved.

This program is free software and may be distributed according to the terms of the GNU General Public License (GPL).

FEATURES:

QUICK START:

COMMAND LINE USAGE:

XSDDiagram.exe [-o output.svg] [-os EXTENSION] [-r RootElement[@namespace]]* [-e N] [-d] [-z N] [-y] [-u USERNAME] [-p PASSWORD] [file.xsd or URL]

or on Windows use 'XSDDiagramConsole.exe' instead of 'XSDDiagram.exe' if you need the console:

XSDDiagramConsole.exe [-o output.svg] [-os EXTENSION] [-r RootElement[@namespace]]* [-e N] [-d] [-z N] [-f PATH,NAME,TYPE,NAMESPACE,COMMENT,SEQ,LASTCHILD,XSDTYPE] [-a] [-y] [-u USERNAME] [-p PASSWORD] [file.xsd or URL]

Options:

-o FILE specifies the output image. '.png','.jpg', '.svg', '.txt', '.csv' ('.emf' on Windows) are allowed. If not present, the GUI is shown. -os EXTENSION specifies the output image is streamed through the standard output. EXTENSION can be: png, jpg, svg, txt, csv. If not present, the GUI is shown. -r ELEMENT specifies the root element of the tree. You can put several -r options = several root elements in the tree. -e N specifies the expand level (from 0 to what you want). Be carefull, the result image can be huge. -d Display the documentation. -z N specifies the zoom percentage from 10% to 1000% (only for .png image). Work only with the '-o', '-os png' or '-os jpg' option. -f PATH,NAME,TYPE,NAMESPACE,COMMENT,SEQ,LASTCHILD,XSDTYPE specifies the fields you want to output when rendering to a txt or csv file. -a outputs the attributes in text mode only (.txt and .csv). -y force huge image generation without user prompt. -u USERNAME specifies a username to authenticate when a xsd dependency (import or include) is a secured url. -p PASSWORD specifies a password to authenticate when a xsd dependency (import or include) is a secured url. -no-gui prevents the graphical interface to be opened.

Example 1:

XSDDiagramConsole.exe -o file.png -r TotoRoot -r TotoComplexType@http://mynamespace -e 3 -d -z 200 ./folder1/toto.xsd will generate a PNG image from a diagram with a root elements 'TotoRoot' and 'TotoComplexType', and expanding the tree from the root until the 3rd level, with the documentation.

Example 2:

XSDDiagram.exe ./folder1/toto.xsd will load the xsd file in the GUI window.

Example 3:

XSDDiagram.exe -r TotoRoot -e 2 ./folder1/toto.xsd will load the xsd file in the GUI window with a root element 'TotoRoot' and expanding the tree from the root until the 2nd level.

Example 4:

XSDDiagramConsole.exe -os svg -r TotoRoot -e 3 ./folder1/toto.xsd will write a SVG image in the standard output from a diagram with a root element 'TotoRoot' and expanding the tree from the root until the 3rd level.

Example 5:

XSDDiagramConsole.exe -os txt -r TotoRoot -e 3 -f PATH,TYPE,COMMENT -a ./folder1/toto.xsd will write a textual representation in the standard output from a diagram with a root element 'TotoRoot' and expanding the tree from the root until the 3rd level.

NOTES:

TODO LIST:

CHANGES:

version 1.3 (2019-12-XX)

version 1.2 (2018-06-19)

version 1.1 (2016-07-08)

version 1.0 (2016-02-28)

version 0.17 (2015-09-02)

version 0.16 (2013-01-23)

version 0.15 (2013-01-13)

version 0.14 (2012-12-01)

version 0.13

version 0.12 (2012-09-19)

version 0.11 (2012-07-22)

version 0.10 (2011-12-18)

version 0.9 (2011-05-17)

version 0.8 (2010-10-31)

version 0.7 (2010-07-14)

version 0.6 (2010-06-27)

version 0.5 (2008-11-11)

version 0.4 (2007-03-10)

version 0.3 (2006-11-20)

version 0.2 (2006-10-09)

version 0.1 (2006-09-14)

LICENSE:

Copyright (c) 2006-2019 Regis COSNIER, All Rights Reserved.

This program is free software and may be distributed according to the terms of the GNU General Public License (GPL).

CONTRIBUTORS:

Regis Cosnier (Initial developer) Mathieu Malaterre (Debian and Ubuntu package) Paul Selormey (Refactoring) Edu Serna (searching feature) TCH68k (for the text fileds: SEQ,LASTCHILD,XSDTYPE) Adrian Covrig Hermann Swart Arjan Kloosterboer Christian Renninger Peter Butkovic