Supported Domains
Raa Labs supports multiple domains for organizing and querying time series data. A domain defines how a time series is named and structured. Knowing the domains helps you form expressions for queries. The current supported domains include:
id
The raw time series UUID. This is a unique identifier assigned by Raa Labs for each signal. Use this for a direct lookup if you know the UUID.
62e23903-9db5-43cc-949d-78452ffb81bc
jsmea
JSMEA (Japan Ship Machinery and Equipment Association) naming standard, based on ISO 19848 for ship sensor data. This is a hierarchical naming scheme with multiple levels (e.g., system, subsystem, component, parameter).
IMO1234567/jsmea_mac/MainEngine/DrivingShaft/Output//Power/
raalabs
Raa Labs flat tag schema. A simpler, flattened naming convention that usually includes just the IMO number and a short descriptive tag.
IMO1234567/ME ShaftPower
parameters
Parameter grouping schema. It includes the IMO number, a parameter group name, and a short name. This groups related signals under a category.
IMO1234567/ME Power/ME ShaftPower
maker
The name given to a tag by the maker of the machinery or equipment. Includes the maker name and a tag name.
IMO1234567/Maker/12345
vis-3-8a
The VIS (Vessel Information Structures) naming convention from DNV is a standardized way to uniquely identify vessel functions and onboard equipment. It uses a hierarchical structure based on GMOD (Generic Product Model).
IMO1234567/913/S130.1-1/S121/sec/406i/H233/meta/qty-power
Using Wildcards in the Query Expression
All domains allow wildcard queries, making it easier to retrieve data across many tags or hierarchy levels. Wildcards let you fetch data without knowing the exact tag name—only part of the name or structure is enough.
The Raalabs Domain
Query Expression Format:
IMO{number}/{tag_name}
In a flat domain like raalabs, you can query multiple vessels or tags:
*/ME ShaftPowerRetrieves the Main Engine ShaftPower measurements for all vessels (*in place of the IMO number matches every vessel).raalabs/IMO1000002/ME* Shaft*Retrieves all tags that Starts with ME and has the word Shaft in it.
The JSMEA Domain
Query Expression Format:
IMO{number}/{short_naming_rule}/{category}/{sub_category}/{content}/{position}/{item}/{modifier}
In a hierarchical domain like jsmea, you can use wildcards at various levels:
IMO1234567/*/*/*/*/*/Power/Retrieves all time series under vessel IMO1234567 whose final component is "Power" (regardless of which subsystem or component).IMO1234567/jsmea_mac/MainEngine/*Retrieves all Main Engine-related time series for vessel 1234567 (wildcard at the level below MainEngine to get everything under it).IMO1234567/jsmea_mac/MainEngine/Fuel*Retrieves all Main Engine with some kind of fuel component related time series for vessel 1234567 (wildcard at the level below MainEngine to get everything under it).
The VIS-3-8a Domain
Query Expression Format:
IMO{number}/{primary_item_vis_path}/sec/{secondary_item_vis_path}/meta/{metadata}
The vis-3-8a domain utilizes the hierarchical GMOD (Generic Product Model) framework to define VIS-paths for vessel items. DNV provides a comprehensive learning tool for generating VIS-paths and metadata, along with detailed naming rule documentation.
Wildcards (*) can be applied at multiple levels within VIS-paths, as well as at the metadata type and IMO number specifications:
*Retrieves all time series from all vesselsIMO1234567/411.1Retrieves all time series under vessel IMO1234567 with primary path root 411.1 ("Propulsion Driver") and arbitrary amounts of descendants in the VIS-path. The latter means that specifying {primary_item_vis_path} = 411.1 is equal to specifying {primary_item_vis_path} = 411.1/*IMO1234567/400aRetrieves all time series under vessel IMO1234567 with primary path root being a code that lies within the group 400a ("Propulsion and steering arrangements") in the hierarchy tree, and arbitrary amounts of descendants in the VIS-path.IMO1234567/*/S130-2AMOSRetrieves all time series for vessel IMO1234567 with arbitrary primary path root and includes S130 (code for "fan unit") anywhere in the VIS-path of their primary item, except root position. Note that the code we require can be both exactly S130 or a code that is under it in the hierarchy, e.g. S130.2. In addition this code is required to have Location 2AMOS.*/*/sec/*/H233Retrieves all time series from all vessels with secondary item VIS-path including H233, and wildcard root.IMO1234567/meta/qty-temperatureRetrieves all time series for vessel IMO1234567 which have the metadata element "qty-temperature".IMO1234567/meta/qty-*Retrieves all time series for vessel IMO1234567 which have the metadata category "qty" and any metadata type.
Notes
Wildcards in primary or secondary VIS-paths match zero or more path segments, except at the root position where they match one or more segments to ensure a valid root is specified
You can combine vessel, path, and meta wildcards:
*/400a/*/C663/sec/*/meta/qty-*Use
{IMO1234567, IMO7654321}/*to query multiple specific vessels
Finding Domain Mappings
If you are unsure how a time series ID appears in different domains, you can use the metadata endpoint on the id domain to see its mappings. For example, you can fetch all metadata using the raw iddomain and look at the mapsTo field in the response. The mapsTo object will show equivalent identifiers in other domains for each time series.
For instance, a metadata query like GET https://prism.raalabs.io/{ENVIRONMENT}/metadata/id/* might return:
{
"46fd4739-ad03-43c3-b027-7db0d0b093ec": {
"name": "12153",
"description": "ENGINE ROOM TEMP.",
"source": "Aconis",
"scale": 1.0,
"vesselName": "Happy Wanderer",
"vesselImo": "1000005",
"uom": "°C",
"timeSeriesId": "46fd4739-ad03-43c3-b027-7db0d0b093ec",
"rangeLow": -40.0,
"rangeHigh": 60.0,
"mapsTo": {
"jsmea": "IMO1000005/jsmea_mac/EngineRoomAmbience/RoomSpace/AmbientAir//Temp/",
"maker": "IMO1000005/Aconis/12153",
"raalabs": "IMO1000005/EngineRoom AmbientAirTemp",
"vis-3-8a": "IMO1000005/406i/H233/meta/cnt-ambient.air/qty-temperature"
}
}
}Last updated