"Seegrid will be due for a migration to confluence on the 1st of August. Any update on or after the 1st of August will NOT be migrated"
You are here: SEEGrid>Xmml Web>AdxReport (15 Oct 2010, UnknownUser)EditAttach

ADX 2 Geochemistry/Assay report


Related pages

The XMML GeochemistryMeasurement syntax is currently under active development and testing. The data model for GeochemistryMeasurement is essentially the same as ADX, and it is expected that these encodings will be harmonised in due course. -- SimonCox - 30 Sep 2004
The documentation on this and linked pages refers to ADX 2.0. Some validation problems with external components from OASIS have been identified so these will be replaced in future versions. As an interim measure the schema in XmmlSVN:trunk/ADX/2.1 has been developed. This uses GML for base classes, but is otherwise largely the same as ADX 2.0 -- SimonCox - 06 Dec 2005

Schema documents

The ADX 2 schema is composed of seven schema documents:

  • XmmlSVN:trunk/ADX/2.0/adxBase.xsd - basic types and utility elements
  • XmmlSVN:trunk/ADX/2.0/adxProcedures.xsd - components describing analytical procedures
  • XmmlSVN:trunk/ADX/2.0/adxSpecimen.xsd - Description of specimens on which measurements are made, and specimen prep procedures
  • XmmlSVN:trunk/enumerations/LUTsampling.xsd - Code lists for specimens and procedures
  • XmmlSVN:trunk/ADX/2.0/adxAnalysis.xsd - components describing the actual measurements
  • XmmlSVN:trunk/enumerations/LUTgeochemistry.xsd - Code lists for geochemistry, including analytes
  • XmmlSVN:trunk/ADX/2.0/adx.xsd - the complete schema, which basically just "includes" the other schema documents

Example Instances

Some live examples which also incorporate formatting using XSLT.

Some example instances, based on the Newmont templates, can be found in XmmlSVN:Examples/ADX .

Document model

The base document, declared in XmmlSchemaRepository:trunk/ADX/2.0/adx.xsd, is called Report and is structured as follows:

  • Basic structure of lab->company report:


The scope of ADX 2 is reports of results, typically from laboratories to requesting companies. For more discussion on scope, see AdxDiscussions.

Discussion of some basic components defined in XmmlSVN:trunk/ADX/2.0/adxBase.xsd and relevant to several modules is included in AdxBase.

Basic structure

Within a Report, we distinguish six types of things:

  1. the report itself
  2. details of the work-order that caused the report to be generated
  3. specimen preparation procedures
  4. specimen instances
  5. analyte procedures
  6. analysis instances or "measurements"

Report and work-order

A report is produced by the service provider (e.g. a lab) in response to a work-order from the requesting company (e.g. an exploration company), in which a variety of analyses will be requested relating to a number of submitted specimens.
  • The work-order will have an identifier assigned by the requestor, and (usually) a different identifier assigned by the provider.
  • Several reports may be generated in the course of fulfilling a work-order, and each of these should have a unique identifier.
  • the status of a report (partial, certified, etc) must be indicated

Note that, following the GML pattern (see HandlesAndLabels) an object has
  • a name property holding a label, which may be a unique identifer significant to an organisation external to the context of the XML document
  • an id attribute, which holds an "opaque" identifier, used to support hyper-links within the document, and (by using XPointer syntax) between nodes in different documents.

In the context of a Report, the optional name may simply be identical to the value of the "id" attribute, or may be based on some combination of other attributes (such as the work-order, status and date), or may be more descriptive.

The properties of the report and work-order are specified in XmmlSVN:trunk/ADX/2.0/adx.xsd.

Other primary objects

