NeXML: a UML-driven XML Schema with Java bindings for the NeXus format
Served: Thu Nov 20 12:17:56 PST 2008
NeXus Home ||  NeXML home |  MetaDTD(XML)->XMLschema(XSD) |  XSD->EMF(Java) |  XSD->UML ||  MetaDTD->NeXusBeans(Java) |  NeXusBeans->UML |  MetaDTD->HTML ||  Thanks
2008-10-30: This work on direct translation of the pre-NIAC2008 NeXus MetaDTD XML templates into Java is now considered obsolete, in favour of EObject bindings to the NeXML Schema generated with the Eclipse XSD API from the NeXus XML templates. Note however that very similar and very useful UML class and instance models can be created by reverse-engineering the NeXML Schema from XSD and/or reverse-engineering the EMF Java bindings into UML.

[ARCHIVAL] NeXusBean Java components in UML

Once one has converted the NeXus Meta-DTDs "templates" into Java NeXusBean components one can easily reverse-engineer them into graphical, associative Unified Modelling Language (UML)TM using a tool like Magicdraw UMLTM.

Here is a simple example, the former (pre NIAC2006) NXgeometry and associated data items (inner elements) and other NX classes:

In Magicdraw UMLTM these elements are navigable to other diagrams !

Here is a very detailed example, the former (pre NIAC2006) NXdetector:

(Select image to enlarge in new window)
The "logical grouping" of the NeXusBean classes UML components (lower case)
has no physical meaning or interpretation in NeXus, it is only a graphical convenience.

Q: So if I have a UML tool I can build a neutron beam instrument graphically using NeXusBean components instead of messing with XML files or even Java code ?
A: Yes ! However, you still need to extract your "NeXus machine instance" from the XMI files written by your UML tool. I am working on stylesheets to do that for Magicdraw UMLTM.

Q: TRICK QUESTION: Do I need to learn Unified Modelling Language (UML)TM to command modern software engineering and get real ?
A: Yes. No tricks will get you there. One cannot sneak around the great IT mountain, one cannot quantum tunnel through it, one can only climb the mountain. So begin the journey, you may even enjoy the graphical trip ...

NeXus Home ||  NeXML home |  MetaDTD(XML)->XMLschema(XSD) |  XSD->EMF(Java) |  XSD->UML ||  MetaDTD->NeXusBeans(Java) |  NeXusBeans->UML |  MetaDTD->HTML ||  Thanks
This dynamic web site and software © 2008 Darren R C Kelly. All rights reserved.
Content streamed from the NeXus home site is available under the GNU Free Documentation License 1.2.
Developer: Darren Kelly.    Project site hosted by: webel.com.au