---
title: "Create an XSD from XML · Appnovation"
url: "https://www.appnovation.com/insights/create-xsd-xml"
description: "Save time in Alfresco WCM: how to generate an XSD schema automatically from an existing sample XML document for each content type."
---

Article

# Create an XSD from XML

[![](https://cdn.sanity.io/images/ey850001/production/36eb314260fb474cacc1b3a473d7e8402d997898-68x68.png?w=68&auto=format) Appno Blogger Appnovation Coop](/people/appno-blogger.md) Oct 29, 2010  
 2 min read 

![Appnovation Blog Default Header](https://cdn.sanity.io/images/ey850001/production/9efe1c26d9584ecfb3dfef5a63e698bf4567d305-1440x600.jpg?w=1400&auto=format) 

While we are working with Alfresco WCM, in some cases we need to create an XSD for each content type and it's a time consuming job even though the structure of the content type is not complicated. But in the case of creating an XSD from existing sample XML document then you don't need to do the tedious job and can save lots of times by using conversion tools such as InstanceToSchema or Sun RELAX NG Converter. But I personally like "trang" which is light and powerful.

**What is trang?**

Trang is a Java-based tool which translates between different forms of xml definitions such as Regular Language Description for XML Next Generation(RELAX NG) XML Syntax, RELAX NG compact syntax, XML 1.0 Document Type Definition(DTD) and W3C XML Schema(XSD). Trang can also infer a schema from one or more example XML documents.

**Running Trang:**

1\. Prerequisite : The file trang.jar contains Trang packaged for use with a Java runtime and it requires a Java runtime compatible with the Java 2 Platform, J2SE version 5 or any later version.

2\. Download trang.jar Once you have installed a Java runtime, then download the latest trang.jar from here

3\. Running It's simple. The command is :`java -jar trang.jar args` where args are additional command-line arguments described [here. (opens in new window)](http://www.thaiopensource.com/relaxng/trang-manual.html#arguments) And in our case (create an XSD from XML), the command will be

`java -jar trang.jar`

So, let's create an XSD from sampel XML document

3.1 Assume the "trang.jar" is in "/home/user/trang" and the sample XML file named "test.xml" are in the same folder.

3.2 Run the command below :

`java -jar trang.jar text.xml test.xsd`

And you will see the test.xsd file in the "trang" folder.

[![](https://cdn.sanity.io/images/ey850001/production/36eb314260fb474cacc1b3a473d7e8402d997898-68x68.png?w=68&auto=format) Appno Blogger Appnovation Coop · Appnovation](/people/appno-blogger.md) 

## Keep reading

[![What is Sovereign AI](https://cdn.sanity.io/images/ey850001/production/a5889abdd5e80376912546622e046e3fbef234b4-2496x1664.png?w=640&auto=format)](/insights/what-is-open-source-sovereign-ai.md)

 Article · 7 min AI 

### [What Is Open Source, Sovereign AI?](/insights/what-is-open-source-sovereign-ai.md)

Every company is encouraging more AI, and almost every AI bill is climbing. Sovereign AI is about two kinds of control: over your data and over your costs. Here's why open source sits at its foundation.

[Iain MacNeil](/people/iain-macneil.md) Article 

[![AI-first experience design](https://cdn.sanity.io/images/ey850001/production/8bbc2418e87924ef10f36115478a2e10d5bed95e-1584x624.jpg?w=640&auto=format)](/insights/how-build-ai-first-experience-without-throwing-out-everything-youve-already-built.md)

 Article · 6 min AI Sep 10, 2026 

### [How to Build an AI-First Experience Without Throwing Out Everything You've Already Built](/insights/how-build-ai-first-experience-without-throwing-out-everything-youve-already-built.md)

Users now expect a direct answer, not a list of links to click through. Here's how organizations can layer an AI-First experience onto their existing website or app, in weeks rather than years.

[Andrew Douglas](/people/andrew-douglas.md) Article 

[![What Becomes Possible When AI Can Read All the Data](https://cdn.sanity.io/images/ey850001/production/c28ab0bd26753421ee42937e13adc7a7f19b47f0-1296x510.jpg?w=640&auto=format)](/insights/what-becomes-possible-when-ai-can-read-all-data.md)

 Article · 4 min AI Sep 09, 2026 

### [What Becomes Possible When AI Can Read All the Data](/insights/what-becomes-possible-when-ai-can-read-all-data.md)

Most of the world's data has never been analyzed, only sampled. AI changes that. How AI-ready data platforms unlock questions no one could ask before.

[Appnovation](/people/appnovation.md) Article 

## Get the thinking,  
*before everyone else.*

One considered email a month. New essays, field notes from live engagements, and the occasional strong opinion. No noise.
