What is nWitsml?

nWitsml is a WITSML client library for .Net. It is a port of the java-based jwitsml project (see jwitsml.org) with some minor changes or improvements.

Send an email to subscribe@nwitsml.org to subscribe to a notification list for this project. This will only alert you when project news or updates are posted.

This library is lightweight and provides a "read-only" view of WITSML data from a WITSML server. This means it will allow only GetFromStore queries to be issued, but cannot update, create, or delete objects on the server. A typical use for this would be to enable visualizing well data in your existing .Net based application.  nWitsml is based on C# 4.0 and Visual Studio 2010, but there are few or no dependencies on specific C# 4.0 features so it should be easy to make VS2008/C#3.5 or even .Net 2.0 compatible if desired.

But...What is WITSML?

WITSML is the Wellsite Information Transfer and Storage Markup Language - an XML standard defined by Energistics for the purpose of open exchange of wellsite information for the Oil & Gas industry.  More information is available from Energistics.org

Why is nWitsml needed?

The WITSML standard is large, and includes many data entities spread across a large number of xml schemas. In addition, the query language used by WITSML is based on "xml templates", so knowledge of the base data schemas is requires in order to do some basic interaction with the WITSML api. In short: there's a big learning curve involved in working with WITSML, especially for a sofware developer who may not have much exposure to the oil & gas industry to begin with.
nWitsml abstracts away some of this complexity by encapsulating the data portion of WITSML in .Net classes. In addition, tha api portion of the standard is easier to access through the pre-defined WITSML client classes within nWitsml. All this means a developer is able to work in more familiar .Net classes and stay in-code more for greater productivity.
As noted previously, this library only implements a portion of the standard- the "GetFromStore" interface. This just means it supports "reading" data from a WITSML server, but not any of the update operations.

Volunteers & Contributors wanted- This project is now in use in many .Net projects, but should still be considered Beta stage software. We welcome testers to test the library against their Witsml servers and report or repair any bugs found. As the original java code it is derived from is considered stable, any bugs found would likely be due to issues arising during the conversion from java to .Net.
This project is managed at Codeplex here: http://witsml.codeplex.com - Contact the administrator of the project to request being added as a contributor if you desire to.

The project is managed by the Setiri Group- see http://www.setiri.com  (or see  http://www.setiri.com/witsml ) for more information. Setiri provides a variety of Witsml and energy-related software products and consulting services.