MaXML Architecture

From IMSMA Wiki
Jump to: navigation, search
Warning.jpg The form of maXML exported and imported by IMSMA differs slightly from the maXML defined by the generic maXML schema and therefore some exports will not validate to the original schema. Anyone who would like to exchange information with IMSMANG should follow IMSMA maXML dictionary to construct or read a maXML file correctly formatted for IMSMANG.

As the elements in the maXML schema share many components, best practices have indicated that implementing a modular design approach benefits the designers by maximizing re-use of frequently declared groups of elements. The maXML architecture strives to take advantage of the efficiencies of re-use and has implemented a Venetian Blind schema design. The Venetian Blind design is characterized by the following:

  • uses type definitions as the main form of component re-use
  • nests element declarations within type definitions
  • maximizes potential to hide namespace complexities

The Venetian Blind approach steers away from rigid hierarchical models where-in designers create new subclasses to accommodate further requirements, and link these to ever-increasingly complex tree types. The Venetian Blind approach favours elements and types that are loosely connected to a common root. The components are stand-alone and can be understood, developed, and modified independently.

MaXML uses eight artifacts that are built from complex and simple types in accordance with the Venetian Blind Design as defined above.

MaXML consists of one schema file containing the whole specification for the language. maXML builds on definitions of a number of types in order to ensure re-usability. The types are then used to build Artifacts. The Artifacts are structured to contain different parts of the information contained in IMSMANG. The MineActionFieldReport Artifact contains information from different types of Data Entry Forms in IMSMANG while the other Artifacts contain different types of Auxiliary data. This architecture ensures maximum re-usability of commonly used data structures.

Artifacts

Artifacts are a collection of elements that are assembled for a specific data exchange purpose. The Artifacts in maXML each reflect a part of the information in IMSMA that can be exported and in some cases imported by the system. The artifacts used in maXML are designed to meet typical data collection formats in IMSMA. The Artifacts are the only parts of maXML that can be instantiated.

The Artifacts can be divided into those that contain Item data and those that contain Auxiliary Data. The Item data contains information about the core Items in IMSMA such as Location, Land (Hazard), Activity (HazardReduction), Accident, Victim, Assistance (VictimAssistance), Education (MREActivity) and Quality Management(QAActivity). In maXML Items are found under MineActionFieldReport.

Auxiliary data provide supplementary or additional information to the items and include Country Structure (GazeteerArtifact), Assistance classification (AssistanceArtifact), Cause classification (CauseArtifact), Needs classification (NeedsAssessmentArtifact), Ordnance classification (MineActionOrdnanceArtifact), Organisations (MineActionOrganisationArtifact) and Places (MineActionPlaceArtifact.

Each artifact is constructed from a Document Header containing document metadata together with other parts that contain elements that relate to the specific area that the artifact is intended to reflect.

There are eight separate artifacts in maXML

  1. MineActionFieldReport
  2. GazetteerArtifact
  3. MineActionOrganisationArtifact
  4. MineActionOrdnanceArtifact
  5. MineActionPlaceArtifact
  6. NeedsAssessmentArtifact
  7. AssistanceArtifact
  8. CauseArtifact

The maXML documentation may be obtained from GICHD.