wmls – WITSML command line tool in Ruby.

wmls is a script in the bin folder. It uses lib/wmls.rb, a library you can use to write your own WiTSML programs.

Use this script to call GetCap, GetFromStore, AddToStore, UpdateInStore, or DeleteFromStore on a WITSML server.

Usage: wmls [options]

-Dvariable=value                 Replace occurrences of %variable% with value, in the query template
-v, --verbose                    Run verbosely
-r, --url url                    URL of the WITSML service
-t, --timeout seconds            timeout in seconds (optional, default 60)
-u, --username USER              HTTP user name
-p, --password PASS              HTTP password
-q, --query QUERYFILE            Path to file containing query, delete, add or update template
-a cap|get|add|update|delete         WITSML action; default is 'get'
    --action
-o, --optionsin OPTIONSIN        optionsIn string (optional)    
-h, --help                       Show this message

Example: wmls -q query_v1311/get_all_wells.xml -r witsml.wellstorm.com/witsml/services/store -u username -p mypassword -a get

I’ve included a bunch of sample query templates originally created by Gary Masters of Energistics.

wmls files: Copyright 2012 Welstorm Development License: Apache 2.0

History:

10 Mar 2011 – initial commit. 16 Oct 2011 – added -D option to wmls command line tool (0.1.7) 01 May 2012 – added GetCap support (0.1.8) 01 May 2012 – added support for capabilitiesIn parameter to all calls (0.1.9) 04 May 2012 – added support for a headers parameter to all calls (0.1.11) 07 May 2012 – fix headers param to get_cap (default should be {}) (0.1.13) 14 Jun 2012 – return values to shell from wmls script (0.1.14) 14 Aug 2012 – add timeout option to wmls script 18 Jul 2015 – replace REXML with nokogiri, and fix missing endDateTimeIndex (0.1.16)

(thanks emre.demirors and alex.bednarczyk)