Documentation > Developer Guide

The core components of PDS WITSML technology are divided into these areas:

PDS WITSMLstudio Store and WITSMLstudio Desktop utilize the core WITSML libraries.

The “PDS.WITSMLstudio” solution provides reusable components referenced by all PDS WITSMLstudio applications containing the following projects:


Contains common classes related to WITSML and are referenced by other projects, including but not limiting to the following:

  • ChannelDataReader - facilitates parsing and reading of log channel data
  • DataObjectNavigator - a framework for navigating a WITSML document
  • WitsmlParser - static helper methods to parse WITSML XML strings
  • Extension methods – commonly used methods for WITSML classes

Contains unit tests for PDS WITSMLstudio.


Provides the composition container used to resolve dependencies.


Configures the composition container to resolve dependencies for web projects and provides security.


Hosts WITSML store service implementation, including service interfaces and high level data provider implementation, including:

  • WitsmlDataAdapter – encapsulates basic CRUD functionality for WITSML data objects
  • WitsmlDataProvider – implements support for WITSML API functions
  • WitsmlQueryParser – handles parsing of WITSML input in a request
  • EtpDataProvider – implements support for ETP API functions

Contains integration tests for PDS WITSMLstudio Store.


Implements scheduled and recurring jobs for PDS WITSMLstudio Store.


Implements configuration and security for WITSML and ETP endpoints.

Documentation > Developer Guide