Laying out XML Schema elements in hierarchy

This should cover W3C XML Schema, Relax NG and DTD related problems.
Dhanunjay
Posts: 1
Joined: Wed Mar 01, 2017 6:40 am

Laying out XML Schema elements in hierarchy

Post by Dhanunjay » Wed Mar 01, 2017 6:57 am

Hello All,

I am actually trying to laying out XML schema elements in the hierarchy. Do we have this kind of feature in Oxygen else is it possible to do in any other way. we do mapping document for the interfaces we prepare. Today we do manually. If we can do the tool or any programmatic way it would be really helpful. To better understand, I will example.

Example:

Code: Select all

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"   
xmlns:tns="http://tempuri.org/PurchaseOrderSchema.xsd"
targetNamespace="http://tempuri.org/PurchaseOrderSchema.xsd"
elementFormDefault="qualified">
<xsd:element name="PurchaseOrder" type="tns:PurchaseOrderType"/>
<xsd:complexType name="PurchaseOrderType">
<xsd:sequence>
<xsd:element name="ShipTo" type="tns:USAddress" maxOccurs="2"/>
<xsd:element name="BillTo" type="tns:USAddress"/>
</xsd:sequence>
<xsd:attribute name="OrderDate" type="xsd:date"/>
</xsd:complexType>

<xsd:complexType name="USAddress">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="street" type="xsd:string"/>
<xsd:element name="city" type="xsd:string"/>
<xsd:element name="state" type="xsd:string"/>
<xsd:element name="zip" type="xsd:integer"/>
</xsd:sequence>
<xsd:attribute name="country" type="xsd:NMTOKEN" fixed="US"/>
</xsd:complexType>
</xsd:schema>
I wanna generate following from this schema:

Code: Select all

PurchaseOrder
ShipTo
name
street
city
state
zip
ShipTo
BillTo
name
street
city
state
zip
BillTo
OrderDate
country
PurchaseOrder
Please Let me know if there is any way to achieve this

adrian
Posts: 2650
Joined: Tue May 17, 2005 4:01 pm

Re: Laying out XML Schema elements in hierarchy

Post by adrian » Wed Mar 01, 2017 6:00 pm

Hi,

It's not clear what you have now and what is the desired end result.
What do you have now, schema or XML file?
What are you trying to obtain, maybe schema with a different element hierarchy?

There is no XML Schema mapper in Oxygen, if that's what you're looking for.
You can use the Design mode from Oxygen XML Editor or Developer to manually rearrange the element hierarchy from the XML schema (XSD).
If you have XML sample files, you can use Tools > Generate/Convert Schema to generate an XML Schema from the files.
If you have the XML schema file and want to generate sample XML files, you can use Tools > Generate Sample XML Files.

Regards,
Adrian
Adrian Buza
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com

rwradema
Posts: 1
Joined: Sat Apr 11, 2020 8:34 am

Re: Laying out XML Schema elements in hierarchy

Post by rwradema » Sat Apr 11, 2020 8:41 am

I think I can relate to the OP, I have a similar situation. I have a completed XSD that has been validated and we need a better visualization. The documentation tools are great, but perhaps an improved "sort" could be in order.

For example, a top-down sort would be to find all elements who are not dependents...they are not references to any other elements. Then descend down in sort order from each of these top-level modules by looking at their complexContent, recursively. This wold generate a tree-like structure.

The document is now generated in this descent order (probably removing lots of details removed, like model, source, etc). The idea is a simple roadmap, maybe with hyperlinks to the more detailed table documentation for that element.

Of course a bottom-up method would simply invert the graph but not the descent algorithm.

Post Reply