- Introduction
- API method overview
- Conversion
- Catalog related methods
- Measurements
- Units
- Get all units
- Get units given a measurement
- Get units given a unit symbol
- Get the preferred units for a measurement
- Get a single unit given a namespace and a symbol
- Get a single unit given a persistable reference or essence
- Get a single unit given a unit system name and a measurement
- Search units by keywords
- Unit systems
- Search anything in the entire catalog
- Miscellaneous methods
- Table of request and response types
The Unit service provides dimension/measurement and unit definitions. Given two unit definitions, the service also offers conversion parameters with two different parameterizations.
Note: Viewers permission to the common data partition is required to use these APIs.
The service implementation is in its second version. The tutorial describes the latest version with the latest encoding of references.
Measurements are organized in a hierarchy. The dimension is the root measurement; a childMeasurement has a parent measurement, which can be another childMeasurement or a dimension.
Units are associated with a dimension (root or base measurement). Unit conversions are possible if the two units belong to the same dimension. The following graph shows this:

The catalog may contain definitions from multiple source catalogs. Namespaces are used to distinguish the contributions. Mappings are defined where a measurement or a unit has the same meaning in different namespaces. That does not mean they have to be identical; a mapping can be defined as a "correction," which might imply conversions before reassignments.
| Namespace | Units | Measurements | Remarks |
|---|---|---|---|
| ECL | X | Derived from the Eclipse simulator, this code is used for all Petrel related extensions in the OSDD (Schlumberger Oilfield Services Data Dictionary). | |
| Energistics_UoM | X | X | The 'clean' Energistics unit of measure standard. |
| FND | X | Derived from the Finder database. | |
| GF | X | Derived from GeoFrame. | |
| LIS | X | The legacy Log Information Standard, predecessor of RP66. | |
| NeedUpdate | X | The OSDD (Schlumberger Oilfield Services Data Dictionary) internal namespace indicating problematic content. | |
| POSC | X | The Legacy standard "Petrotechnical Open Software Corporation," predecessor of Energistics. | |
| RP66 | X | The Legacy standard, predecessor of POSC, that comes in two versions, V1 and V2, which are merged in this namespace. | |
| Seabed | X | Units. | |
| SLB | X | The measurement namespace code to SLB specific dimensions, unit quantities and properties. |
The current catalog combines the following sources:
- Energistics (namespace
Energistics_UoM). - Units and measurements as defined in the Schlumberger Oilfield Services Data Dictionary.
- Extensions as added by Petrel.
Units are parameterized in two different ways
scaleandoffsetfrom Schlumberger's Oilfield Services Data Dictionary.A,B,C,DEnergistics notation. Under Downloads, select "v1.0 Energistics UOM Standard" and submit the download request.
y = scale*(x-offset)Query example for a conversion from degC (degrees Celsius) to degF (degrees Fahrenheit), limiting the symbols to the namespaces LIS,RP66:
GET /api/crs-catalog/v2/conversion/scale/{namespaces}/{fromSymbol/{toSymbol}
GET /api/crs-catalog/v2/conversion/scale/LIS,RP66/apigC/apigF with example values| Parameter | Value, un-encoded when used in Try it out | Value encoded when used in path |
|---|---|---|
| {namespaces} | LIS,RP66 | LIS%2CRP66 |
| {fromSymbol} | degC | degF |
| {toSymbol} | degF | degF |
CURL conversion command for scale/offset
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/conversion/scale/LIS,RP66/degC/degF'Response
{
"abcd": null,
"scaleOffset": {
"scale": 1.7999999999999998,
"offset": -17.777777777777715
},
"fromUnit": {
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1,
"offset": -273.15
},
"symbol": "degC",
"baseMeasurement": {
"ancestry": "Temperature",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "degC",
"name": "degree celsius",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":-273.15},\"symbol\":\"degC\",\"baseMeasurement\":{\"ancestry\":\"Temperature\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
"toUnit": {
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 0.5555555555555556,
"offset": -459.67
},
"symbol": "degF",
"baseMeasurement": {
"ancestry": "Temperature",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "degF",
"name": "degree fahrenheit",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":0.5555555555555556,\"offset\":-459.67},\"symbol\":\"degF\",\"baseMeasurement\":{\"ancestry\":\"Temperature\",\"type\":\"UM\"},\"type\":\"USO\"}"
}
}With these parameters:
"x": 37.0 degC
"scale": 1.7999999999999998
"offset": -17.777777777777715
y = scale*(x-offset)
y = 1.7999999999999998 * (37.0 - -17.777777777777715)
y = 98.6 degFy = (A+B*x)/(C+D*x)Query example for a conversion from degC (degrees Celsius) to degF (degrees Fahrenheit) in namespace Energistics_UoM:
GET /api/crs-catalog/v2/conversion/abcd/{namespaces}/{fromSymbol}/{toSymbol}
GET /api/crs-catalog/v2/conversion/abcd/Energistics_UoM/degC/degF with example values| Parameter | Value, un-encoded when used in Try it out | Value encoded when used in path |
|---|---|---|
| {namespaces} | Energistics_UoM | Energistics_UoM |
| {fromSymbol} | degC | degC |
| {toSymbol} | degF | degF |
POST /api/crs-catalog/v2/conversion/abcd - body using persistable reference strings
{
"fromUnitPersistableReference": "{\"abcd\":{\"a\":273.15,\"b\":1.0,\"c\":1.0,\"d\":0.0},\"symbol\":\"degC\",\"baseMeasurement\":{\"ancestry\":\"K\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"toUnitPersistableReference": "{\"abcd\":{\"a\":2298.35,\"b\":5.0,\"c\":9.0,\"d\":0.0},\"symbol\":\"degF\",\"baseMeasurement\":{\"ancestry\":\"K\",\"type\":\"UM\"},\"type\":\"UAD\"}"
}POST /api/crs-catalog/v2/conversion/abcd - body using essence structures
{
"fromUnit": {
"abcd": {
"a": 273.15,
"b": 1,
"c": 1,
"d": 0
},
"scaleOffset": null,
"symbol": "degC",
"baseMeasurement": {
"ancestry": "K",
"type": "UM"
},
"type": "UAD"
},
"toUnit": {
"abcd": {
"a": 2298.35,
"b": 5,
"c": 9,
"d": 0
},
"scaleOffset": null,
"symbol": "degF",
"baseMeasurement": {
"ancestry": "K",
"type": "UM"
},
"type": "UAD"
}
}CURL request for the example
curl \
-X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI App Key}' \
--data '{"fromUnitPersistableReference": "{\"abcd\":{\"a\":273.15,\"b\":1.0,\"c\":1.0,\"d\":0.0},\"symbol\":\"degC\",\"baseMeasurement\":{\"ancestry\":\"K\",\"type\":\"UM\"},\"type\":\"UAD\"}","toUnitPersistableReference": "{\"abcd\":{\"a\":2298.35,\"b\":5.0,\"c\":9.0,\"d\":0.0},\"symbol\":\"degF\",\"baseMeasurement\":{\"ancestry\":\"K\",\"type\":\"UM\"},\"type\":\"UAD\"}"}' \
--url '{root-url}/api/crs-catalog/v2/conversion/abcd'With the above parameters this ConversionResult response is returned:
Response example
{
"abcd": {
"a": 32,
"b": 1.8,
"c": 1,
"d": 0
},
"scaleOffset": null,
"fromUnit": {
"essence": {
"abcd": {
"a": 273.15,
"b": 1,
"c": 1,
"d": 0
},
"scaleOffset": null,
"symbol": "degC",
"baseMeasurement": {
"ancestry": "K",
"type": "UM"
},
"type": "UAD"
},
"deprecationInfo": null,
"displaySymbol": "degC",
"name": "degree Celsius",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"abcd\":{\"a\":273.15,\"b\":1.0,\"c\":1.0,\"d\":0.0},\"symbol\":\"degC\",\"baseMeasurement\":{\"ancestry\":\"K\",\"type\":\"UM\"},\"type\":\"UAD\"}"
},
"toUnit": {
"essence": {
"abcd": {
"a": 2298.35,
"b": 5,
"c": 9,
"d": 0
},
"scaleOffset": null,
"symbol": "degF",
"baseMeasurement": {
"ancestry": "K",
"type": "UM"
},
"type": "UAD"
},
"deprecationInfo": null,
"displaySymbol": "degF",
"name": "degree Fahrenheit",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"abcd\":{\"a\":2298.35,\"b\":5.0,\"c\":9.0,\"d\":0.0},\"symbol\":\"degF\",\"baseMeasurement\":{\"ancestry\":\"K\",\"type\":\"UM\"},\"type\":\"UAD\"}"
}
}With these parameters:
"x": 37.0
"a": 32.0
"b": 1.8
"c": 1.0
"d": 0.0
y = (A+B*x)/(C+D*x)
y = (32.0 + 1.8*37.0)/(1.0 + 0.0*37.0)
y = 98.6This section describes the different methods to query for units, measurements, and unit systems.
Query for many or all measurements in the catalog. This query returns base measurements (dimensions) and child measurements. The size of the response for GET requests can be controlled by limit and offset.
GET /measurement?offset={offset}&limit={limit}| Parameter | Value |
|---|---|
| {offset} | 250 (default 0) |
| {limit} | 2 (default -1, which means all items); be aware that getting all items in one request can take time. |
With the above example parameters, the following QueryResult response is expected (the contents may change depending on the catalog version deployed):
Response example
{
"totalCount": 4943,
"offset": 250,
"units": [],
"measurements": [
{
"essence": {
"ancestry": "Conductivity.Array_Conductivity",
"type": "UM"
},
"deprecationInfo": null,
"code": "Array_Conductivity",
"name": "Array Conductivity",
"description": "Formation conductivity as measured by a device capable of taking measurements at various combinations of resolution, depth of investigation, azimuth; such surveys allow detailed investigation of the invasion profile.",
"dimensionCode": "Conductivity",
"unitQuantityCode": "Conductivity",
"namespace": "SLB",
"lastModified": "19940930",
"dimensionAnalysis": "I2T3/L3M",
"baseMeasurement": false,
"baseMeasurementEssenceJson": "{\"ancestry\":\"Conductivity\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [
"{\"ancestry\":\"Conductivity.Array_Conductivity.Array_Induction_Conductivity\",\"type\":\"UM\"}",
"{\"ancestry\":\"Conductivity.Array_Conductivity.Array_Laterolog_Conductivity\",\"type\":\"UM\"}"
],
"unitEssenceJsons": [],
"preferredUnitEssenceJsons": [],
"parentEssenceJson": "{\"ancestry\":\"Conductivity\",\"type\":\"UM\"}",
"persistableReference": "{\"ancestry\":\"Conductivity.Array_Conductivity\",\"type\":\"UM\"}"
},
{
"essence": {
"ancestry": "Conductivity.Array_Conductivity.Array_Induction_Conductivity",
"type": "UM"
},
"deprecationInfo": null,
"code": "Array_Induction_Conductivity",
"name": "Array InductionConductivity",
"description": "Formation conductivity as measured by an induction device capable of taking measurements at various combinations of resolution, depth of investigation, azimuth; such surveys allow detailed investigation of the invasion profile.",
"dimensionCode": "Conductivity",
"unitQuantityCode": "Conductivity",
"namespace": "SLB",
"lastModified": "20000425",
"dimensionAnalysis": "I2T3/L3M",
"baseMeasurement": false,
"baseMeasurementEssenceJson": "{\"ancestry\":\"Conductivity\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [],
"unitEssenceJsons": [],
"preferredUnitEssenceJsons": [],
"parentEssenceJson": "{\"ancestry\":\"Conductivity.Array_Conductivity\",\"type\":\"UM\"}",
"persistableReference": "{\"ancestry\":\"Conductivity.Array_Conductivity.Array_Induction_Conductivity\",\"type\":\"UM\"}"
}
],
"unitMapItems": [],
"measurementMapItems": [],
"mapStates": [],
"count": 2
}Query for a single measurement in the catalog. This query returns a base measurement (dimension) or a child measurement. The measurement can be one of the following two options:
- An ancestry code like
Conductivity.Array_Conductivityvia a GET request. - A persistable reference string via a POST request.
Here the two variants:
GET /measurement/reference/{ancestry}| Parameter | Value |
|---|---|
| {ancestry} | Conductivity.Array_Conductivity |
POST /measurement
with body as persistable reference string:
{
"persistableReference": "{\"ancestry\":\"Conductivity.Array_Conductivity\",\"type\":\"UM\"}"
}
or as essence:
{
"essence": {
"ancestry": "Conductivity.Array_Conductivity",
"type": "UM"
}
}CURL commands to get one measurement persistable reference
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI App Key}' \
--url '{root-url}/api/crs-catalog/v2/measurement/Conductivity.Array_Conductivity'
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI App Key}' \
-d '{
"persistableReference": "{\"ancestry\":\"Conductivity.Array_Conductivity\",\"type\":\"UM\"}"
}' \
--url '{root-url}/api/crs-catalog/v2/measurement'
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI App Key}' \
-d '{
"essence": {
"ancestry": "Conductivity.Array_Conductivity",
"type": "UM"
}
}' \
--url '{root-url}/api/crs-catalog/v2/measurement'
Both return measurement:
Response example
{
"essence": {
"ancestry": "Conductivity.Array_Conductivity",
"type": "UM"
},
"deprecationInfo": null,
"code": "Array_Conductivity",
"name": "Array Conductivity",
"description": "Formation conductivity as measured by a device capable of taking measurements at various combinations of resolution, depth of investigation, azimuth; such surveys allow detailed investigation of the invasion profile.",
"dimensionCode": "Conductivity",
"unitQuantityCode": "Conductivity",
"namespace": "SLB",
"lastModified": "19940930",
"dimensionAnalysis": "I2T3/L3M",
"baseMeasurement": false,
"baseMeasurementEssenceJson": "{\"ancestry\":\"Conductivity\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [
"{\"ancestry\":\"Conductivity.Array_Conductivity.Array_Induction_Conductivity\",\"type\":\"UM\"}",
"{\"ancestry\":\"Conductivity.Array_Conductivity.Array_Laterolog_Conductivity\",\"type\":\"UM\"}"
],
"unitEssenceJsons": [],
"preferredUnitEssenceJsons": [],
"parentEssenceJson": "{\"ancestry\":\"Conductivity\",\"type\":\"UM\"}",
"persistableReference": "{\"ancestry\":\"Conductivity.Array_Conductivity\",\"type\":\"UM\"}"
}More general queries are possible via the 'search by keyword(s)' option. The following keywords are supported:
| Keyword code | Constrain by | Works for | Values in use |
|---|---|---|---|
| CType | coefficient type | Units | ABCD,ScaleOffset |
| Name | specific words/sub-strings in the name | Measurements, units, unit systems, maps | not enumerated |
| Namespace | specific sub-strings in the namespace | Measurements, units | not enumerated |
| Source | specific words/sub-strings in the source string | Measurements, units | not enumerated |
| ancestry | (sub-)string of the ancestry for a dimension/measurement | Measurements | not enumerated |
| Code | specific words/sub-strings in the code | Measurements | |
| DimensionCode | Constraining the OSDD (Schlumberger Oilfield Services Data Dictionary) dimension code for measurement search | Measurements | not enumerated |
| UnitQuantityCode | Constraining the OSDD (Schlumberger Oilfield Services Data Dictionary) Unit_Quantity code for measurement search | Measurements | not enumerated |
| DimensionAnalysis | Search for measurements belonging to a specific dimension | Measurements | not enumerated |
| State | Search for specific states | Measurements, units, Maps | precision, corrected, conversion, conditional, different, unresolved |
| BaseMeasurement | Constrain the search to BaseMeasurement True or False | Measurements | True, False |
OSDD stands for Oilfield Services Data Dictionary and acts as Schlumberger's master database for, among others, measurements and units. It also replicates Energistics Units of Measure standard definitions.
Example query:
POST /measurement/search?limit={limit}&offset={offset}
with body:
{
"query": "dimensionAnalysis:L2/T"
}| Parameter | Example Value |
|---|---|
| {offset} | 0 (default 0) |
| {limit} | 2 (default 100) |
Returns QueryResult.
Response example
{
"totalCount": 37,
"offset": 0,
"units": [],
"measurements": [
{
"essence": {
"ancestry": "Area_Per_Time",
"type": "UM"
},
"deprecationInfo": null,
"code": "Area_Per_Time",
"name": "Area Per Time",
"description": "This is a copy of the unit quantity AreaPerTime, which acts as the parent for other SDM_Property instances",
"dimensionCode": "AreaPerTime",
"unitQuantityCode": "AreaPerTime",
"namespace": "SLB",
"lastModified": "20160113",
"dimensionAnalysis": "L2/T",
"baseMeasurement": true,
"baseMeasurementEssenceJson": "{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [
"{\"ancestry\":\"Area_Per_Time.AreaPerTime\",\"type\":\"UM\"}",
"{\"ancestry\":\"Area_Per_Time.NMR_Diffusion_Coefficient\",\"type\":\"UM\"}",
"{\"ancestry\":\"Area_Per_Time.NMRDiffusionCoefficient\",\"type\":\"UM\"}",
"{\"ancestry\":\"Area_Per_Time.ThermalDiffusivity\",\"type\":\"UM\"}",
"{\"ancestry\":\"Area_Per_Time.Flowrate_Per_Length\",\"type\":\"UM\"}",
"{\"ancestry\":\"Area_Per_Time.FlowratePerLength\",\"type\":\"UM\"}",
"{\"ancestry\":\"Area_Per_Time.Diffusivity\",\"type\":\"UM\"}",
"{\"ancestry\":\"Area_Per_Time.Kinematic_Viscosity\",\"type\":\"UM\"}"
],
"unitEssenceJsons": [
"{\"scaleOffset\":{\"scale\":0.001075266666666667,\"offset\":0.0},\"symbol\":\"1000ft3/d.ft\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.006037174650043744,\"offset\":0.0},\"symbol\":\"1E3 bbl/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.037174650043744E-6,\"offset\":0.0},\"symbol\":\"bbl/d.ft\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.037174650043744E-6,\"offset\":0.0},\"symbol\":\"BBDF\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.006037174650043744,\"offset\":0.0},\"symbol\":\"kbbl/d.ft\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.01157407407407407,\"offset\":0.0},\"symbol\":\"km3/(d.m)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.01157407407407407,\"offset\":0.0},\"symbol\":\"km3/d.m\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.2777777777777778,\"offset\":0.0},\"symbol\":\"km3/h.m\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.157407407407407E-5,\"offset\":0.0},\"symbol\":\"m3/d.m\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.777777777777778E-4,\"offset\":0.0},\"symbol\":\"m3/h.m\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":3.280839895013123,\"offset\":0.0},\"symbol\":\"m3/s.ft\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m3/s.m\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.037174650043744E-6,\"offset\":0.0},\"symbol\":\"B/DF\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.58064E-5,\"offset\":0.0},\"symbol\":\"FT2/HR\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-6,\"offset\":0.0},\"symbol\":\"MM2/S\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.001075266666666667,\"offset\":0.0},\"symbol\":\"KF2D\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.2777777777777778,\"offset\":0.0},\"symbol\":\"KM2H\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.777777777777778E-4,\"offset\":0.0},\"symbol\":\"M2/H\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"M2/S\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.157407407407407E-5,\"offset\":0.0},\"symbol\":\"M3DM\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"M3MS\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":3.280839895013123,\"offset\":0.0},\"symbol\":\"M3SF\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.006037174650043744,\"offset\":0.0},\"symbol\":\"1000 bbl/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.001075266666666667,\"offset\":0.0},\"symbol\":\"1000 ft3/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.01157407407407407,\"offset\":0.0},\"symbol\":\"1000 m3/(d.m)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.2777777777777778,\"offset\":0.0},\"symbol\":\"1000 m3/(h.m)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-8,\"offset\":0.0},\"symbol\":\"1E-4 cm2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-4,\"offset\":0.0},\"symbol\":\"cm2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-4,\"offset\":0.0},\"symbol\":\"C2/S\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-8,\"offset\":0.0},\"symbol\":\"TC2S\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.4516E-4,\"offset\":0.0},\"symbol\":\"in2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.037174650043744E-6,\"offset\":0.0},\"symbol\":\"bbl/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.58064E-5,\"offset\":0.0},\"symbol\":\"ft2/h\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.777777777777778E-4,\"offset\":0.0},\"symbol\":\"m2/h\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.157407407407407E-5,\"offset\":0.0},\"symbol\":\"m3/(d.m)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.777777777777778E-4,\"offset\":0.0},\"symbol\":\"m3/(h.m)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m3/(m.s)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":3.280839895013123,\"offset\":0.0},\"symbol\":\"m3/(s.ft)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m3/(s.m)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-6,\"offset\":0.0},\"symbol\":\"mm2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.15740740740741E-5,\"offset\":0.0},\"symbol\":\"m2/d\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.07526666666667E-6,\"offset\":0.0},\"symbol\":\"ft2/d\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.77777777777778E-8,\"offset\":0.0},\"symbol\":\"cm2/h\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-12,\"offset\":0.0},\"symbol\":\"um2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-11,\"offset\":0.0},\"symbol\":\"1E-5 mm2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":3.16875355494539E-8,\"offset\":0.0},\"symbol\":\"km2/Ma\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.00107526666666667,\"offset\":0.0},\"symbol\":\"MSCF/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.03717449815301E-6,\"offset\":0.0},\"symbol\":\"STB/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.15740740740741E-5,\"offset\":0.0},\"symbol\":\"sm3/(d.m)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.00603717430555556,\"offset\":0.0},\"symbol\":\"kbbl/d.ft\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.00603717430555556,\"offset\":0.0},\"symbol\":\"1000 bbl/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.00603717430555556,\"offset\":0.0},\"symbol\":\"1E3 bbl/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.09290304,\"offset\":0.0},\"symbol\":\"ft2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2931850.90905713,\"offset\":0.0},\"symbol\":\"ft2/a\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":3.155815E7,\"offset\":0.0},\"symbol\":\"m2/a\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.77777777777778E-4,\"offset\":0.0},\"symbol\":\"sm3/(h.m)\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}"
],
"preferredUnitEssenceJsons": [
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-4,\"offset\":0.0},\"symbol\":\"cm2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0E-6,\"offset\":0.0},\"symbol\":\"mm2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.777777777777778E-4,\"offset\":0.0},\"symbol\":\"m2/h\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.77777777777778E-8,\"offset\":0.0},\"symbol\":\"cm2/h\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.15740740740741E-5,\"offset\":0.0},\"symbol\":\"m2/d\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.4516E-4,\"offset\":0.0},\"symbol\":\"in2/s\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":2.58064E-5,\"offset\":0.0},\"symbol\":\"ft2/h\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.07526666666667E-6,\"offset\":0.0},\"symbol\":\"ft2/d\",\"baseMeasurement\":{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"},\"type\":\"USO\"}"
],
"parentEssenceJson": null,
"persistableReference": "{\"ancestry\":\"Area_Per_Time\",\"type\":\"UM\"}"
},
{
"essence": {
"ancestry": "L2/T",
"type": "UM"
},
"deprecationInfo": null,
"code": "L2/T",
"name": "L2/T",
"description": "",
"dimensionCode": "L2/T",
"unitQuantityCode": "",
"namespace": "Energistics_UoM",
"lastModified": "20160322",
"dimensionAnalysis": "L2/T",
"baseMeasurement": true,
"baseMeasurementEssenceJson": "{\"ancestry\":\"L2/T\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [
"{\"ancestry\":\"L2/T.kinematic viscosity\",\"type\":\"UM\"}",
"{\"ancestry\":\"L2/T.thermal diffusivity\",\"type\":\"UM\"}",
"{\"ancestry\":\"L2/T.area per time\",\"type\":\"UM\"}",
"{\"ancestry\":\"L2/T.(volume per time) per length\",\"type\":\"UM\"}",
"{\"ancestry\":\"L2/T.diffusion coefficient\",\"type\":\"UM\"}"
],
"unitEssenceJsons": [
"{\"abcd\":{\"a\":0.0,\"b\":1.0E-4,\"c\":1.0,\"d\":0.0},\"symbol\":\"St\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m2/s\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m3/(s.m)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"mol.m2/(mol.s)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"Pa.s.m3/kg\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"W.m2.deltaK/(J.deltaK)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1.0E-4,\"c\":1.0,\"d\":0.0},\"symbol\":\"cm2/s\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.09290304,\"c\":3600.0,\"d\":0.0},\"symbol\":\"ft2/h\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.09290304,\"c\":1.0,\"d\":0.0},\"symbol\":\"ft2/s\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":6.4516E-4,\"c\":1.0,\"d\":0.0},\"symbol\":\"in2/s\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1.0,\"c\":86400.0,\"d\":0.0},\"symbol\":\"m2/d\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1.0,\"c\":3600.0,\"d\":0.0},\"symbol\":\"m2/h\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1.0E-6,\"c\":1.0,\"d\":0.0},\"symbol\":\"mm2/s\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":28.316846592,\"c\":26334.72,\"d\":0.0},\"symbol\":\"1000 ft3/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1000.0,\"c\":86400.0,\"d\":0.0},\"symbol\":\"1000 m3/(d.m)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1000.0,\"c\":3600.0,\"d\":0.0},\"symbol\":\"1000 m3/(h.m)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.158987294928,\"c\":26334.72,\"d\":0.0},\"symbol\":\"bbl/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.09290304,\"c\":86400.0,\"d\":0.0},\"symbol\":\"ft3/(d.ft)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.00454609,\"c\":1097.28,\"d\":0.0},\"symbol\":\"gal[UK]/(h.ft)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.00454609,\"c\":91.44,\"d\":0.0},\"symbol\":\"gal[UK]/(h.in)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.00454609,\"c\":18.288,\"d\":0.0},\"symbol\":\"gal[UK]/(min.ft)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.003785411784,\"c\":1097.28,\"d\":0.0},\"symbol\":\"gal[US]/(h.ft)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.003785411784,\"c\":91.44,\"d\":0.0},\"symbol\":\"gal[US]/(h.in)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":0.003785411784,\"c\":18.288,\"d\":0.0},\"symbol\":\"gal[US]/(min.ft)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1.0,\"c\":86400.0,\"d\":0.0},\"symbol\":\"m3/(d.m)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1.0,\"c\":3600.0,\"d\":0.0},\"symbol\":\"m3/(h.m)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1.0,\"c\":0.3048,\"d\":0.0},\"symbol\":\"m3/(s.ft)\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":1.0E-6,\"c\":1.0,\"d\":0.0},\"symbol\":\"cSt\",\"baseMeasurement\":{\"ancestry\":\"L2/T\",\"type\":\"UM\"},\"type\":\"UAD\"}"
],
"preferredUnitEssenceJsons": [],
"parentEssenceJson": null,
"persistableReference": "{\"ancestry\":\"L2/T\",\"type\":\"UM\"}"
}
],
"unitMapItems": [],
"measurementMapItems": [],
"mapStates": [],
"count": 2
}This query returns all units - with limit controlling the maximum size of the response and offset the start position:
GET /unit?limit={limit}&offset={offset}| Parameter | Value |
|---|---|
| {offset} | 100 (default 0) |
| {limit} | 2 (default -1, which means all items) |
CURL command to get units
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI App Key}' \
--url '{root-url}/api/crs-catalog/v2/unit?offset=100&limit=2'
The example command leads to this example QueryResult response (content may vary depending on the catalog version):
Response example
{
"totalCount": 3695,
"offset": 100,
"units": [
{
"essence": {
"abcd": {
"a": 0,
"b": 0.45359237,
"c": 3.785411784,
"d": 0
},
"scaleOffset": null,
"symbol": "0.001 lbm/gal[US]",
"baseMeasurement": {
"ancestry": "M/L3",
"type": "UM"
},
"type": "UAD"
},
"deprecationInfo": null,
"displaySymbol": "0.001 lbm/gal[US]",
"name": "pound-mass per thousand US gallon",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"abcd\":{\"a\":0.0,\"b\":0.45359237,\"c\":3.785411784,\"d\":0.0},\"symbol\":\"0.001 lbm/gal[US]\",\"baseMeasurement\":{\"ancestry\":\"M/L3\",\"type\":\"UM\"},\"type\":\"UAD\"}"
},
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 2.30665872585026,
"offset": 0
},
"symbol": "0.001 lbm/in2.ft",
"baseMeasurement": {
"ancestry": "Mass_Per_Volume",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "0.001 lbm/in2.ft",
"name": "psi per thousand feet equivalent",
"description": null,
"lastModified": "20091019",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":2.30665872585026,\"offset\":0.0},\"symbol\":\"0.001 lbm/in2.ft\",\"baseMeasurement\":{\"ancestry\":\"Mass_Per_Volume\",\"type\":\"UM\"},\"type\":\"USO\"}"
}
],
"measurements": [],
"unitMapItems": [],
"measurementMapItems": [],
"mapStates": [],
"count": 2
}This query returns all units given a measurement by the following methods
- An ancestry code, e.g.
Conductivity.Array_Conductivity(GET request). - Persistable reference, e.g.
"{\"ancestry\":\"Conductivity.Array_Conductivity\",\"type\":\"UM\"}"(POST request). - Essence
{ "ancestry": "Conductivity.Array_Conductivity", "type": "UM" }(POST request).
GET /unit/measurement/{ancestry}| Parameter | Value |
|---|---|
| {ancestry} | Conductivity.Array_Conductivity |
Try it out Similarly, the persistable reference or essence of the measurement can be passed in the body for the following POST request:
POST /unit/measurementwith body:
{
"persistableReference": "{\"ancestry\":\"Conductivity.Array_Conductivity\",\"type\":\"UM\"}"
}
or:
{
"essence": {
"ancestry": "Conductivity.Array_Conductivity",
"type": "UM"
}
}CURL commands to get units given a measurement
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI App Key}' \
--url '{root-url}/api/crs-catalog/v2/unit/measurement/Conductivity.Array_Conductivity'
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI App Key}' \
-d '{
"persistableReference": "{\"ancestry\":\"Conductivity.Array_Conductivity\",\"type\":\"UM\"}"
}' \
--url '{root-url}/api/crs-catalog/v2/unit/measurement'
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI App Key}' \
-d '{
"essence": {
"ancestry": "Conductivity.Array_Conductivity",
"type": "UM"
}
}' \
--url '{root-url}/api/crs-catalog/v2/unit/measurement'The above query returns QueryResult.
Response example (truncated)
{
"totalCount": 19,
"offset": 0,
"units": [
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 0.001,
"offset": 0
},
"symbol": "1E-3 S/m",
"baseMeasurement": {
"ancestry": "Conductivity",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": {
"state": "identical",
"remarks": "GeoFrame legacy unit",
"supersededByUnit": "{\"scaleOffset\":{\"scale\":0.001,\"offset\":0.0},\"symbol\":\"mS/m\",\"baseMeasurement\":{\"ancestry\":\"Conductivity\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
"displaySymbol": "1E-3 S/m",
"name": "GeoFrame legacy unit",
"description": null,
"lastModified": "19930310",
"source": "",
"namespace": "GF",
"persistableReference": "{\"scaleOffset\":{\"scale\":0.001,\"offset\":0.0},\"symbol\":\"1E-3 S/m\",\"baseMeasurement\":{\"ancestry\":\"Conductivity\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
...
],
"measurements": [],
"unitMapItems": [],
"measurementMapItems": [],
"mapStates": [],
"count": 19
}Due to multiple namespaces contributing to the catalog, unit symbols may not be unique. This query returns all units with a matching symbol:
GET /unit/symbol/{symbol}| Parameter | Value, un-encoded when used in Try it out | Value encoded when used in path |
|---|---|---|
| {symbol} | F | F |
| {symbol} | ft/s | ft%2Fs |
Returns a QueryResult response - the symbol F is in this case aliasing the unit Farad and international foot (LIS namespace) belonging to different dimensions.
CURL commands to get units given a symbol
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI App Key}' \
--url '{root-url}/api/crs-catalog/v2/unit/symbol/F'Response example
{
"totalCount": 3,
"offset": 0,
"units": [
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1,
"offset": 0
},
"symbol": "F",
"baseMeasurement": {
"ancestry": "Capacitance",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "F",
"name": "farad",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"F\",\"baseMeasurement\":{\"ancestry\":\"Capacitance\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 0.3048,
"offset": 0
},
"symbol": "F",
"baseMeasurement": {
"ancestry": "Length",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": {
"state": "identical",
"remarks": "foot",
"supersededByUnit": "{\"scaleOffset\":{\"scale\":0.3048,\"offset\":0.0},\"symbol\":\"ft\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
"displaySymbol": "F",
"name": "foot",
"description": null,
"lastModified": "19920228",
"source": "",
"namespace": "LIS",
"persistableReference": "{\"scaleOffset\":{\"scale\":0.3048,\"offset\":0.0},\"symbol\":\"F\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1,
"offset": 0
},
"symbol": "F",
"baseMeasurement": {
"ancestry": "I2T4/L2M",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "F",
"name": "farad",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"F\",\"baseMeasurement\":{\"ancestry\":\"I2T4/L2M\",\"type\":\"UM\"},\"type\":\"USO\"}"
}
],
"measurements": [],
"unitMapItems": [],
"measurementMapItems": [],
"mapStates": [],
"count": 3
}Not all units compatible with the base dimension make sense for a specialized measurement. This query returns the units considered preferred:
GET /unit/measurement/preferred/{ancestry}| Parameter | Value |
|---|---|
| {ancestry} | Length.Standard_Depth_Index |
CURL command to get the preferred units given a measurement
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/unit/measurement/preferred/Length.Standard_Depth_Index'
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
-d '{
"persistableReference": "{\"ancestry\":\"Length.Standard_Depth_Index\",\"type\":\"UM\"}"
}' \
--url '{root-url}/api/crs-catalog/v2/unit/measurement/preferred'
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
-d '{
"essence": {
"ancestry": "Length",
"type": "UM"
}' \
--url '{root-url}/api/crs-catalog/v2/unit/measurement/preferred'
Returns QueryResult.
Response example
{
"totalCount": 5,
"offset": 0,
"units": [
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1,
"offset": 0
},
"symbol": "m",
"baseMeasurement": {
"ancestry": "Length",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "m",
"name": "meter",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 0.3048,
"offset": 0
},
"symbol": "ft",
"baseMeasurement": {
"ancestry": "Length",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "ft",
"name": "foot (international)",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":0.3048,\"offset\":0.0},\"symbol\":\"ft\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 0.01,
"offset": 0
},
"symbol": "cm",
"baseMeasurement": {
"ancestry": "Length",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "cm",
"name": "centimeter",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":0.01,\"offset\":0.0},\"symbol\":\"cm\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1000,
"offset": 0
},
"symbol": "km",
"baseMeasurement": {
"ancestry": "Length",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "km",
"name": "kilometer",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":1000.0,\"offset\":0.0},\"symbol\":\"km\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1609.344,
"offset": 0
},
"symbol": "mi",
"baseMeasurement": {
"ancestry": "Length",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "mi",
"name": "mile (international)",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":1609.344,\"offset\":0.0},\"symbol\":\"mi\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
}
],
"measurements": [],
"unitMapItems": [],
"measurementMapItems": [],
"mapStates": [],
"count": 5
}With the help of an ordered, comma-separated list of namespace codes, the unit symbol look-up can be made unique.
| Namespace | Remarks |
|---|---|
| ECL | Derived from the Eclipse simulator, this code is used for all Petrel related extensions in OSDD. |
| Energistics_UoM | The 'clean' Energistics unit of measure standard |
| FND | Derived from the Finder database |
| GF | Derived from GeoFrame |
| LIS | The legacy Log Information Standard, predecessor of RP66 |
| NeedUpdate | OSDD internal namespace indicating problematic contents - do not use |
| POSC | Legacy standard "Petrotechnical Open Software Corporation", predecessor of Energistics |
| RP66 | Legacy standard, predecessor of POSC |
| Seabed | Units |
The following example would be used in the context of a log data loader. In this domain, the LIS namespace is more likely to contain the correct unit for F than the Energistics_UoM namespace. The example query:
GET /unit/symbol/{namespaces}/{symbol}| Parameter | Value, un-encoded when used in Try it out | Value encoded when used in path |
|---|---|---|
| {namespaces} | LIS,Energistics_UoM | LIS%2CEnergistics_UoM |
| {symbol} | F | F |
CURL command to get a unique unit given a namespace list and a symbol
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/unit/symbol/LIS%2CEnergistics_UoM/F'This request leads to the following unit response - The LIS unit F (foot) wins over the Energistics_UoM F (farad):
Returns unit.
Response example
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 0.3048,
"offset": 0
},
"symbol": "F",
"baseMeasurement": {
"ancestry": "Length",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": {
"state": "identical",
"remarks": "foot",
"supersededByUnit": "{\"scaleOffset\":{\"scale\":0.3048,\"offset\":0.0},\"symbol\":\"ft\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
"displaySymbol": "F",
"name": "foot",
"description": null,
"lastModified": "19920228",
"source": "",
"namespace": "LIS",
"persistableReference": "{\"scaleOffset\":{\"scale\":0.3048,\"offset\":0.0},\"symbol\":\"F\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
}A unit's persistable reference can be used to uniquely look up a unit. In this example the Energistics_UoM F is queried:
POST /unit
with persistable reference in body:
{
"persistableReference": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"F\",\"baseMeasurement\":{\"ancestry\":\"I2T4/L2M\",\"type\":\"UM\"},\"type\":\"USO\"}"
}
with essence in body:
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1,
"offset": 0
},
"symbol": "F",
"baseMeasurement": {
"ancestry": "I2T4/L2M",
"type": "UM"
},
"type": "USO"
}
}CURL command to get a unique unit given a persistable reference or essence
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
-d '{
"persistableReference": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"F\",\"baseMeasurement\":{\"ancestry\":\"I2T4/L2M\",\"type\":\"UM\"},\"type\":\"USO\"}"
}' \
--url '{root-url}/api/crs-catalog/v2/unit'
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
-d '{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1,
"offset": 0
},
"symbol": "F",
"baseMeasurement": {
"ancestry": "I2T4/L2M",
"type": "UM"
},
"type": "USO"
}
}' \
--url '{root-url}/api/crs-catalog/v2/unit'The request returns unit.
Response example
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1,
"offset": 0
},
"symbol": "F",
"baseMeasurement": {
"ancestry": "I2T4/L2M",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "F",
"name": "farad",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"F\",\"baseMeasurement\":{\"ancestry\":\"I2T4/L2M\",\"type\":\"UM\"},\"type\":\"USO\"}"
}With a unit system, a unit can be assigned to a measurement. This query returns a unique unit given a unit system and a measurement. The measurement can be defined as either of the following:
- Ancestry string, e.g.
Velocity.Acoustic_Velocity.Water_Acoustic_Velocity. - Persistable reference string, e.g.
%7B%22Ancestry%22%3A%22Velocity.Acoustic_Velocity.Water_Acoustic_Velocity%22%7D.
The example requests the unit for measurement Velocity.Acoustic_Velocity.Water_Acoustic_Velocity given the ProductionEnglish unit system:
POST /unit/unitsystem/{unitSystemName}
with body as persistable regerence:
{
"persistableReference": "{\"ancestry\":\"Velocity.Acoustic_Velocity.Water_Acoustic_Velocity\",\"type\":\"UM\"}"
}
or with body as essence:
{
"essence": {
"ancestry": "Velocity.Acoustic_Velocity.Water_Acoustic_Velocity",
"type": "UM"
}
}| Parameter | Value |
|---|---|
| {unitSystemName} | ProductionEnglish |
CURL command to get a unique unit given a unit system name
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
-d '{
"persistableReference": "{\"ancestry\":\"Velocity.Acoustic_Velocity.Water_Acoustic_Velocity\",\"type\":\"UM\"}"
}' \
--url '{root-url}/api/crs-catalog/v2/unit/unitsystem/ProductionEnglish'Returns unit.
Response example
{
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 0.3048,
"offset": 0
},
"symbol": "ft/s",
"baseMeasurement": {
"ancestry": "Velocity",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "ft/s",
"name": "foot per second",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":0.3048,\"offset\":0.0},\"symbol\":\"ft/s\",\"baseMeasurement\":{\"ancestry\":\"Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}"
}| Keyword code | Constrained by | Works for | Values in use |
|---|---|---|---|
| CType | Coefficient type | Units | ABCD,ScaleOffset |
| Name | Specific words/sub-strings in the name | Measurements, units, unit systems, maps | not enumerated |
| Namespace | Specific sub-strings in the namespace | Measurements, units | not enumerated |
| Source | Specific words/sub-strings in the source string | Measurements, units | not enumerated |
| Symbol | Specific sub-strings in the symbol | Units | not enumerated |
| BaseMeasurementReference | Search for units belonging to a specific measurement | Units | persistable reference string (fragments) |
| State | Search for specific states | Measurements, units, maps | precision, corrected, conversion, conditional, different, unresolved |
With this endpoint, you can perform a generic search query using keywords. In this example, any unit that has barn in its name and Energistics in its namespace are returned. Example request:
POST /unit/search?offset={offset}&limit={limit}
with body:
{
"query": "name:*barn* namespace:Energistics*"
}CURL command to search units by keywords, Lucene style
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
-d '{
"query": "name:*barn* namespace:Energistics*"
}' \
--url '{root-url}/api/crs-catalog/v2/unit/search'
The request returns QueryResult.
Response example
{
"totalCount": 2,
"offset": 0,
"units": [
{
"essence": {
"abcd": {
"a": 0,
"b": 1e-22,
"c": 1,
"d": 0
},
"scaleOffset": null,
"symbol": "b/cm3",
"baseMeasurement": {
"ancestry": "1/L",
"type": "UM"
},
"type": "UAD"
},
"deprecationInfo": null,
"displaySymbol": "b/cm3",
"name": "barn per cubic centimetre",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"abcd\":{\"a\":0.0,\"b\":1.0E-22,\"c\":1.0,\"d\":0.0},\"symbol\":\"b/cm3\",\"baseMeasurement\":{\"ancestry\":\"1/L\",\"type\":\"UM\"},\"type\":\"UAD\"}"
},
{
"essence": {
"abcd": {
"a": 0,
"b": 1e-28,
"c": 1,
"d": 0
},
"scaleOffset": null,
"symbol": "b",
"baseMeasurement": {
"ancestry": "L2",
"type": "UM"
},
"type": "UAD"
},
"deprecationInfo": null,
"displaySymbol": "b",
"name": "barn",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"abcd\":{\"a\":0.0,\"b\":1.0E-28,\"c\":1.0,\"d\":0.0},\"symbol\":\"b\",\"baseMeasurement\":{\"ancestry\":\"L2\",\"type\":\"UM\"},\"type\":\"UAD\"}"
}
],
"measurements": [],
"unitMapItems": [],
"measurementMapItems": [],
"mapStates": [],
"count": 2
}This query takes no arguments and returns a list of unit system descriptions:
GET /unitsystem/list?offset={offset}&limit={limit}CURL command to get a list of unit system descriptions
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/unitsystem/list?offset=5&limit=2'The request returns UnitSystemInfoList.
Response example
{
"unitSystemInfoList": [
{
"name": "Canonical",
"description": "Unit is the Canonical form for the Unit_Dimension corresponding to each Unit_Quantity",
"ancestry": "Canonical",
"persistableReference": "{\"ancestry\":\"Canonical\"}"
},
{
"name": "English",
"description": "Conventional oilfield units in areas where English units are used",
"ancestry": "Metric.English",
"persistableReference": "{\"ancestry\":\"Metric.English\"}"
}
],
"totalCount": 14,
"offset": 5,
"count": 2
}The purpose of a unit system is to uniquely assign a single unit per measurement. As explained above, measurements are organized in a hierarchy. Not all measurements are therefore registered. Unit assignments are inherited from the parent measurement if the child measurement does not have a separate unit assignment. The size of the response can be controlled by limit and offset because the total response contains a unit for each measurement.
There are two methods to obtain the unit system settings, via the unit system name and via a persistable reference or unit system essence.
GET /unitsystem/{name}?offset={offset}&limit={limit}'| Parameter | Value |
|---|---|
| {name} | ProductionEnglish |
| {offset} | example 2000, default 0 |
| {limit} | example 2, default 100; -1 fo all items |
CURL command to get a list of unit system assignments
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/unitsystem/{name}?offset=2000&limit=2'POST /unitsystem?offset=2000&limit=2
with body as persistable referenence:
{
"persistableReference": "{\"ancestry\": \"Metric.English.ProductionEnglish\"}"
}
or with body as essence:
{
"essence": {
"ancestry": "Metric.English.ProductionEnglish"
}
}Try it out or Try it out in new window
CURL command to get a list of unit system assignments
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
-d '{
"persistableReference": "{\"ancestry\": \"Metric.English.ProductionEnglish\"}"
}' \
--url '{root-url}/api/crs-catalog/v2/unitsystem?offset=2000&limit=2'The request returns UnitSystem.
Response example
{
"name": "ProductionEnglish",
"description": "Non-standard production units based on English",
"referenceUnitSystem": "English",
"ancestry": "Metric.English.ProductionEnglish",
"lastModified": "19920228",
"source": "",
"offset": 2000,
"unitAssignments": [
{
"lastModified": "19920228",
"measurement": {
"essence": {
"ancestry": "Velocity.Acoustic_Velocity.Stack_Velocity",
"type": "UM"
},
"deprecationInfo": null,
"code": "Stack_Velocity",
"name": "Stacking Velocity",
"description": "The velocity determined from velocity analysis based upon normal-moveout measurements.",
"dimensionCode": "Velocity",
"unitQuantityCode": "AcousticVelocity",
"namespace": "SLB",
"lastModified": "19940930",
"dimensionAnalysis": "L/T",
"baseMeasurement": false,
"baseMeasurementEssenceJson": "{\"ancestry\":\"Velocity\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [],
"unitEssenceJsons": [],
"preferredUnitEssenceJsons": [],
"parentEssenceJson": "{\"ancestry\":\"Velocity.Acoustic_Velocity\",\"type\":\"UM\"}",
"persistableReference": "{\"ancestry\":\"Velocity.Acoustic_Velocity.Stack_Velocity\",\"type\":\"UM\"}"
},
"unit": {
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 0.3048,
"offset": 0
},
"symbol": "ft/s",
"baseMeasurement": {
"ancestry": "Velocity",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "ft/s",
"name": "foot per second",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":0.3048,\"offset\":0.0},\"symbol\":\"ft/s\",\"baseMeasurement\":{\"ancestry\":\"Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}"
}
},
{
"lastModified": "",
"measurement": {
"essence": {
"ancestry": "Time.Time_Interval.Peak_Peak_Delta_Time",
"type": "UM"
},
"deprecationInfo": null,
"code": "Peak_Peak_Delta_Time",
"name": "Peak Peak Delta Time",
"description": "Time difference between two peaks.",
"dimensionCode": "Time",
"unitQuantityCode": "Time",
"namespace": "SLB",
"lastModified": "19961028",
"dimensionAnalysis": "T",
"baseMeasurement": false,
"baseMeasurementEssenceJson": "{\"ancestry\":\"Time\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [],
"unitEssenceJsons": [],
"preferredUnitEssenceJsons": [],
"parentEssenceJson": "{\"ancestry\":\"Time.Time_Interval\",\"type\":\"UM\"}",
"persistableReference": "{\"ancestry\":\"Time.Time_Interval.Peak_Peak_Delta_Time\",\"type\":\"UM\"}"
},
"unit": {
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 3600,
"offset": 0
},
"symbol": "h",
"baseMeasurement": {
"ancestry": "Time",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "h",
"name": "hour",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":3600.0,\"offset\":0.0},\"symbol\":\"h\",\"baseMeasurement\":{\"ancestry\":\"Time\",\"type\":\"UM\"},\"type\":\"USO\"}"
}
}
],
"persistableReference": "{\"ancestry\":\"Metric.English.ProductionEnglish\"}",
"unitAssignmentCountTotal": 3897,
"unitAssignmentCountInResponse": 2
}This method provides a general search across all items in the catalog. In this example, the entire Energistics unit of measure system is accessible.
POST /catalog/search?offset=0&limit=2
with body:
{
"query": "namespace:Energistics_UoM"
}CURL command to search the entire catalog by keywords, Lucene style
curl -X POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
-d '{
"query": "namespace:Energistics_UoM"
}' \
--url '{root-url}/api/crs-catalog/v2/catalog/search?offset=0&limit=2'
The request returns QueryResult.
Response example
{
"totalCount": 3210,
"offset": 0,
"units": [
{
"essence": {
"abcd": {
"a": 0,
"b": 0.01,
"c": 1,
"d": 0
},
"scaleOffset": null,
"symbol": "%",
"baseMeasurement": {
"ancestry": "1",
"type": "UM"
},
"type": "UAD"
},
"deprecationInfo": null,
"displaySymbol": "%",
"name": "percent",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"abcd\":{\"a\":0.0,\"b\":0.01,\"c\":1.0,\"d\":0.0},\"symbol\":\"%\",\"baseMeasurement\":{\"ancestry\":\"1\",\"type\":\"UM\"},\"type\":\"UAD\"}"
},
{
"essence": {
"abcd": {
"a": 0,
"b": 0.001,
"c": 1,
"d": 0
},
"scaleOffset": null,
"symbol": "ppk",
"baseMeasurement": {
"ancestry": "1",
"type": "UM"
},
"type": "UAD"
},
"deprecationInfo": null,
"displaySymbol": "ppk",
"name": "part per thousand",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"abcd\":{\"a\":0.0,\"b\":0.001,\"c\":1.0,\"d\":0.0},\"symbol\":\"ppk\",\"baseMeasurement\":{\"ancestry\":\"1\",\"type\":\"UM\"},\"type\":\"UAD\"}"
}
],
"measurements": [],
"unitMapItems": [],
"measurementMapItems": [],
"mapStates": [],
"count": 2
}The Unit of Measure Catalog contains multiple namespaces, which are disconnected, for example OSDD and Energistics_UoM. The catalog also contains mappings between the namespaces for unit and measurement items. Mappings are defined uni-directionally and have a stateattribute. The meaning of the statecode is declared in the MapStates.
This method returns the list of MapStates:
GET /catalog/mapstates?offset=0&limit=10CURL command to get a list of cross-namespace map states
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/catalog/mapstates?offset=0&limit=10'The response is of type QueryResult.
Response example
{
"totalCount": 8,
"offset": 0,
"units": [],
"measurements": [],
"unitMapItems": [],
"measurementMapItems": [],
"mapStates": [
{
"state": "identical",
"description": "Indicates that the mapsTo conversion factor is identical to the mapsFrom conversion factor. A copy of the value should be assigned the unit mapsTo. For deprecation state this indicates that the superseded item is identical.",
"source": "http://w3.energistics.org/uom/Energistics_Unit_of_Measure_Usage_Guide_V1.pdf"
},
{
"state": "precision",
"description": "Indicates that the mapsTo conversion factor has greater precision (in other words, changes in least significant digits). If there is knowledge that the value was converted from a different unit in the source dictionary, then consider using that conversion factor to reproduce the original value before converting to the target unit using a more precise target conversion factor. Otherwise, a copy of the value should be assigned the unit mapsTo. For deprecation state this indicates that the superseded item has higher precision.",
"source": "http://w3.energistics.org/uom/Energistics_Unit_of_Measure_Usage_Guide_V1.pdf"
},
{
"state": "corrected",
"description": "Indicates that the mapsTo conversion factor represents a correction to the mapsFrom conversion factor. That is, the mapsFrom conversion factor has a problem. The value should be treated the same as for a state of precision. For deprecation state this indicates that the superseded item has corrected behavior.",
"source": "http://w3.energistics.org/uom/Energistics_Unit_of_Measure_Usage_Guide_V1.pdf"
},
{
"state": "conversion",
"description": "A direct mapping is not specified, but the value can be converted to a supported item if the mapsFrom definition is presumed to be valid. For deprecation state this indicates that the current item can be converted to the superseded item if the current item is presumed to be valid.",
"source": "http://w3.energistics.org/uom/Energistics_Unit_of_Measure_Usage_Guide_V1.pdf"
},
{
"state": "conditional",
"description": "Indicates a mapping to a similar alternative with a different underlying conversion factor in the less significant digits. Other mapping alternatives may be available.",
"source": "http://w3.energistics.org/uom/Energistics_Unit_of_Measure_Usage_Guide_V1.pdf"
},
{
"state": "unsupported",
"description": "A mapping is not specified because the underlying concept is not supported. For information on how to add a new concept to a dictionary, see http://w3.energistics.org/uom/Energistics_Unit_of_Measure_Usage_Guide_V1.pdf Section 5.1, page 17.",
"source": "http://w3.energistics.org/uom/Energistics_Unit_of_Measure_Usage_Guide_V1.pdf"
},
{
"state": "different",
"description": "Similar to ‘corrected’ only that it isn’t as obvious who is wrong. This state is added by OSDD. Typical cases we cannot agree on are the year and the base unit for attenuation. Those are marked as different.",
"source": "SLB"
},
{
"state": "unresolved",
"description": "The exact definition is not found in the catalog. A temporary object (a unit or measurement) has been created as a substitute.",
"source": "SLB"
}
],
"count": 8
}UnitMap items carry information about unit mappings between two namespaces. Definitions are uni-directional. In case of "state" = "identical" the definition can be used as bi-directional.
This method returns the list of unitMapItems:
GET /unit/maps?offset=100&limit=2CURL command to get a list of cross-namespace unit mappings
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/unit/maps?offset=100&limit=2'The response is of type QueryResult.
Response example
{
"totalCount": 1393,
"offset": 100,
"units": [],
"measurements": [],
"unitMapItems": [
{
"state": "identical",
"note": "",
"fromUnit": {
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 0.003280839895013123,
"offset": 0
},
"symbol": "mV/ft",
"baseMeasurement": {
"ancestry": "Electric_Potential_Per_Length",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "mV/ft",
"name": "millivolt per foot",
"description": null,
"lastModified": "19920228",
"source": "APIRP661",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":0.003280839895013123,\"offset\":0.0},\"symbol\":\"mV/ft\",\"baseMeasurement\":{\"ancestry\":\"Electric_Potential_Per_Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
"toUnit": {
"essence": {
"abcd": {
"a": 0,
"b": 0.001,
"c": 0.3048,
"d": 0
},
"scaleOffset": null,
"symbol": "mV/ft",
"baseMeasurement": {
"ancestry": "LM/IT3",
"type": "UM"
},
"type": "UAD"
},
"deprecationInfo": null,
"displaySymbol": "mV/ft",
"name": "millivolt per foot",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"abcd\":{\"a\":0.0,\"b\":0.001,\"c\":0.3048,\"d\":0.0},\"symbol\":\"mV/ft\",\"baseMeasurement\":{\"ancestry\":\"LM/IT3\",\"type\":\"UM\"},\"type\":\"UAD\"}"
},
"fromNamespace": "RP66",
"toNamespace": "Energistics_UoM"
},
{
"state": "identical",
"note": "",
"fromUnit": {
"essence": {
"abcd": null,
"scaleOffset": {
"scale": 1609.347218694437,
"offset": 0
},
"symbol": "miUS",
"baseMeasurement": {
"ancestry": "Length",
"type": "UM"
},
"type": "USO"
},
"deprecationInfo": null,
"displaySymbol": "miUS",
"name": "mile (U.S. survey)",
"description": null,
"lastModified": "19920228",
"source": "APIRP662",
"namespace": "RP66",
"persistableReference": "{\"scaleOffset\":{\"scale\":1609.347218694437,\"offset\":0.0},\"symbol\":\"miUS\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}"
},
"toUnit": {
"essence": {
"abcd": {
"a": 0,
"b": 6336000,
"c": 3937,
"d": 0
},
"scaleOffset": null,
"symbol": "mi[US]",
"baseMeasurement": {
"ancestry": "L",
"type": "UM"
},
"type": "UAD"
},
"deprecationInfo": null,
"displaySymbol": "mi[US]",
"name": "US survey mile",
"description": null,
"lastModified": "20160322",
"source": "Energistics",
"namespace": "Energistics_UoM",
"persistableReference": "{\"abcd\":{\"a\":0.0,\"b\":6336000.0,\"c\":3937.0,\"d\":0.0},\"symbol\":\"mi[US]\",\"baseMeasurement\":{\"ancestry\":\"L\",\"type\":\"UM\"},\"type\":\"UAD\"}"
},
"fromNamespace": "RP66",
"toNamespace": "Energistics_UoM"
}
],
"measurementMapItems": [],
"mapStates": [],
"count": 2
}All measurementMap items carry information about measurement mappings between two namespaces. Definitions are uni-directional. If "state" = "identical" the definition can be used as bi-directional.
This method returns the list of measurementMapItems:
GET /measurement/maps?offset=10&limit=2CURL command to get a list of cross-namespace measurement mappings
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/measurement/maps?offset=10&limit=2'The response is of type QueryResult.
Response example
{
"totalCount": 110,
"offset": 10,
"units": [],
"measurements": [],
"unitMapItems": [],
"measurementMapItems": [
{
"state": "identical",
"note": "",
"fromMeasurement": {
"essence": {
"ancestry": "Rotational_Velocity",
"type": "UM"
},
"deprecationInfo": null,
"code": "Rotational_Velocity",
"name": "Rotational Velocity",
"description": "",
"dimensionCode": "RotationalVelocity",
"unitQuantityCode": "RotationalVelocity",
"namespace": "SLB",
"lastModified": "19920228",
"dimensionAnalysis": "A/T",
"baseMeasurement": true,
"baseMeasurementEssenceJson": "{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [
"{\"ancestry\":\"Rotational_Velocity.RotationalVelocity\",\"type\":\"UM\"}",
"{\"ancestry\":\"Rotational_Velocity.RotarySpeed\",\"type\":\"UM\"}",
"{\"ancestry\":\"Rotational_Velocity.Angular_Velocity\",\"type\":\"UM\"}",
"{\"ancestry\":\"Rotational_Velocity.AngularVelocity\",\"type\":\"UM\"}",
"{\"ancestry\":\"Rotational_Velocity.Unknown_Rotational_Velocity\",\"type\":\"UM\"}"
],
"unitEssenceJsons": [
"{\"scaleOffset\":{\"scale\":4.84813681109536E-6,\"offset\":0.0},\"symbol\":\"D/HR\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.10471975511966,\"offset\":0.0},\"symbol\":\"rev/min\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.28318530717959,\"offset\":0.0},\"symbol\":\"rev/s\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.10471975511966,\"offset\":0.0},\"symbol\":\"rpm\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"RD/S\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.10471975511966,\"offset\":0.0},\"symbol\":\"RPM\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.28318530717959,\"offset\":0.0},\"symbol\":\"RPS\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.10471975511966,\"offset\":0.0},\"symbol\":\"c/min\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.28318530717959,\"offset\":0.0},\"symbol\":\"c/s\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":4.84813681109536E-6,\"offset\":0.0},\"symbol\":\"deg/h\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"rad/s\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.28318530717959,\"offset\":0.0},\"symbol\":\"rps\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}"
],
"preferredUnitEssenceJsons": [
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"rad/s\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.10471975511966,\"offset\":0.0},\"symbol\":\"c/min\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.28318530717959,\"offset\":0.0},\"symbol\":\"c/s\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.28318530717959,\"offset\":0.0},\"symbol\":\"rev/s\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"},\"type\":\"USO\"}"
],
"parentEssenceJson": null,
"persistableReference": "{\"ancestry\":\"Rotational_Velocity\",\"type\":\"UM\"}"
},
"toMeasurement": {
"essence": {
"ancestry": "A/T.angular velocity",
"type": "UM"
},
"deprecationInfo": null,
"code": "angular velocity",
"name": "angular velocity",
"description": "",
"dimensionCode": "A/T",
"unitQuantityCode": "angular velocity",
"namespace": "Energistics_UoM",
"lastModified": "20160322",
"dimensionAnalysis": "A/T",
"baseMeasurement": false,
"baseMeasurementEssenceJson": "{\"ancestry\":\"A/T\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [],
"unitEssenceJsons": [],
"preferredUnitEssenceJsons": [
"{\"abcd\":{\"a\":0.0,\"b\":3.14159265358979,\"c\":648000.0,\"d\":0.0},\"symbol\":\"dega/h\",\"baseMeasurement\":{\"ancestry\":\"A/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":3.14159265358979,\"c\":10800.0,\"d\":0.0},\"symbol\":\"dega/min\",\"baseMeasurement\":{\"ancestry\":\"A/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":3.14159265358979,\"c\":180.0,\"d\":0.0},\"symbol\":\"dega/s\",\"baseMeasurement\":{\"ancestry\":\"A/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"rad/s\",\"baseMeasurement\":{\"ancestry\":\"A/T\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"abcd\":{\"a\":0.0,\"b\":6.28318530717959,\"c\":1.0,\"d\":0.0},\"symbol\":\"rev/s\",\"baseMeasurement\":{\"ancestry\":\"A/T\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"{\"abcd\":{\"a\":0.0,\"b\":6.28318530717959,\"c\":60.0,\"d\":0.0},\"symbol\":\"rpm\",\"baseMeasurement\":{\"ancestry\":\"A/T\",\"type\":\"UM\"},\"type\":\"UAD\"}"
],
"parentEssenceJson": "{\"ancestry\":\"A/T\",\"type\":\"UM\"}",
"persistableReference": "{\"ancestry\":\"A/T.angular velocity\",\"type\":\"UM\"}"
},
"fromNamespace": "SLB",
"toNamespace": "Energistics_UoM"
},
{
"state": "identical",
"note": "",
"fromMeasurement": {
"essence": {
"ancestry": "Rotational_Acceleration",
"type": "UM"
},
"deprecationInfo": null,
"code": "Rotational_Acceleration",
"name": "Rotational Acceleration",
"description": "",
"dimensionCode": "RotationalAcceleration",
"unitQuantityCode": "RotationalAcceleration",
"namespace": "SLB",
"lastModified": "19930427",
"dimensionAnalysis": "A/T2",
"baseMeasurement": true,
"baseMeasurementEssenceJson": "{\"ancestry\":\"Rotational_Acceleration\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [
"{\"ancestry\":\"Rotational_Acceleration.RotationalAcceleration\",\"type\":\"UM\"}",
"{\"ancestry\":\"Rotational_Acceleration.Angular_Acceleration\",\"type\":\"UM\"}"
],
"unitEssenceJsons": [
"{\"scaleOffset\":{\"scale\":6.28318530717959,\"offset\":0.0},\"symbol\":\"c/s2\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Acceleration\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"rad/s2\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Acceleration\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":4.84813681109536E-7,\"offset\":0.0},\"symbol\":\"c/h2\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Acceleration\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.00174532925199433,\"offset\":0.0},\"symbol\":\"c/min2\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Acceleration\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":0.0174532925199433,\"offset\":0.0},\"symbol\":\"deg/s2\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Acceleration\",\"type\":\"UM\"},\"type\":\"USO\"}"
],
"preferredUnitEssenceJsons": [
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"rad/s2\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Acceleration\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"scaleOffset\":{\"scale\":6.28318530717959,\"offset\":0.0},\"symbol\":\"c/s2\",\"baseMeasurement\":{\"ancestry\":\"Rotational_Acceleration\",\"type\":\"UM\"},\"type\":\"USO\"}"
],
"parentEssenceJson": null,
"persistableReference": "{\"ancestry\":\"Rotational_Acceleration\",\"type\":\"UM\"}"
},
"toMeasurement": {
"essence": {
"ancestry": "A/T2.angular acceleration",
"type": "UM"
},
"deprecationInfo": null,
"code": "angular acceleration",
"name": "angular acceleration",
"description": "",
"dimensionCode": "A/T2",
"unitQuantityCode": "angular acceleration",
"namespace": "Energistics_UoM",
"lastModified": "20160322",
"dimensionAnalysis": "A/T2",
"baseMeasurement": false,
"baseMeasurementEssenceJson": "{\"ancestry\":\"A/T2\",\"type\":\"UM\"}",
"childMeasurementEssenceJsons": [],
"unitEssenceJsons": [],
"preferredUnitEssenceJsons": [
"{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"rad/s2\",\"baseMeasurement\":{\"ancestry\":\"A/T2\",\"type\":\"UM\"},\"type\":\"USO\"}",
"{\"abcd\":{\"a\":0.0,\"b\":6.28318530717959,\"c\":60.0,\"d\":0.0},\"symbol\":\"rpm/s\",\"baseMeasurement\":{\"ancestry\":\"A/T2\",\"type\":\"UM\"},\"type\":\"UAD\"}"
],
"parentEssenceJson": "{\"ancestry\":\"A/T2\",\"type\":\"UM\"}",
"persistableReference": "{\"ancestry\":\"A/T2.angular acceleration\",\"type\":\"UM\"}"
},
"fromNamespace": "SLB",
"toNamespace": "Energistics_UoM"
}
],
"mapStates": [],
"count": 2
}The entire catalog is rarely required and comes with considerable redundancy. This method provides clients with the overview how many items of which kind are defined in the current catalog. The response definition contains the arrays of the different catalog elements. They can be populated - on demand - using the individual methods to get measurements, units, unit systems, maps, etc.
GET /catalogCURL command to get a summary of the catalog contents
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/catalog'The response is of type catalog.
Response example
{
"lastModified": "2017-11-01T16:11:13.748643Z",
"units": [],
"totalUnitCount": 3695,
"measurements": [],
"totalMeasurementCount": 4943,
"unitSystemInfos": [],
"totalUnitSystemCount": 14,
"unitMaps": [],
"totalUnitMapCount": 1393,
"measurementMaps": [],
"totalMeasurementMapCount": 110,
"mapStates": [],
"totalMapStateCount": 8
}If you need to cache the catalog or parts of the catalog, the last modification date of the catalog is a simple indicator of when the cache has become stale.
GET /catalog/lastmodifiedCURL command to get the last modified date of the catalog
curl -X GET \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {Java-Web-Token}' \
--header 'AppKey: {DELFI Api-Key}' \
--url '{root-url}/api/crs-catalog/v2/catalog/lastmodified'The response is of type CatalogLastModified.
Response example
{
"lastModified": "2017-11-01T16:11:13.748643Z"
}- Abcd
- Catalog
- CatalogLastModified
- ConversionAbcdRequest
- ConversionResult
- ConversionScaleOffsetRequest
- ErrorResponse
- MapState
- Measurement
- MeasurementDeprecationInfo
- MeasurementEssence
- MeasurementMap
- MeasurementMapItem
- MeasurementRequest
- QueryResult
- ScaleOffset
- SearchMeasurementRequest
- SearchRequest
- SearchUnitRequest
- Unit
- UnitAssignment
- UnitDeprecationInfo
- UnitEssence
- UnitMap
- UnitMapItem
- UnitSystem
- UnitSystemEssence
- UnitSystemInfo
- UnitSystemInfoList
- UnitSystemRequest
| Name | Type | Description | Notes |
|---|---|---|---|
| a | float | Coefficient A in the Energistics unit parameterization y = (A+Bx)/(C+Dx) | [optional] |
| b | float | Coefficient B in the Energistics unit parameterization y = (A+Bx)/(C+Dx) | [optional] |
| c | float | Coefficient C in the Energistics unit parameterization y = (A+Bx)/(C+Dx) | [optional] |
| d | float | Coefficient D in the Energistics unit parameterization y = (A+Bx)/(C+Dx) | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| lastModified | datetime | The unit of measure catalog's last modification date. | |
| totalMapStateCount | int | The number of MapState items known to this catalog. | |
| mapStates | list[MapState] | The MapState items defined in this catalog. | empty, for contents get-map-states |
| totalMeasurementMapCount | int | The number of measurement maps, such as one-directional links/correspondences of measurement pairs defined in this catalog. | |
| measurementMaps | list[MeasurementMap] | The array of measurement maps, such as one-directional links/correspondences of measurement pairs defined in this catalog. | empty, for contents get-measurement-map-items |
| totalMeasurementCount | int | The number of measurements, base measurements/dimensions and child measurements, defined in this catalog. | |
| measurements | list[Measurement] | The array of measurements, such as base measurements/dimensions and child measurements defined in this catalog. | empty, for contents get-measurements |
| totalUnitMapCount | int | The number of unit maps, such as one-directional links/correspondences of unit pairs defined in this catalog. | |
| unitMaps | list[UnitMap] | The unit maps, such as one-directional links/correspondences of unit pairs defined in this catalog. | empty, for contents get-unit-map-items |
| totalUnitSystemCount | int | The number of unit systems defined in this catalog. | |
| unitSystemInfos | list[UnitSystemInfoList] | The array of unit systems defined in this catalog. | empty, for contents get-unitsystem-list |
| totalUnitCount | int | The number of units defined in this catalog. | |
| units | list[Unit] | The array of units defined in this catalog. | empty, for contents get-units |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| lastModified | datetime | The unit of measure catalog's last modification date. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| fromUnitPersistableReference | string | The persistable reference string (JSON serialized unit 'essence') representing the 'from unit'. Either 'fromUnitPersistableReference' or 'fromUnit' must be populated. | [optional] |
| toUnitPersistableReference | string | The persistable reference string (JSON serialized unit 'essence') representing the 'to unit'. Either 'toUnitPersistableReference' or 'toUnit' must be populated. | [optional] |
| fromUnit | UnitEssence | The source or 'from' unit essence. | [optional] |
| toUnit | UnitEssence | The target or 'to' unit essence. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| abcd | Abcd | The Energistics y = (A+Bx)/(C+Dx) parameterization - if not present, scaleOffset is populated. | [optional] |
| fromUnit | Unit | The source or 'from' unit definition. | [optional] |
| scaleOffset | ScaleOffset | The y = scale*(x-offset) parameterization - if not present, Abcd is populated. | [optional] |
| toUnit | Unit | The target or 'to' unit definition. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| fromUnitPersistableReference | string | The persistable reference string (JSON serialized unit 'essence') representing the 'from unit'. Either 'fromUnitPersistableReference' or 'fromUnit' must be populated. | [optional] |
| toUnitPersistableReference | string | The persistable reference string (JSON serialized unit 'essence') representing the 'to unit'. Either 'toUnitPersistableReference' or 'toUnit' must be populated. | [optional] |
| fromUnit | UnitEssence | The source or 'from' unit essence. | [optional] |
| toUnit | UnitEssence | The target or 'to' unit essence. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| error | string | Error message | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| description | string | Further explanation about this MapState. | [optional] |
| source | string | The source of this MapState, such as Energistics or SLB. | [optional] |
| state | string | The unique MapState code can be one of the following: 'identical', 'corrected', 'precision', 'conversion', 'conditional', 'unsupported', 'different', or 'unresolved'. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| baseMeasurement | bool | True if the measurement is a root or base measurement, also known as dimension. False for any child measurement. | [optional] |
| childMeasurementEssenceJsons | list[string] | The essence Json strings of any child measurement of the current measurement. | [optional] |
| code | string | The measurement code. | [optional] |
| deprecationInfo | MeasurementDeprecationInfo | Optional deprecation information, if the current measurement is declared as deprecated. | [optional] |
| description | string | A description string that further describes the meaning and purpose of the current measurement. | [optional] |
| dimensionAnalysis | string | The dimensionality of the measurement in terms of Energistics dimension codes (). | [optional] |
| dimensionCode | string | The OSDD dimension code for 'SLB' or the dimension for namespace 'EnergisticsUoM'. | [optional] |
| essence | MeasurementEssence | The essential parameterization of the measurement. | [optional] |
| lastModified | string | The date this measurement was last updated in the format YYYYMMDD. | [optional] |
| name | string | The name of the current measurement. | [optional] |
| namespace | string | The namespace in which the current code is unique; typical values are 'SLB', 'EnergisticsUoM' | [optional] |
| parentEssenceJson | string | Only populated for child measurements - the parent measurement as an essence Json string. | [optional] |
| baseMeasurementEssenceJson | string | The base measurement as an essence Json string; the base measurements return themselves as a persistable reference string. | [optional] |
| preferredUnitEssenceJsons | list[string] | If populated, the list of preferred units associated with the current measurement. | [optional] |
| unitQuantityCode | string | The OSDD UnitQuantity code associated with this measurement - only meaningful for namespace 'SLB'. | [optional] |
| unitEssenceJsons | list[string] | Only populated for base measurements/dimensions: the units associated with this base measurement/dimension. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| remarks | string | Optional additional remarks about this deprecation. | [optional] |
| state | string | The deprecation state values are one of the following: 'identical', 'corrected', 'precision', 'conversion', 'conditional', 'unsupported', 'different', or 'unresolved'. | [optional] |
| supersededNyUnitMeasurement | string | If defined, the essence Json string identifying the unit superseding the deprecated unit. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| ancestry | string | The measurement ancestry, meaning the parent codes separated by a period symbol. | [optional] |
| type | string | The type string for this measurement. | [optional] [default to 'UM'] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| fromNamespace | string | The source or 'from' namespace. | [optional] |
| measurementMapItemCount | int | The number of items in the measurementMapItems array. | [optional] |
| measurementMapItems | list[measurementMapItem] | The array of measurementMapItem. | [optional] |
| toNamespace | string | The source or 'from' namespace. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| fromMeasurement | Measurement | The 'from' measurement of a measurement-to-measurement mapping. | [optional] |
| note | string | Any additional remarks and notes about this mapping. | [optional] |
| state | string | The state of the mapping values are one of the following: 'identical', 'corrected', 'precision', 'conversion', 'conditional', 'unsupported', 'different', or 'unresolved'. | [optional] |
| toMeasurement | Measurement | The 'to' measurement of a measurement-to-measurement mapping. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| persistableReference | string | The persistable reference string for the measurement; optional, only one 'persistableReference' or 'essence' must be defined. | [optional] |
| essence | MeasurementEssence | The measurement essence. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| count | int | Number of items actually returned in this response. | [optional] |
| measurementMapItems | list[MeasurementMapItem] | The array of measurement-to-measurement maps. | [optional] |
| measurements | list[Measurement] | The array of measurement items. | [optional] |
| offset | int | The offset position for this query. Default is 0. | [optional] |
| totalCount | int | Number of items contained in the catalog. | [optional] |
| unitMapItems | list[UnitMapItem] | The array of UnitMapItems describing unit-to-unit pairs. | [optional] |
| units | list[Unit] | The array of unit items. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| offset | float | The offset in y = scale*(x-offset). | [optional] |
| scale | float | The scale in y = scale*(x-offset). | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| query | string | The Lucene style query string with keywords. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| query | string | The Lucene style query string with keywords. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| query | string | The Lucene style query string with keywords. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| deprecationInfo | UnitDeprecationInfo | If present, the unit is deprecated. The deprecation information contains hints as to whether or not there is a unit superseding this unit. | [optional] |
| description | string | Any additional remarks about this unit or blank. | [optional] |
| displaySymbol | string | The unit symbol or unit abbreviation. | [optional] |
| essence | UnitEssence | The essential definition of this unit. | [optional] |
| lastModified | string | The last modification date of this unit in the format YYYYMMDD. | [optional] |
| name | string | The full name of this unit. | [optional] |
| namespace | string | The namespace in which this unit's symbol is unique. Example namespaces: 'Energistics_UoM', 'RP66', 'ECL', 'LIS'. | [optional] |
| source | string | The source of this unit definition. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| lastModified | string | The last modification date of the assignment in the format YYYYMMDD. | [optional] |
| measurement | Measurement | The measurement in the context of the unit system. | [optional] |
| unit | Unit | The unit assigned to the measurement in the context of the unit system. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| remarks | string | Optional additional remarks about this deprecation. | [optional] |
| state | string | The deprecation state can be one of the following: 'identical', 'corrected', 'precision', 'conversion', 'conditional', 'unsupported', 'different', or 'unresolved'. | [optional] |
| supersededNyUnit | string | If defined, the essence Json string that identifies the unit superseding the deprecated unit. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| abcd | Abcd | The Energistics y = (A+Bx)/(C+Dx) parameterization - if not present, scaleOffset is populated. | [optional] |
| scaleOffset | ScaleOffset | The y = scale*(x-offset) parameterization - if not present, Abcd is populated. | [optional] |
| symbol | string | The unit symbol or short name. | [optional] |
| baseMeasurement | MeasurementEssence | The essence to the base measurement that identifies which units are convertible). | [optional] |
| type | string | The type string for this unit essence, either 'USO' for ScaleOffset or 'UAD' for Abcd. | [optional] [default to 'USO'] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| fromNamespace | string | The source or 'from' namespace. | [optional] |
| toNamespace | string | The source or 'to' namespace. | [optional] |
| unitMapItemCount | int | The number of items in the unitMapItems array. | [optional] |
| unitMapItems | list[UnitMapItem] | The array of UnitMapItem. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| fromUnit | Unit | The 'from' unit of a unit-to-unit mapping. | [optional] |
| note | string | Any additional remarks and notes about this mapping. | [optional] |
| state | string | The state of the mapping can be one of the following: 'identical', 'corrected', 'precision', 'conversion', 'conditional', 'unsupported', 'different', or 'unresolved'. | [optional] |
| toUnit | Unit | The 'to' unit of a unit-to-unit mapping. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| persistableReference | string | The persistable reference string for the unit; optional, only one 'persistableReference' or 'essence' must be defined. | [optional] |
| essence | UnitEssence | Unit essence json structure. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| ancestry | string | The full ancestry of this unit system. | [optional] |
| description | string | Any further description of this unit system. | [optional] |
| lastModified | string | The last modification of this unit system core properties formatted as YYYYMMDD. | [optional] |
| name | string | The name of this unit system. | [optional] |
| referenceUnitSystem | string | The unit system code, from which this unit system is derived or a blank string. | [optional] |
| source | string | Source of the unit system definition. | [optional] |
| offset | int | The offset into the unit assignment list as defined in the request. | [optional] |
| unitAssignmentCountTotal | int | The total number of unit assignments provided by this unit system. | [optional] |
| unitAssignmentCountInResponse | int | The actual number of unit assignments delivered in this response. | [optional] |
| unitAssignments | list[UnitAssignment] | The unit assignments provided by this unit system. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| ancestry | string | The full ancestry of this unit system. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| name | string | The unit system name. | [optional] |
| description | string | The unit system description. | [optional] |
| ancestry | string | The unit system ancestry, in other words, names separated by '.' | [optional] |
| persistableReference | string | The unit system's persistable reference string. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| count | int | The number of elements in the list. | [optional] |
| totalCount | int | The total number of elements in the list defined in the catalog. | [optional] |
| offset | int | The offset into the list as requested. | [optional] |
| unitSystemInfoList | list[UnitSystemInfo] | The array of unit system names. | [optional] |
Back to table of contents - Back to table of request and response types
| Name | Type | Description | Notes |
|---|---|---|---|
| essence | UnitSystemEssence | Unit system essence. | [optional] |
Back to table of contents - Back to table of request and response types