Let's be clear about some terms used in this section.
Hierarchical Data Format from The HDF Group.
NeXus data files using HDF
may be stored in either version 4 (HDF4) or version 5 (HDF5). New NeXus HDF
files should only use HDF5. The preferred file extensions
(but not required)
include .hdf, .h5, .nxs,
and .nx5.
NeXus Definition Language files define the spcifications for NeXus base classes, application definitions, and contributed classes and definitions. It is fully described in the NXDL chapter in Volume II of this documentation.
Schematron.[24] is an alternative to XSD and is used to validate the content and structure of an XML file. NeXus uses Schematron internally to validate data files.
File validation is the comparison of file contents, in an unbiased way, with the set of rules that define the structure of such files.
The eXtensible Markup Language (XML) eXtensible Markup Language (XML).[25] is a standard business tool for the exchange of information. It is broadly supported by a large software library in many languages. NeXus uses XML for several purposes: data files, NXDL definitions, rules, and XSLT transformations.
XML files are often defined by a set of rules (or schema). A common language used to implement these rules is XML Schema (XSD).[26] Fundamentally, XML, XSD, XSLT, and Schematron files are all in XML.
XML files can be flexible enough to convert from one set of rules to another. An example is when one company wishes to exchange catalog or production information with another. The XML StyLsheet Transformation (XSLT)[27] (XSLT) language is often used to describe each direction of the conversion of the XML files between the two rule sets.