The other items are related to each other as follows:
a quantity of physical material, with a common source and which has had a common handling and preparation history - specified in XmmlSVN:trunk/ADX/2.0/adxSpecimen.xsd - see AdxSpecimen for more details
Since many specimens may be prepared using the same procedure, it is convenient to describe the preparation procedure separately - specified in XmmlSVN:trunk/ADX/2.0/adxSpecimen.xsd - see AdxSpecimen for more details
an analytical procedure tied to a specific analyte species - specified in XmmlSVN:trunk/ADX/2.0/adxProcedure.xsd - see AdxProcedures for more details
a specific Analyte Procedure is applied to a specific Specimen, in order to generate a measurement of the concentration of a particular analyte, reported as the result of the Analysis - specified in XmmlSVN:trunk/ADX/2.0/adxAnalysis.xsd - see AdxAnalysis for more details

Note that a Specimen may have one or more Analyses performed on it.

Other requirements

  • chain-of-custody, QA/QC purpose, relationships between specimens - see AdxSpecimen
  • description of analysis methods, analyte-detail - see AdxProcedures
  • relationship of this measurement with other analyses - see AdxAnalysis
  • names, addresses, etc - see AdxContacts
  • project meetings, open issues that cross the boundaries above - see AdxDiscussions

Compiling groups of results, summary tables, etc

The ADX XML representation of a report uses a normalised approach that separates out the descriptions of specimens, procedures and measurements. Each Analysis links a single result to a single Specimen, using a clearly identified AnalyteProcedure. Other views of the information, particular aggregations (tabular, per specimen, per-analyte) or indication of missing specimens, analyses, etc, are not recorded directly in the XML representation. However, the necessary information is present in the XML, so the alternative views may be generated by simple processing, most conveniently using XML-specific processing languages like XSLT.

If we consider the Newmont tabular form of the results as a "conventional" representation:

  • To compile a row from the table, i.e. all the results for the same Specimen, report all the Analysis elements where the value of their specimen property is the identifer for the same specimen in the assay order.

  • To compile a column from the table, i.e. all the results for the same analyte using the same method, report all the Analysis elements where the value of their analyteProcedure is the same.

  • Values for the same analyte are indicated by a common property attribute on the result element within the set of Analysis elements.

See InformationViews for more background discussion.

Legacy formats

Compatibility with software that imports legacy formats is handled with an XSLT to transform the XML representation back into the LegacyAssayFormats.

QC/QA considerations

Shorthand terms like DUPLICATE, REPLICATE, SPLIT and REPEAT have been used conventionally to flag various relationships between analyses and specimens. The exact meaning of these terms varies from company to company and from lab to lab (but see table in RepeatsAndSplitsEtc). The ADX model distinguishes between Specimens and Analyses, so these relationships are associated with either the Analysis or the Specimen, and captured explicitly in the report using the relatedSpecimen and relatedAnalysis properties, along with other details such as the time-stamps of the preparation and analysis events.

Limitations on XML Schema validation

XML Schema validation will detect whether the Report document is constructed according to the rules of the document structure. But there is a limit as to how many "business rules" it is possible, or even desirable, to implement through document validation. Many business rules are more appropriately implemented in processing software, rather than in the document, which is a static data representation. We cannot and should not plan on anticipating all processing/checking tasks within the XML document format. The user will have software to "read" this stuff and present it to them, including cross-checking if the business rules require.

Applying the Observations and Measurements patterns

Some notes for the ADX team

Issues and change requests

Readers are invited to add issues to this table - select [Edit Table] below. It is not mandatory to enter a solution, but change requests are more likely to be implemented if a concrete solution is proposed.

%EDITTABLE{ header="| # | By | Timestamp | Component(s) | Description of issue | Proposed solution | Resolution |" format="| row, -1 | text, 25, Unknown | label, 0, 22 Oct 2017 11:00 | textarea, 3x25, Component(s) | textarea, 3x25, Description | textarea, 3x25, Proposal | select, 1, Unaddressed, Progressing, Resolved |" changerows="on" }%
# By Timestamp Component(s) Description of issue Proposed solution Resolution
1 My org 14 May 2004 collar location A big whinge a proposed solution Unaddressed
Topic revision: r54 - 15 Oct 2010, UnknownUser

Current license: All material on this collaboration platform is licensed under a Creative Commons Attribution 3.0 Australia Licence (CC BY 3.0).