Chris Bray's blog

Using the DIGGSML Catalog File to Cache Your Schemas Locally

After version 0.9.2 DIGGSML was split into several parts to aid its development and there have been some problems with using the schemas in various different parsers, many stemming from the xsi:schemaLocation attribute and it's varied implementation.

This article explains reasons behind the move from relative paths to canonical URI's and how to use the included catalog file to tell your parser where to find your local copy of the schemas.

Monitoring and the SamplingPoint object - Part 4

After Monitoring and the SamplingPoint object - Part 3 we had reviewed various methods of encoding blocks of tabular data in XML and identified a number of previous implementations of this construct (WITSML, SensorML).

This article details how DIGGSML builds on the implementations in WITSML and SensorML and implements a generic Table structure for storing lots of repeating Monitoring data.

Language in DIGGSML

DIGGSML is an international standard, and since many people all over the world speak different languages DIGGSML must respect this. Whilst the element names themselves are in "international English" their content can often be in one (or more) different languages.

This article will explain the best practices for internationalising a DIGGSML file, including how to implement a bi-lingual file.

Monitoring and the SamplingPoint object - Part 3

After Monitoring and the SamplingPoint object - Part 2 we left the Monitoring section of DIGGSML in a workable state.

There is however a problem associated with this method, it's verbosity, adding a large amount of data will rapidly produce a prohibitively large file.

This article details how this problem arises and two possible solutions, using a space separated lists of values, and using a tabular system proposed by John Bobbitt of the Petrochemical Open Standards Consortium (POSC) as well as taking looking at the OGC's standard for this type of data, SensorML.

DIGGSML Version 0.9 Released

As of Friday 10th August 2007 DIGGSML v0.9 has been released for internal review.

See inside for a comprehensive list of changes and instructions on how to obtain this release.

Samples and Specimens in DIGGSML

Roger's earlier article entitled The Importance of AGS Key Fields for Sample Data explained some of the problems involved with transferring sample data in AGS 3.1.

This article will define exactly what is meant by a Sample and a Specimen, how they differ in meaning within DIGGSML and how they relate to each other. This article will explain some of the methods of transferring Sample and Specimen data that were considered for DIGGSML and detail the method finally chosen and the reasons behind its choice.

I will also include some best practices for companies implementing DIGGSML in the real world to help make the use of DIGGSML as productive as possible.

Monitoring and the SamplingPoint object - Part 2.

Yesterday I posted a suggestion on how I was thinking of implementing monitoring in DIGGSML, after some consultation we have decided to make some changes! This is a new proposal (which supercedes the previous one), with a much more generic structure. Allowing DIGGSML to cope with monitoring devices and instrumentation that we don't currently use (indeed may not even be manufactured yet!) is very important as it would be impractical to update the framework every time a new instrument was marketed.

This article details a new implementation of Monitoring, allowing DIGGSML to transfer monitoring data for any number of parameters, with any number of readings, for all pre-exisiting instruments and any that may arise in the future.

Monitoring and the SamplingPoint object.

Here's one proposal for implementing Monitoring In DIGGSML, using a SamplingPoint object, it sits alongside the Hole and FoundationGroup objects inside a Project. This post will explain the structuring of the proposed SamplingPoint object, it's contained Instruments (both single and multiple reading), their associated readings and how to record one or many readings from the same instrument.

Please note that the information contained in this article is now superceded by the article located Here

Units, Data Types and Validation

DIGGSML brings a great benefit with it, it actually validates the data in the file, knowing wether a property should be a length, mass, pressure or a great number of other measurements, this article shows how DIGGSML enforces valid data by only allowing a file to validate once it contains all the information required to represent a property.

Syndicate content