Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


Generating XML Schema Definitions from UML diagrams

Posted on 2004-03-22
Medium Priority
Last Modified: 2013-11-19
we're producing data models using UML class diagrams (specifically, using Rational Rose). A number of our solutions will move forward by us specifying XML Schemas, and letting others develop reader applications. Does anyone know a way of automatically producing validated XML Schema Definitions files automatically from the UML class diagrams?
Question by:peterp
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
LVL 26

Expert Comment

ID: 10649687
There are tools for taking UML models and generating DB certainly seems reasonable that someone should have a tool for generating the XML schema as well.  If not, it sounds like a worthy project.  It's been quite a while since I've used Rose.   Does it have any sort of XML representation?  That is, can you "export" the model using one of the UML markup grammars such as UXL or PML?

Mike Sharp
LVL 15

Accepted Solution

dualsoul earned 1000 total points
ID: 10652795
>specifically, using Rational Rose

:) Rational Rose can do UML->XSD mapping (and vica-versa) since 2000 version.
Are you sure you licensed this plug-in? :)
LVL 26

Expert Comment

ID: 10652837
I suppose that's why I, at least, didn't know about it.  I got my version in 1999.  But it is just a mapping tool, or can you specify perhaps some configuration, and export an XSD that changes when the UML changes?  I've seen other schema mapping tools that still require you to start out with a schema--all they do is make the association of elements and attributes to a model easier.

Mike Sharp
LVL 15

Expert Comment

ID: 10655589
as i remember - you can generate XSD by your model, and do, so called, reverse-engineering of XSD to model.
So, when you changed something in model you need to regenerate XSD, when you changed XSD - you need reengineer your model you update changes.


Author Comment

ID: 10685415
Last time I looked on the Rational Developer Network, there was some discussion of an "add-in" which generates an XMI representation of the model, and how this could be processed to create a Schema. However, the plug in itself had disappeared somewhere in mid 2002.

Today, however, I find the plug-in is back, so I'll try that route.

XML DTD creation is apparently built in to Rose 2000 Enterprise (not sure about successor versions), and there is a script downloadable from the Rational Developer Network to convert these DTDs to XSD. Enterprise is rather more expensive than modeller, though...

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction Knockoutjs (Knockout) is a JavaScript framework (Model View ViewModel or MVVM framework).   The main ideology behind Knockout is to control from JavaScript how a page looks whilst creating an engaging user experience in the least …
Styling your websites can become very complex. Here I'll show how SASS can help you better organize, maintain and reuse your CSS code.
The viewer will learn the benefit of using external CSS files and the relationship between class and ID selectors. Create your external css file by saving it as style.css then set up your style tags: (CODE) Reference the nav tag and set your prop…
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)

715 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question