XSD visualizer
Paste an XML Schema (XSD) and instantly see its types, elements, attributes, and references as a downloadable diagram. Everything runs in your browser.
Paste an XSD above to generate a diagram.
Why visualize an XSD?
XML Schema files define the shape of XML documents for SOAP services, EDI and banking messages, government filings, and configuration formats. A real XSD spreads one model across dozens of named types, groups, and extensions, often in a file thousands of lines long, so the structure is hard to see from the text.
A diagram lays each complex type out as a table and draws a line for every type reference and base type, so you can review a partner's contract, find the type an element actually uses, or explain a message format to someone who has never read XSD.
Supported schema features
The visualizer reads XML Schema 1.0 and 1.1 documents with any namespace prefix, or no prefix at all. It handles sequence, all, and choice, named group and attributeGroup references, element ref links, and extension and restriction through complexContent and simpleContent, as well as mixed content and wildcards. Schemas inside a WSDL file are drawn too.
FAQ
Which parts of an XSD does the visualizer draw?
Every named complex type becomes a table, and so does every element declared with an anonymous complex type, including nested ones, which are named after their parent. Rows list child elements from sequence, all, and choice groups, plus attributes, with their XSD types. Referenced groups and attribute groups are expanded in place, simple types show their name or enum, and simpleContent text appears as a (text) row. Facets such as pattern and maxLength aren't drawn, because they constrain values rather than structure.
What do the @, ?, and [] markers mean?
A name that starts with @ is an XML attribute rather than a child element, following XPath notation. A trailing question mark marks something optional: an element with minOccurs="0", a member of a choice, or an attribute without use="required". A type ending in [] means the element can repeat, because its maxOccurs is greater than one or unbounded. Items typed xs:ID get a PK badge, since IDs identify an element within the document.
How are type references and inheritance shown?
An element whose type or ref points at a complex type gets an FK badge and a line to that type's table. A complex type that extends or restricts another through complexContent gets a line to its base type, and its table lists only the members it adds, so read inherited members from the base table. Namespace prefixes are matched by local name, so tns:Customer and Customer resolve to the same table.
Can I paste a WSDL file?
Yes. If the document isn't an xs:schema itself, the visualizer looks for every XML Schema inside it, such as the schemas in a WSDL types section, and draws their types together in one diagram. Messages, port types, bindings, and services are skipped, because they describe operations rather than the shape of the XML payloads. The same applies to any other XML document that embeds a schema.
What happens with xs:include and xs:import?
The browser can't fetch the files they point to, so included and imported schemas are listed under the diagram instead of being drawn. Types that come from those files show their name as a plain label without a link. To see the full model, paste the schemas into one document, or paste each file in turn. Types the visualizer can't find anywhere are listed in the same note.
Is my XSD sent to a server?
No. The XML is parsed by your browser's built-in parser, and the diagram is drawn as SVG on the page, so nothing you paste is uploaded to Basedash or anywhere else. That makes the tool safe for internal integration contracts and partner schemas. Select Download SVG to save the diagram for a design document or a pull request.
Go from schema to dashboard
Connect your database to Basedash and build charts from real data.