Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Languages / XML

Generate Sample XML from XSD

5.00/5 (12 votes)
8 Jun 2012CPOL 173K  
This is an alternative for Generate Sample XML from XSD.

Introduction

I spent considerable amount of time to know how to generate XML from a given XSD and I had great difficulties finding solution. That is why I am sharing this Tip which is I think useful.

Background 

We have XSD.EXE available to generate XML Schema (XSD) from a XML file but sometime we might need to work generate an XML for given XSD, specially in case of writing Service Client, where for Server has exposed Request XSD and Response XSD and want to start with client Request.

Generate Sample XML using Visual Studio 

Create an XSD File

Open/Create XSD file in Visual Studio

XML
<?xml version="1.0" encoding="utf-8"?>
<xs:schema targetNamespace="http://tempuri.org/XMLSchema.xsd"
    elementFormDefault="qualified"  
    xmlns="http://tempuri.org/XMLSchema.xsd" 
    xmlns:mstns="http://tempuri.org/XMLSchema.xsd"  
    xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:simpleType name="AuthorInfor">
    <xs:annotation>
      <xs:documentation>this element will all authors for book</xs:documentation>
    </xs:annotation>
    <xs:restriction base='xs:string'>
      <xs:maxLength value='15'/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="IsdnInfo">
    <xs:annotation>
      <xs:documentation>this element defines 10 digit ISDN code</xs:documentation>
    </xs:annotation>
    <xs:restriction base='xs:string'>
      <xs:maxLength value='10'/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="BookShelfInfo">
    <xs:sequence>
      <xs:choice minOccurs="1" maxOccurs="1">
        <xs:choice minOccurs="1" maxOccurs="5">
          <xs:element name="byAuthor" type="AuthorInfor"/>
        </xs:choice>
        <xs:element name="byISDNNo" type="IsdnInfo"/>
      </xs:choice>
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MyBookShelf" type="BookShelfInfo"/>
</xs:schema>

Open XML Schema Explorer

Open XML Schema Explorer by clicking on "XML Schema Explorer" or 'Use the XML Schema Explorer...'.

Image 1

You can also open "Schema Explorer" by clicking View menu.

Image 2

Generate XML File

If your Schema file is valid and you are having elements, then Right click on element and click on "Generate Sample XML", this functionality generates XML file in temp folder and open ups into Visual Studio.

Image 3

Generate Sample XML file generating XML like below:

XML
<?xml version="1.0" encoding="utf-8"?>
<MyBookShelf xmlns="http://tempuri.org/XMLSchema.xsd">
  <byAuthor>Chetan Bhagat</byAuthor>
  <byAuthor>Aditya Ghosh</byAuthor>
  <byAuthor>Reena Mehta</byAuthor>
</MyBookShelf>

Simply

Remember, this is quite easy to generate any sample XML file from XSD. Just think of it! 

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)