NeXML: UML-driven Java NeXusBeans and XML schema for the NeXus format
Served: Thu Aug 21 00:36:18 PDT 2008
NeXus Home ||  NeXML home |  Meta-DTD->HTML |  Meta-DTD->NeXusBeans(Java) |  Java->UML |  UML->Schema(XSD) |  Thanks

The system presented here is under development by Dr Darren Kelly and Dr Nick Hauser for the Neutron Beam Instrument program of the OPAL research reactor, for the Bragg Institute of the Australian Nuclear Science and Technology Organisation (ANSTO).

2007-04-08: The NeXusBeans beta release is available for download,
including the new metamodel-driven NeXusXmlTemplateToNeXusBean generator tool !
2007-02-25: The NeXusBeans alpha release is available for download
2006-05-30: This is currently only an announcement space for the NeXML project; it may eventually move to the ANSTO/Bragg web space. Links to the NeXML software downloads and other NeXus resource will be maintained here in any case.
Feedback by email from neutron science NeXus users and NIAC members is already welcome.

Java NeXusBean generation and XML Schema for NeXus neutron science

This is a project for automated translation of the NeXus neutron science data format from NeXus "Meta-DTDs" (XML component templates) to Java NeXusBean components, and also to NeXus component and XML Schema modelling in the Unified Modelling Language (UML)TM.

This demonstration project is strictly DOWNSTREAM from the offical NeXus home site; it "consumes" artefacts approved by the NeXus International Advisory Committee (NIAC) and translates them into other forms, such as:
  • Meta-DTD (XML template) -> HTML using XSL transformation stylesheets
  • Meta-DTD (XML template) -> NeXusBean (Java) using the Bragg XML2Java converter
  • NeXusBean (Java) -> UML (reverse-engineering in Magicdraw UMLTM)
  • UML class model -> XML Schema (XSD) (using Magicdraw UMLTM transformation tool)

Q: What does NeXML stand for ? Who developed the code and coined the project name ?
A: It stands for "XML and UML tools for NeXus" ? I (Darren Kelly) coined the name and developed the system, with the support of the Bragg Institute and its representing NIAC member Dr Nick Hauser.

Q: How should one pronounce it?
A: Nex-M-L (like "necks-em-el")

Q: Is this yet another NeXus neutron science format spin-off site ?
A: No. This is strictly a dynamic consumer of artefacts available online via the official NeXus site. In many cases the NeXus artefacts are consumed dynamically, before your ears and eyes, by pulling artefacts from the NeXus site and NeXus WiKi and transforming them for you. (In some case transformations are demonstrated on locally stored copies.)

Q: Will the techniques presented here be used to replace the NeXus "meta-DTDs" ?
A: Not yet. This is a demonstration for the benefit of NIAC and NeXus users. The techniques are being used for the OPAL neutron beam instruments, however this NeXML site is strictly only a proof-of-concept demonstration for consideration by the next NIAC 2007.

Q: Will the generators used here "feedback" to the NeXus site ?
A: Not yet. These strategies will remain strictly downstream from NeXus until further notice, and after detailed consideration at NIAC2007.

Q: Do I need to know XSL stylesheets, Java, and Unified Modelling Language (UML)TM to understand this demonstration ?
A: Much of the NeXML approach is presented as simple dynamically generated HTML tables. However, to properly understand the Java NeXusBean concept, the software engineering, and the XML Schema, you will need at least some of the lingua franca of IT (I mean UML, of course).

NeXus Home ||  NeXML home |  Meta-DTD->HTML |  Meta-DTD->NeXusBeans(Java) |  Java->UML |  UML->Schema(XSD) |  Thanks
This dynamic web site and software © 2006 Australian Nuclear Science and Technology Organisation (ANSTO). All rights reserved.
Content streamed from the NeXus home site is available under the GNU Free Documentation License 1.2.
Developer: Darren Kelly, Data Analysis Group, Bragg Institute.    Project site hosted by: webel.com.au