4.1. PDEF Document

The PDEF Document is the root object encapsulating entirely or partly a PDEF Dataset.

Note

To allow scaling-up of the PDEF Dataset size, splitting the dataset in several JSON documents is allowed.

4.1.1. Examples

An empty valid PDEF JSON document reads:

1
2
3
4
5
{
   "pdef_id":"b589ad95-1c14-4983-9332-34ba30aed1f7",
   "pdef_type":"pdef",
   "pdef_version":"2021-12",
}

The data is then chaptered in Collections.

1
2
3
4
5
6
7
{
   "pdef_id": "some text",
   "pdef_type": "pdef",
   "pdef_version": "2021-12",
   "projects": [],
   "bare_pipe_specs": [],
}

The valid PDEF JSON document above reports two Collections. Those collections are empty for now, but are intended to gather instances of Project and BarePipeSpec. Each collection shall be completed with members corresponding to the actual projects and bare pipe specifications data.

Note

The example above illustrates a user case of an EPCI contractor requesting a quotation from a pipe manufacturer. In such a case, only the bare pipe specification objects are transmitted between the Users. The other collections are therefore omitted.

4.1.2. Documentation

A PDEF Document has :

4.1.3. PDEF Schema

pdef.model.pdef.PDEF

Root of PDEF JSON dataset. This is where all Collections are gathered.

Show JSON schema
{
   "title": "PDEF",
   "description": "Root of PDEF JSON dataset. This is where all :ref:`Collections` are gathered.",
   "type": "object",
   "properties": {
      "pdef_id": {
         "title": "PDEF id",
         "description": ":ref:`pdef_id` is the unique identifier for the object.",
         "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
         "type": "string"
      },
      "pdef_type": {
         "title": "PDEF type",
         "description": "Object :ref:`pdef_type`. Always set to `pdef` in this case.",
         "const": "pdef",
         "type": "string"
      },
      "meta_data": {
         "title": "Metadata",
         "description": "Optional user free structured :ref:`Metadata` object.",
         "example": "{'created':'2021-09-03'}",
         "allOf": [
            {
               "$ref": "#/definitions/MetaData"
            }
         ]
      },
      "additional_data": {
         "title": "Additional Data",
         "description": "Optional user free structured :ref:`Additional Data` object.",
         "example": "{'color':'grey'}",
         "allOf": [
            {
               "$ref": "#/definitions/AdditionalData"
            }
         ]
      },
      "pdef_version": {
         "title": "PDEF schema version",
         "description": "The version of the PDEF schema used for this dataset. Always 2021-12 in this case.",
         "const": "2021-12",
         "type": "string"
      },
      "projects": {
         "title": "Project Collection",
         "description": "The collection of :ref:`Project` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/Project"
         }
      },
      "routes": {
         "title": "Route Collection",
         "description": "The collection of :ref:`Route` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/Route"
         }
      },
      "meteoceans": {
         "title": "Meteocean Collection",
         "description": "The collection of :ref:`Meteocean` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/Meteocean"
         }
      },
      "trawlings": {
         "title": "Trawling Data Collection",
         "description": "The collection of :ref:`Trawling` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/Trawling"
         }
      },
      "anode_specs": {
         "title": "Anode Specification Collection",
         "description": "The collection of :ref:`AnodeSpec` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/AnodeSpec"
         }
      },
      "bare_pipe_specs": {
         "title": "Bare Pipe Specification Collection",
         "description": "The collection of :ref:`BarePipeSpec` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/BarePipeSpec"
         }
      },
      "pipe_coating_specs": {
         "title": "Pipe Coating Specification Collection",
         "description": "The collection of :ref:`PipeCoatingSpec` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/PipeCoatingSpec"
         }
      },
      "field_joint_coating_specs": {
         "title": "Field Joint Coating Specification Collection",
         "description": "The collection of :ref:`FieldJointCoatingSpec` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/FieldJointCoatingSpec"
         }
      },
      "weld_specs": {
         "title": " Weld Specification Collection",
         "description": "The collection of :ref:`WeldSpec` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/WeldSpec"
         }
      },
      "pipeline_specs": {
         "title": "`PipelineSpec` Collection",
         "description": "The collection of :ref:`PipelineSpec` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/PipelineSpec"
         }
      },
      "section_single_pipe_specs": {
         "title": "`Section Single Pipe Spec` Collection",
         "description": "The collection of :ref:`SectionSinglePipeSpec` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/SectionSinglePipeSpec"
         }
      },
      "pipe_coating_pqts": {
         "title": "Pipe Coating PQT Collection",
         "description": "The collection of :ref:`PipeCoatingPQT` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/PipeCoatingPQT"
         }
      },
      "field_joint_coating_pqts": {
         "title": "Field Joint Coating PQT Collection",
         "description": "The collection of :ref:`FieldJointCoatingPQT` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/FieldJointCoatingPQT"
         }
      },
      "weld_pqts": {
         "title": "Weld PQT Collection",
         "description": "The collection of :ref:`WeldPQT` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/WeldPQT"
         }
      },
      "weld_ndt_pqts": {
         "title": "Weld NDT PQT Collection",
         "description": "The collection of :ref:`WeldNDTPQT` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/WeldNDTPQT"
         }
      },
      "anodes": {
         "title": "Anode Collection",
         "description": "The collection of :ref:`Anode` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/Anode"
         }
      },
      "bare_pipes": {
         "title": "Bare Pipe Collection",
         "description": "The collection of :ref:`BarePipe` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/BarePipe"
         }
      },
      "coated_pipes": {
         "title": "Coated Pipe Collection",
         "description": "The collection of :ref:`CoatedPipe` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/CoatedPipe"
         }
      },
      "welds": {
         "title": " Weld Collection",
         "description": "The collection of :ref:`Weld` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/Weld"
         }
      },
      "weld_ndts": {
         "title": "Weld NDT Collection",
         "description": "The collection of :ref:`WeldNDT` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/WeldNDT"
         }
      },
      "field_joint_coatings": {
         "title": "Field Joint Coating Collection",
         "description": "The collection of :ref:`FieldJointCoating` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/FieldJointCoating"
         }
      },
      "assembly_single_pipes": {
         "title": "Assembly Single Pipe Collection",
         "description": "The collection of :ref:`AssemblySinglePipe` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/AssemblySinglePipe"
         }
      },
      "pipelines": {
         "title": "Pipeline Collection",
         "description": "The collection of :ref:`Pipeline` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/Pipeline"
         }
      },
      "vessels": {
         "title": "Vessel Collection",
         "description": "The collection of :ref:`Vessel` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/Vessel"
         }
      },
      "fluid_props": {
         "title": "Fluid Properties Collection",
         "description": "The collection of :ref:`FluidProp` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/FluidProp"
         }
      },
      "density_sets": {
         "title": "Density Sets Collection",
         "description": "The collection of :ref:`DensitySet` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/DensitySet"
         }
      },
      "operating_cycles": {
         "title": "Operating Cycles Collection",
         "description": "The collection of :ref:`OperatingCycle` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/OperatingCycle"
         }
      },
      "pressure_sets": {
         "title": "Pressure Sets Collection",
         "description": "The collection of :ref:`PressureSet` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/PressureSet"
         }
      },
      "temperature_sets": {
         "title": "Temperature Sets Collection",
         "description": "The collection of :ref:`TemperatureSet` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/TemperatureSet"
         }
      },
      "solid_loads": {
         "title": "Solid Loads Collection",
         "description": "The collection of :ref:`SolidLoad` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/SolidLoad"
         }
      },
      "sensor_datas": {
         "title": "Sensor Data Collection",
         "description": "The collection of :ref:`SensorData` instances included in this dataset.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/SensorData"
         }
      }
   },
   "definitions": {
      "MetaData": {
         "title": "MetaData",
         "description": "Optional base JSON-fragment used to report meta data. User free structure.",
         "type": "object",
         "properties": {}
      },
      "AdditionalData": {
         "title": "AdditionalData",
         "description": "Optional base JSON-fragment used to report additional user specific data. User free structure.",
         "type": "object",
         "properties": {}
      },
      "Project": {
         "title": "Project",
         "description": "General project related data.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "project",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "name": {
               "title": "name",
               "description": "The usual name of the project.",
               "maxLength": 256,
               "examples": [
                  "Lapa SW Development"
               ],
               "type": "string"
            },
            "country": {
               "title": "country",
               "description": "The country of the project.",
               "examples": [
                  "Angola"
               ],
               "enum": [
                  "Afghanistan",
                  "Aland Islands",
                  "Albania",
                  "Algeria",
                  "American Samoa",
                  "Andorra",
                  "Angola",
                  "Anguilla",
                  "Antarctica",
                  "Antigua and Barbuda",
                  "Argentina",
                  "Armenia",
                  "Aruba",
                  "Australia",
                  "Austria",
                  "Azerbaijan",
                  "Bahamas",
                  "Bahrain",
                  "Bangladesh",
                  "Barbados",
                  "Belarus",
                  "Belgium",
                  "Belize",
                  "Benin",
                  "Bermuda",
                  "Bhutan",
                  "Bolivia",
                  "Bosnia and Herzegovina",
                  "Botswana",
                  "Bouvet Island",
                  "Brazil",
                  "British Indian Ocean Territory",
                  "Brunei Darussalam",
                  "Bulgaria",
                  "Burkina Faso",
                  "Burundi",
                  "Cambodia",
                  "Cameroon",
                  "Canada",
                  "Cape Verde",
                  "Cayman Islands",
                  "Central African Republic",
                  "Chad",
                  "Chile",
                  "China",
                  "Christmas Island",
                  "Cocos (Keeling) Islands",
                  "Colombia",
                  "Comoros",
                  "Congo",
                  "Congo, The Democratic Republic of the",
                  "Cook Islands",
                  "Costa Rica",
                  "Cote D'Ivoire",
                  "Croatia",
                  "Cuba",
                  "Cyprus",
                  "Czech Republic",
                  "Denmark",
                  "Djibouti",
                  "Dominica",
                  "Dominican Republic",
                  "Ecuador",
                  "Egypt",
                  "El Salvador",
                  "Equatorial Guinea",
                  "Eritrea",
                  "Estonia",
                  "Ethiopia",
                  "Falkland Islands (Malvinas)",
                  "Faroe Islands",
                  "Fiji",
                  "Finland",
                  "France",
                  "French Guiana",
                  "French Polynesia",
                  "French Southern Territories",
                  "Gabon",
                  "Gambia",
                  "Georgia",
                  "Germany",
                  "Ghana",
                  "Gibraltar",
                  "Greece",
                  "Greenland",
                  "Grenada",
                  "Guadeloupe",
                  "Guam",
                  "Guatemala",
                  "Guernsey",
                  "Guinea",
                  "Guinea-Bissau",
                  "Guyana",
                  "Haiti",
                  "Heard Island and Mcdonald Islands",
                  "Holy See (Vatican City State)",
                  "Honduras",
                  "Hong Kong",
                  "Hungary",
                  "Iceland",
                  "India",
                  "Indonesia",
                  "Iran, Islamic Republic Of",
                  "Iraq",
                  "Ireland",
                  "Isle of Man",
                  "Israel",
                  "Italy",
                  "Jamaica",
                  "Japan",
                  "Jersey",
                  "Jordan",
                  "Kazakhstan",
                  "Kenya",
                  "Kiribati",
                  "Democratic People's Republic of Korea",
                  "Korea, Republic of",
                  "Kosovo",
                  "Kuwait",
                  "Kyrgyzstan",
                  "Lao People's Democratic Republic",
                  "Latvia",
                  "Lebanon",
                  "Lesotho",
                  "Liberia",
                  "Libyan Arab Jamahiriya",
                  "Liechtenstein",
                  "Lithuania",
                  "Luxembourg",
                  "Macao",
                  "Macedonia, The Former Yugoslav Republic of",
                  "Madagascar",
                  "Malawi",
                  "Malaysia",
                  "Maldives",
                  "Mali",
                  "Malta",
                  "Marshall Islands",
                  "Martinique",
                  "Mauritania",
                  "Mauritius",
                  "Mayotte",
                  "Mexico",
                  "Micronesia, Federated States of",
                  "Moldova, Republic of",
                  "Monaco",
                  "Mongolia",
                  "Montenegro",
                  "Montserrat",
                  "Morocco",
                  "Mozambique",
                  "Myanmar",
                  "Namibia",
                  "Nauru",
                  "Nepal",
                  "Netherlands",
                  "Netherlands Antilles",
                  "New Caledonia",
                  "New Zealand",
                  "Nicaragua",
                  "Niger",
                  "Nigeria",
                  "Niue",
                  "Norfolk Island",
                  "Northern Mariana Islands",
                  "Norway",
                  "Oman",
                  "Pakistan",
                  "Palau",
                  "Palestinian Territory, Occupied",
                  "Panama",
                  "Papua New Guinea",
                  "Paraguay",
                  "Peru",
                  "Philippines",
                  "Pitcairn",
                  "Poland",
                  "Portugal",
                  "Puerto Rico",
                  "Qatar",
                  "Reunion",
                  "Romania",
                  "Russian Federation",
                  "Rwanda",
                  "Saint Helena",
                  "Saint Kitts and Nevis",
                  "Saint Lucia",
                  "Saint Pierre and Miquelon",
                  "Saint Vincent and the Grenadines",
                  "Samoa",
                  "San Marino",
                  "Sao Tome and Principe",
                  "Saudi Arabia",
                  "Senegal",
                  "Serbia",
                  "Seychelles",
                  "Sierra Leone",
                  "Singapore",
                  "Slovakia",
                  "Slovenia",
                  "Solomon Islands",
                  "Somalia",
                  "South Africa",
                  "South Georgia and the South Sandwich Islands",
                  "Spain",
                  "Sri Lanka",
                  "Sudan",
                  "Suriname",
                  "Svalbard and Jan Mayen",
                  "Swaziland",
                  "Sweden",
                  "Switzerland",
                  "Syrian Arab Republic",
                  "Taiwan",
                  "Tajikistan",
                  "Tanzania, United Republic of",
                  "Thailand",
                  "Timor-Leste",
                  "Togo",
                  "Tokelau",
                  "Tonga",
                  "Trinidad and Tobago",
                  "Tunisia",
                  "Turkey",
                  "Turkmenistan",
                  "Turks and Caicos Islands",
                  "Tuvalu",
                  "Uganda",
                  "Ukraine",
                  "United Arab Emirates",
                  "United Kingdom",
                  "United States",
                  "United States Minor Outlying Islands",
                  "Uruguay",
                  "Uzbekistan",
                  "Vanuatu",
                  "Venezuela",
                  "Viet Nam",
                  "Virgin Islands, British",
                  "Virgin Islands, U.S.",
                  "Wallis and Futuna",
                  "Western Sahara",
                  "Yemen",
                  "Zambia",
                  "Zimbabwe"
               ],
               "type": "string"
            },
            "block": {
               "title": "block",
               "description": "The main geographical Block to which the project is related.",
               "maxLength": 256,
               "examples": [
                  "Block 15"
               ],
               "type": "string"
            },
            "field": {
               "title": "field",
               "description": "The main Field to which the project is related.",
               "maxLength": 256,
               "examples": [
                  "Begonia"
               ],
               "type": "string"
            },
            "operator": {
               "title": "Operator",
               "description": "Name of the company owning the project.",
               "maxLength": 256,
               "examples": [
                  "ExxonMobil",
                  "Petrobras",
                  "Total E&P Angola",
                  "Woodside"
               ],
               "type": "string"
            },
            "related_pipeline": {
               "title": "Relations to :ref:`Pipeline`.",
               "description": "Related instances of :ref:`Pipeline`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "Point": {
         "title": "Point",
         "description": "Base model for all geo-referenced objects.",
         "type": "object",
         "properties": {
            "type": {
               "title": "Type",
               "const": "Point",
               "enum": [
                  "Point",
                  "LineString",
                  "Polygon",
                  "MultiPoint",
                  "MultiLineString",
                  "MultiPolygon"
               ],
               "type": "string"
            },
            "coordinates": {
               "title": "Coordinates",
               "description": "Single position. A position is an array of 2 or 3 floats (long, lat, el), see GeoJSON documentation.",
               "examples": [
                  2.3393476009368896,
                  48.857771121284145
               ],
               "anyOf": [
                  {
                     "type": "array",
                     "items": [
                        {
                           "type": "number"
                        },
                        {
                           "type": "number"
                        }
                     ]
                  },
                  {
                     "type": "array",
                     "items": [
                        {
                           "type": "number"
                        },
                        {
                           "type": "number"
                        },
                        {
                           "type": "number"
                        }
                     ]
                  }
               ]
            },
            "crs": {
               "title": "Coordinate Reference System",
               "description": "Geodesic reference system used for the coordinate. PDEF recommend the use of EPSG code.",
               "examples": "EPSG:4326",
               "type": "string"
            }
         },
         "required": [
            "coordinates",
            "crs"
         ]
      },
      "LineString": {
         "title": "LineString",
         "description": "Base model for all geo-referenced objects.",
         "type": "object",
         "properties": {
            "type": {
               "title": "Type",
               "const": "LineString",
               "type": "string"
            },
            "coordinates": {
               "title": "Coordinates",
               "minItems": 2,
               "type": "array",
               "items": {
                  "anyOf": [
                     {
                        "type": "array",
                        "items": [
                           {
                              "type": "number"
                           },
                           {
                              "type": "number"
                           }
                        ]
                     },
                     {
                        "type": "array",
                        "items": [
                           {
                              "type": "number"
                           },
                           {
                              "type": "number"
                           },
                           {
                              "type": "number"
                           }
                        ]
                     }
                  ]
               }
            },
            "crs": {
               "title": "Coordinate Reference System",
               "description": "Geodesic reference system used for the coordinate. PDEF recommend the use of EPSG code.",
               "examples": "EPSG:4326",
               "type": "string"
            }
         },
         "required": [
            "coordinates",
            "crs"
         ]
      },
      "MultiPoint": {
         "title": "MultiPoint",
         "description": "Base model for all geo-referenced objects.",
         "type": "object",
         "properties": {
            "type": {
               "title": "Type",
               "const": "MultiPoint",
               "type": "string"
            },
            "coordinates": {
               "title": "Coordinates",
               "type": "array",
               "items": {
                  "anyOf": [
                     {
                        "type": "array",
                        "items": [
                           {
                              "type": "number"
                           },
                           {
                              "type": "number"
                           }
                        ]
                     },
                     {
                        "type": "array",
                        "items": [
                           {
                              "type": "number"
                           },
                           {
                              "type": "number"
                           },
                           {
                              "type": "number"
                           }
                        ]
                     }
                  ]
               }
            },
            "crs": {
               "title": "Coordinate Reference System",
               "description": "Geodesic reference system used for the coordinate. PDEF recommend the use of EPSG code.",
               "examples": "EPSG:4326",
               "type": "string"
            }
         },
         "required": [
            "coordinates",
            "crs"
         ]
      },
      "Length": {
         "title": "Length",
         "description": ":ref:`Measure` of a length, distance, thickness, diameter, etc",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "km",
                  "hm",
                  "dam",
                  "m",
                  "dm",
                  "cm",
                  "mm",
                  "microm",
                  "ft",
                  "in"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Route": {
         "title": "Route",
         "description": "Parameters defining the :ref:`Pipeline` route, including location of start and end points, length, Kilometer Post (KP) 0 conventions and the like.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "route",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "life_phase": {
               "title": "Name",
               "description": "The pipeline life phase to which this route is related.",
               "enum": [
                  "design",
                  "installation",
                  "as-built",
                  "inspection"
               ],
               "type": "string"
            },
            "descr": {
               "title": "Description",
               "description": "Descriptive text for the route.",
               "maxLength": 1000,
               "type": "string"
            },
            "kp_start_descr": {
               "title": "KP Start Description",
               "description": "Short description of location selected as pipeline starting point and KP 0.",
               "maxLength": 256,
               "example": [
                  "spool/pipeline tie-in point on as-built drawing XXX rev. 1"
               ],
               "type": "string"
            },
            "kp_start_point": {
               "title": "Location of Starting Point (KP 0)",
               "description": "GeoJSON :ref:`Point` for localizing kp_start.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Point"
                  }
               ]
            },
            "kp_end_descr": {
               "title": "KP End Description",
               "description": "Short description of location selected as pipeline endpoint.",
               "maxLength": 1000,
               "example": [
                  "spool/pipeline tie-in point on as-built drawing XXX rev. 1"
               ],
               "type": "string"
            },
            "kp_end_point": {
               "title": "Location of End Point (KP end)",
               "description": "GeoJSON Point for localizing kp_end.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Point"
                  }
               ]
            },
            "easting_northing_linestring": {
               "title": "Easting, Northing coordinates",
               "description": "GeoJSON :ref:`LineString` of easting and northing coordinates.",
               "allOf": [
                  {
                     "$ref": "#/definitions/LineString"
                  }
               ]
            },
            "bathymetry_multipoint": {
               "title": "Bathymetry profile ",
               "description": "GeoJSON :ref:`MultiPoint` of bathymetry - water depth -.",
               "allOf": [
                  {
                     "$ref": "#/definitions/MultiPoint"
                  }
               ]
            },
            "intersection_point_radius": {
               "title": "Intersection point with curve radius",
               "description": "Array of GeoJSON :ref:`Point` of intersection points and associated curve radius.",
               "type": "array",
               "items": {
                  "type": "array",
                  "items": [
                     {
                        "$ref": "#/definitions/Point"
                     },
                     {
                        "type": "number"
                     }
                  ]
               }
            },
            "flow_direction": {
               "title": "Direction convention for KP versus conveyed fluid flow.",
               "description": "Usually, the KP increases in the direction of the flow (`true`). Opposite convention can be specified (`false`)",
               "default": true,
               "type": "boolean"
            },
            "length": {
               "title": "Route Length",
               "description": "The projected route length.",
               "example": {
                  "val": 12.568,
                  "unit": "km"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            }
         },
         "additionalProperties": false
      },
      "Temperature": {
         "title": "Temperature",
         "description": ":ref:`Measure` of temperature",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "K",
                  "C",
                  "F"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Depth": {
         "title": "Depth",
         "description": ":ref:`Measure` of a depth. Positive counting downwards.",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "km",
                  "hm",
                  "dam",
                  "m",
                  "dm",
                  "cm",
                  "mm",
                  "microm",
                  "ft",
                  "in"
               ],
               "type": "string"
            },
            "ref": {
               "title": "Depth Reference",
               "description": "The depth reference system used to specify the depth.",
               "examples": [
                  "LAT",
                  "MSL"
               ],
               "enum": [
                  "LAT",
                  "MSL"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit",
            "ref"
         ],
         "additionalProperties": false
      },
      "Duration": {
         "title": "Duration",
         "description": ":ref:`Measure` of a duration",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "s",
                  "mn",
                  "hr",
                  "d",
                  "mth",
                  "y"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Speed": {
         "title": "Speed",
         "description": ":ref:`Measure` of speed",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "m.s^-1",
                  "km.hr^-1",
                  "mm.hr^-1",
                  "knots",
                  "ipm"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Azimuth": {
         "title": "Azimuth",
         "description": ":ref:`Measure` of an angle relative to North.",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "deg",
                  "rad"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Current": {
         "title": "Current",
         "description": "Seawater current data.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "current",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "location_point": {
               "title": "Point Location",
               "description": "GeoJSON :ref:`Point` for current data.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Point"
                  }
               ]
            },
            "depth": {
               "title": "Depth",
               "description": "Reference :ref:`Depth` for current data.",
               "examples": {
                  "val": 0,
                  "unit": "m",
                  "ref": "MSL"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Depth"
                  }
               ]
            },
            "return_period": {
               "title": "Return Period",
               "description": ":ref:`Duration` for the return period.",
               "example": {
                  "val": 1.0,
                  "unit": "d"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Duration"
                  }
               ]
            },
            "velocity": {
               "title": "Velocity / Speed",
               "description": ":ref:`Speed` of the current.",
               "example": {
                  "val": 0.75,
                  "unit": "m.s^-1"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Speed"
                  }
               ]
            },
            "azimuth": {
               "title": "Azimuth",
               "description": ":ref:`Azimuth` of the current.",
               "example": {
                  "val": 15,
                  "unit": "deg"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Azimuth"
                  }
               ]
            }
         },
         "additionalProperties": false
      },
      "Density": {
         "title": "Density",
         "description": ":ref:`Measure` of a density.",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "g.m^-3",
                  "kg.m^-3"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "SeawaterDensity": {
         "title": "SeawaterDensity",
         "description": "Seawater density data.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "seawater_density",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "location_point": {
               "title": "Point Location",
               "description": "GeoJSON :ref:`Point` for seawater density data.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Point"
                  }
               ]
            },
            "depth": {
               "title": "Depth",
               "description": "Reference :ref:`Depth` for seawater density data.",
               "examples": {
                  "val": 0,
                  "unit": "m",
                  "ref": "MSL"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Depth"
                  }
               ]
            },
            "density": {
               "title": "Density",
               "description": ":ref:`Density` of the seawater.",
               "example": {
                  "val": 1030,
                  "unit": "kg.m^-3"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Density"
                  }
               ]
            }
         }
      },
      "Meteocean": {
         "title": "Meteocean",
         "description": "Meteocean gathers the meteo and ocean data for the field, such as wave, current, temperature, etc.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "meteocean",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "seawater_temp_average_summer": {
               "title": "Seawater Temperature, average in summer",
               "description": "Average Summer Seawater Ambient :ref:`Temperature`",
               "allOf": [
                  {
                     "$ref": "#/definitions/Temperature"
                  }
               ]
            },
            "seawater_temp_average_winter": {
               "title": "Seawater Temperature, average in Winter",
               "description": "Average Summer Seawater Ambient :ref:`Temperature`",
               "allOf": [
                  {
                     "$ref": "#/definitions/Temperature"
                  }
               ]
            },
            "seawater_temp_extreme_max": {
               "title": "Seawater Temperature, Extreme Maximum",
               "description": "Extreme Maximum Seawater Ambient :ref:`Temperature`",
               "allOf": [
                  {
                     "$ref": "#/definitions/Temperature"
                  }
               ]
            },
            "seawater_temp_extreme_min": {
               "title": "Seawater Temperature, Extreme Minimum",
               "description": "Extreme Minimum Seawater Ambient :ref:`Temperature`",
               "allOf": [
                  {
                     "$ref": "#/definitions/Temperature"
                  }
               ]
            },
            "records_of_current": {
               "title": "Records of Currents",
               "description": "Embedded records of :ref:`Current`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/Current"
               }
            },
            "records_of_seawater_density": {
               "title": "Records of Seawater Density",
               "description": "Embedded records of :ref:`SeawaterDensity`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/SeawaterDensity"
               }
            }
         },
         "additionalProperties": false
      },
      "Trawling": {
         "title": "Trawling",
         "description": ":ref:`Base PDEF Object` defining fishing trawling data.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "trawling",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "zone": {
               "title": "Geo Referenced Zone",
               "description": "The geographic zone associated with this :ref:`Trawling` object, specified as a :ref:`linear ring`.",
               "allOf": [
                  {
                     "$ref": "#/definitions/LineString"
                  }
               ]
            }
         },
         "additionalProperties": false
      },
      "Electro_Chemical_Efficiency": {
         "title": "Electro_Chemical_Efficiency",
         "description": ":ref:`Measure` of Electro-chemical Efficiency.",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "Unit",
               "enum": [
                  "A.h.kg^-1"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Resistivity": {
         "title": "Resistivity",
         "description": ":ref:`Measure` of electrical resistivity.",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "ohm.m^-1"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Mass": {
         "title": "Mass",
         "description": ":ref:`Measure` of mass",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "g",
                  "kg",
                  "lb",
                  "lbs",
                  "t"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "AnodeSpec": {
         "title": "AnodeSpec",
         "description": "`AnodeSpec` gathers parameters to specify an :ref:`Anode`.\n\nIn this version of PDEF, only half-shell bracelet anodes are provided.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "anode_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "type": {
               "title": "Type",
               "description": "Type of :ref:`Anode` required.",
               "example": "half-shell bracelet",
               "enum": [
                  "half-shell bracelet"
               ],
               "type": "string"
            },
            "main_material": {
               "title": "Material, main",
               "description": "Main sacrificial material for the :ref:`Anode`.",
               "maxLength": 256,
               "example": "Aluminium Zinc Indium",
               "type": "string"
            },
            "main_material_density": {
               "title": "Material Density",
               "description": "Material :ref:`Density`",
               "example": {
                  "val": 7850,
                  "unit": "kg.m^-3"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Density"
                  }
               ]
            },
            "main_material_electrochem_eff": {
               "title": "Material Electrochemical Efficiency",
               "description": ":ref:`Electro_Chemical_Efficiency` of the  Material.",
               "example": {
                  "val": 2500,
                  "unit": "A.h.kg^-1"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Electro_Chemical_Efficiency"
                  }
               ]
            },
            "main_material_resistivity": {
               "title": "Material Electrical Resistivity",
               "description": "Electrical :ref:`Resistivity` of the  Material.",
               "example": {
                  "val": 2.82e-08,
                  "unit": "ohm.m^-1"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Resistivity"
                  }
               ]
            },
            "net_mass": {
               "title": "Net Mass",
               "description": "Specified net :ref:`Mass` of the :ref:`Anode`.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Mass"
                  }
               ]
            },
            "inner_dia_nom": {
               "title": "Internal Diameter",
               "description": "Specified :ref:`Length` for anode nominal internal diameter.",
               "example": "{'val':'400', 'unit':'mm'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "outer_dia_nom": {
               "title": "Outside Diameter",
               "description": "Specified :ref:`Length` for anode nominal outer diameter.",
               "example": "{'val':'400', 'unit':'mm'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "length": {
               "title": "Length",
               "description": "Specified :ref:`Length` of the :ref:`Anode`.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "center_body_thickness": {
               "title": "Center Body Thickness",
               "description": "Specified :ref:`Length` for the center body thickness of the :ref:`Anode`.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "taper_length": {
               "title": "End Taper Length",
               "description": "Specified :ref:`Length` over which the :ref:`Anode` end is tapered.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "end_thickness": {
               "title": "End Thickness",
               "description": "Specified :ref:`Length` for the :ref:`Anode` end thickness.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "gap_thickness": {
               "title": "Half Shell Gap Thickness",
               "description": "Specified :ref:`Length` for the :ref:`Anode` half-shelf gap.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "insert_type": {
               "title": "Insert type",
               "description": "Specified type for the :ref:`Anode` insert type ",
               "example": "bar",
               "enum": [
                  "strap",
                  "bar"
               ],
               "type": "string"
            },
            "insert_material": {
               "title": "Material, insert",
               "description": "Material selected for the inserts of the :ref:`Anode`.",
               "maxLength": 256,
               "example": "Aluminium Zinc Indium",
               "type": "string"
            },
            "insert_thickness": {
               "title": "Insert Thickness",
               "description": "Specified :ref:`Length` for the :ref:`Anode` insert thickness.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "insert_length": {
               "title": "Insert Length",
               "description": "Specified :ref:`Length` for the :ref:`Anode` insert length.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "insert_mass": {
               "title": "Insert Mass",
               "description": "Specified :ref:`Mass` of the insert of the :ref:`Anode`.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Mass"
                  }
               ]
            },
            "elec_cable_length": {
               "title": "electrical cable length ",
               "description": "Specified :ref:`Length` for the :ref:`Anode` electrical cable.",
               "example": {
                  "val": 0.2,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "marking": {
               "title": "Marking",
               "description": "Marking that shall be printed on the :ref:`Anode`.",
               "maxLength": 256,
               "example": "Al-Zn 2458",
               "type": "string"
            },
            "bolts": {
               "title": "Bolts reference",
               "description": "Bolts to be used to attach the bracelet :ref:`Anode`.",
               "maxLength": 256,
               "example": "M12 x 120 Inox SS316",
               "type": "string"
            },
            "nuts": {
               "title": "Nuts reference",
               "description": "Nuts to be used to attach the bracelet :ref:`Anode`.",
               "maxLength": 256,
               "example": "M12 Inox SS316",
               "type": "string"
            },
            "washers": {
               "title": "Washers reference",
               "description": "Washers to be used to attach the bracelet :ref:`Anode`.",
               "maxLength": 256,
               "example": "M12 Inox SS316",
               "type": "string"
            },
            "surface_coating_type": {
               "title": "Surface Coating Type",
               "description": "Type of surface coating to be applied atop :ref:`Anode`.",
               "maxLength": 256,
               "example": "mastic epoxy",
               "type": "string"
            },
            "surface_coating_thickness": {
               "title": "Surface Coating Thickness",
               "description": ":ref:`Length` for specified surface coating thickness.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            }
         }
      },
      "Stress": {
         "title": "Stress",
         "description": ":ref:`Measure` of stress",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "Pa",
                  "kPa",
                  "MPa",
                  "GPa",
                  "psi",
                  "kpsi"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "UnitLess": {
         "title": "UnitLess",
         "description": ":ref:`Measure` for dimensionless ratios.",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "anyOf": [
                  {
                     "type": "null"
                  },
                  {
                     "enum": [
                        "ppb",
                        "%",
                        "ppm",
                        "ppt",
                        "ppq",
                        "N/A",
                        ""
                     ],
                     "type": "string"
                  }
               ]
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Thermal_Expansion_Coef": {
         "title": "Thermal_Expansion_Coef",
         "description": ":ref:`Measure` of coefficient of thermal expansion",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "Unit",
               "enum": [
                  "C^-1",
                  "K^-1",
                  "F^-1"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Specific_Heat_Capacity": {
         "title": "Specific_Heat_Capacity",
         "description": ":ref:`Measure` of specific heat capacity, the amount of energy needed to raise the \ntemperature of a substance by degree.",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "J.K^-1.g^-1",
                  "J.C^-1.g^-1",
                  "J.K^-1.kg^-1",
                  "J.C^-1.kg^-1"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Thermal_Conductivity": {
         "title": "Thermal_Conductivity",
         "description": ":ref:`Measure` of Thermal Conductivity",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "W.m^-1.K^-1"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Pressure": {
         "title": "Pressure",
         "description": ":ref:`Measure` of pressure",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "Pa",
                  "kPa",
                  "MPa",
                  "GPa",
                  "psi",
                  "kpsi",
                  "bar"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "BarePipeSpec": {
         "title": "BarePipeSpec",
         "description": "`BarePipeSpec` stores data intended to gather the properties of :ref:`BarePipe` objects.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "bare_pipe_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "standard": {
               "title": "Standard",
               "description": "Main Standard for the pipe.",
               "example": "DNV",
               "enum": [
                  "DNV",
                  "API5L"
               ],
               "type": "string"
            },
            "length_nom": {
               "title": "Length, nominal",
               "description": "The linepipe nominal :ref:`Length`.",
               "example": {
                  "val": 12.252,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "length_min": {
               "title": "Length, minimum",
               "description": "The linepipe minimum :ref:`Length`.",
               "example": {
                  "val": 12.1,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "length_max": {
               "title": "Length, maximal",
               "description": "The linepipe maximum :ref:`Length`.",
               "example": {
                  "val": 12.3,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "out_dia_nom": {
               "title": "Outside Diameter, nominal",
               "description": "Outside diameter of the linepipe (steel external surface), nominal.",
               "example": {
                  "val": 323.9,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "out_dia_tol_neg_body": {
               "title": "Outside Diameter Tolerance, negative, body",
               "description": "Outside diameter negative tolerance of the linepipe body (steel external surface).",
               "example": {
                  "val": -3.05,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "out_dia_tol_pos_body": {
               "title": "Outside Diameter Tolerance, positive, body",
               "description": "Outside diameter positive tolerance of the linepipe body (steel external surface).",
               "example": {
                  "val": 3.05,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "out_dia_tol_neg_end": {
               "title": "Outside Diameter Tolerance, negative, end",
               "description": "Outside diameter negative tolerance of the linepipe end (steel external surface).",
               "example": {
                  "val": -2.03,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "out_dia_tol_pos_end": {
               "title": "Outside Diameter Tolerance, positive, end",
               "description": "Outside diameter positive tolerance of the linepipe end (steel external surface).",
               "example": {
                  "val": 2.03,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "inn_dia_nom": {
               "title": "Inner Diameter, nominal",
               "description": "Inner diameter of the linepipe (steel inertal surface), nominal.",
               "example": {
                  "val": 295.3,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "inn_dia_tol_neg_body": {
               "title": "Inner Diameter Tolerance, negative, body",
               "description": "Inner diameter negative tolerance of the linepipe body (steel internal surface).",
               "example": {
                  "val": -3.05,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "inn_dia_tol_pos_body": {
               "title": "Inner Diameter Tolerance, positive, body",
               "description": "Inner diameter positive tolerance of the linepipe body (steel internal surface).",
               "example": {
                  "val": 3.05,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "inn_dia_tol_neg_end": {
               "title": "Inner Diameter Tolerance, negative, end",
               "description": "Inner diameter negative tolerance of the linepipe end (steel internal surface).",
               "example": {
                  "val": -2.03,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "inn_dia_tol_pos_end": {
               "title": "Inner Diameter Tolerance, positive, end",
               "description": "Inner diameter positive tolerance of the linepipe end (steel internal surface).",
               "example": {
                  "val": 2.03,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "wth_nom": {
               "title": "Wall Thickness, nominal.",
               "description": "Wall thickness of the linepipe (internal to external bare steel surface, excluding liner, clad, coating, etc), nominal.",
               "example": {
                  "val": 14.3,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "wth_tol_neg": {
               "title": "Wall Thickness Tolerance, negative",
               "description": "Wall thickness tolerance of the linepipe (internal to external bare steel surface, excluding liner, clad, coating, etc), negative.",
               "example": {
                  "val": -1.43,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "wth_tol_pos": {
               "title": "Wall Thickness Tolerance, positive",
               "description": "Wall thickness tolerance of the linepipe (internal to external bare steel surface, excluding liner, clad, coating, etc), positive.",
               "example": {
                  "val": 1.78,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "oor_dnv_tol_end": {
               "title": "Out-of-roundness Tolerance, end",
               "description": "Out-of-roundness tolerance of the linepipe end (steel external surface) as per DNV.",
               "example": {
                  "val": 4.06,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "oor_dnv_tol_body": {
               "title": "Out-of-roundness Tolerance, body",
               "description": "Out-of-roundness tolerance of the linepipe body (steel external surface) as per DNV.",
               "example": {
                  "val": 6.1,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "oor_api5L_tol_end": {
               "title": "Out-of-roundness Tolerance, end",
               "description": "Out-of-roundness tolerance of the linepipe end (steel external surface) as per API5L.",
               "example": {
                  "val": 4.06,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "oor_api5L_tol_body": {
               "title": "Out-of-roundness Tolerance, body",
               "description": "Out-of-roundness tolerance of the linepipe body (steel external surface) as per API5L.",
               "example": {
                  "val": 6.1,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "str_tol": {
               "title": "Max Straightness tolerance, full length",
               "description": "Max Straightness tolerance for full length of pipe.",
               "example": {
                  "val": 18,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "str_tol_end": {
               "title": "Max Straightness tolerance deviation,end",
               "description": "Max Straightness tolerance deviation for pipe end region.",
               "example": {
                  "val": 3,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "oosq_tol_end": {
               "title": "Out-of-squarness,end",
               "description": "Out-of squareness at pipe ends.",
               "example": {
                  "val": 1.6,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "material_type": {
               "title": "Material Type",
               "description": "Material type used to make the pipe.",
               "example": [
                  "C-Mn"
               ],
               "enum": [
                  "C-Mn"
               ],
               "type": "string"
            },
            "material_density": {
               "title": "Material Density",
               "description": "Material :ref:`Density`",
               "example": {
                  "val": 7850,
                  "unit": "kg.m^-3"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Density"
                  }
               ]
            },
            "material_steel_grade_dnv": {
               "title": "Steel Grade",
               "description": "Main steel material grade, as per DNV acronym.",
               "example": [
                  "DNV450"
               ],
               "enum": [
                  "DNV245",
                  "DNV290",
                  "DNV320",
                  "DNV360",
                  "DNV390",
                  "DNV415",
                  "DNV450",
                  "DNV485",
                  "DNV555"
               ],
               "type": "string"
            },
            "material_steel_grade_api5L": {
               "title": "Steel Grade",
               "description": "Main steel material grade, as per API5L acronym.",
               "example": [
                  "X65"
               ],
               "enum": [
                  "X52",
                  "X56",
                  "X60",
                  "X65",
                  "X70",
                  "X80"
               ],
               "type": "string"
            },
            "young_modulus": {
               "title": "Young's Modulus",
               "description": ":ref:`Stress` for material Young's modulus, at ambiant temperature.",
               "example": {
                  "val": 210,
                  "unit": "GPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "poisson_ratio": {
               "title": "Poisson Ratio",
               "description": "Material Poisson :ref:`UnitLess` ratio.",
               "example": {
                  "val": 0.3,
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "material_thermal_expansion_coef": {
               "title": "Thermal Expansion Coefficient",
               "description": ":ref:`Thermal_Expansion_Coef` ratio for material thermal expansion coefficient",
               "example": {
                  "val": 1.17e-05,
                  "unit": "C^-1"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Thermal_Expansion_Coef"
                  }
               ]
            },
            "material_specific_heat_capacity": {
               "title": "Material Specific Heat Capacity",
               "description": ":ref:`Specific_Heat_Capacity` measure of the material.",
               "example": [
                  {
                     "val": 420,
                     "unit": "J.K^-1.kg^-1"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Specific_Heat_Capacity"
                  }
               ]
            },
            "material_thermal_conductivity": {
               "title": "Material Thermal Conductivity",
               "description": ":ref:`Thermal_Conductivity` for the material.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Thermal_Conductivity"
                  }
               ]
            },
            "material_thermal_emissivity": {
               "title": "Material Thermal Emissivity",
               "description": ":ref:`UnitLess` ratio for thermal emissivity",
               "example": {
                  "val": 0.9,
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "yie_str_min": {
               "title": "Yield Strength Minimum, (SMYS).",
               "description": ":ref:`Stress` for Minimum Yield Strength (SMYS).",
               "example": {
                  "val": 450,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "yie_str_max": {
               "title": "Yield Strength Maximum ",
               "description": ":ref:`Stress` for Yield Strength Maximum.",
               "example": {
                  "val": 535,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "yie_str_range": {
               "title": "Yield Strength Range ",
               "description": ":ref:`Stress` for Yield Strength Range.",
               "example": {
                  "val": 100,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "ten_str_min": {
               "title": "SMTS",
               "description": ":ref:`Stress` for Minimum Tensile Strength (SMTS).",
               "example": {
                  "val": 760,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "ten_str_max": {
               "title": "Tensile Strength Maximum ",
               "description": ":ref:`Stress` for Tensile Strength Maximum.",
               "example": {
                  "val": 570,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "yie_to_ten_max": {
               "title": "Y/T, maximum, specified",
               "description": "Maximum Yield to tensile :ref:`UnitLess` ratio, (Strain Hardening).",
               "example": [
                  {
                     "val": 0.93,
                     "unit": ""
                  },
                  {
                     "val": 93,
                     "unit": "%"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "uni_elon": {
               "title": "Uniform Elongation",
               "description": "Uniform Elongation.",
               "example": {
                  "val": 17,
                  "unit": "%"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "elon_at_yie": {
               "title": "Elongation at yield",
               "description": "Elongation at yield.",
               "example": {
                  "val": 10,
                  "unit": "%"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "manuf_process": {
               "title": "Process of Manufacture",
               "description": "Process of manufacturing used to make the pipe.",
               "example": "SMLS",
               "enum": [
                  "EBW",
                  "LBW",
                  "HFI",
                  "MWPHFW",
                  "SAW",
                  "SAWL",
                  "SAWH",
                  "SMLS"
               ],
               "type": "string"
            },
            "dnv_alpha_fab": {
               "title": "DNV Alpha Fab",
               "description": "Maximum Fabrication Factor :ref:`UnitLess` ratio, as per DNV code.",
               "example": [
                  {
                     "val": 0.85,
                     "unit": ""
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "delivery_condition_api5L": {
               "title": "Delivery Condition (API 5L)",
               "description": "Delivery condition for the pipe.",
               "example": [
                  "M",
                  "Q"
               ],
               "enum": [
                  "R",
                  "N",
                  "Q",
                  "M"
               ],
               "type": "string"
            },
            "supp_req_api5L": {
               "title": "Supplementary Requirement, API5L",
               "description": "Supplementary requirements from the purchaser, as per API5L.",
               "example": [
                  "['O', 'S']",
                  "['O']"
               ],
               "type": "array",
               "items": {
                  "enum": [
                     "S",
                     "O",
                     "N"
                  ],
                  "type": "string"
               }
            },
            "supp_req_dnv": {
               "title": "Supplementary Requirement, DNV",
               "description": "Supplementary requirements from the purchaser, as per DNV.",
               "example": [
                  "['S', 'P']",
                  "['U']"
               ],
               "type": "array",
               "items": {
                  "enum": [
                     "D",
                     "F",
                     "P",
                     "S",
                     "U"
                  ],
                  "type": "string"
               }
            },
            "mill_test_pressure": {
               "title": "Mill Hydrotest Pressure",
               "description": ":ref:`Pressure` at which the pipe is to be hydrotested at the mill.",
               "example": {
                  "val": 405,
                  "unit": "bar"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Pressure"
                  }
               ]
            },
            "marking": {
               "title": "Marking",
               "description": "Marking for the pipe.",
               "maxLength": 256,
               "example": [
                  "DNVGL SMLS 450 SP 323.9 x 14.3",
                  "DNVGL MWPL 415 D L - UNS S31600 (B) UNS N06625 (E)",
                  "X  API  Spec  5L 508  12,7  L360M  PSL  2  SAWL  Y  Z  TESTED 17,5"
               ],
               "type": "string"
            }
         },
         "additionalProperties": false
      },
      "Angle": {
         "title": "Angle",
         "description": ":ref:`Measure` of an angle.",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "deg",
                  "rad"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "CoatingLayerSpec": {
         "title": "CoatingLayerSpec",
         "description": "`CoatingLayerSpec` object stores data related to one layer of coating.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "coating_layer_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "layer_nb": {
               "title": "Layer Location",
               "description": "Order for the layer. `1` corresponds to the first layer on top of the bare steel, and so on. `-1` works with the same principle for coating applied to the inner surface of the tube. CRA Pipes not included in 'CoatingLayerSpec'.",
               "examples": [
                  -1,
                  1,
                  2
               ],
               "type": "integer"
            },
            "material_type": {
               "title": "Material Type",
               "description": "Material type used to make the coating layer.",
               "maxLength": 256,
               "examples": [
                  "FBE",
                  "Adhesive",
                  "PP"
               ],
               "type": "string"
            },
            "material_density": {
               "title": "Material Density",
               "description": "Material :ref:`Density`",
               "example": {
                  "val": 7850,
                  "unit": "kg.m^-3"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Density"
                  }
               ]
            },
            "material_specific_heat_capacity": {
               "title": "Material Specific Heat Capacity",
               "description": ":ref:`Specific_Heat_Capacity` measure of the material.",
               "example": [
                  {
                     "val": 420,
                     "unit": "J.K^-1.kg^-1"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Specific_Heat_Capacity"
                  }
               ]
            },
            "material_thermal_conductivity": {
               "title": "Material Thermal Conductivity",
               "description": ":ref:`Thermal_Conductivity` for the material.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Thermal_Conductivity"
                  }
               ]
            },
            "material_thermal_emissivity": {
               "title": "Material Thermal Emissivity",
               "description": ":ref:`UnitLess` ratio for thermal emissivity",
               "example": {
                  "val": 0.9,
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "young_modulus": {
               "title": "Young's Modulus",
               "description": ":ref:`Stress` for material Young's modulus, at ambiant temperature.",
               "example": {
                  "val": 210,
                  "unit": "GPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "poisson_ratio": {
               "title": "Poisson Ratio",
               "description": "Material Poisson :ref:`UnitLess` ratio.",
               "example": {
                  "val": 0.3,
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "material_thermal_expansion_coef": {
               "title": "Thermal Expansion Coefficient",
               "description": ":ref:`Thermal_Expansion_Coef` ratio for material thermal expansion coefficient",
               "example": {
                  "val": 1.17e-05,
                  "unit": "C^-1"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Thermal_Expansion_Coef"
                  }
               ]
            },
            "yie_str_min": {
               "title": "Yield Strength Minimum, (SMYS).",
               "description": ":ref:`Stress` for Minimum Yield Strength (SMYS).",
               "example": {
                  "val": 450,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "yie_str_max": {
               "title": "Yield Strength Maximum ",
               "description": ":ref:`Stress` for Yield Strength Maximum.",
               "example": {
                  "val": 535,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "ten_str_min": {
               "title": "SMTS",
               "description": ":ref:`Stress` for Minimum Tensile Strength (SMTS).",
               "example": {
                  "val": 760,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "ten_str_max": {
               "title": "Tensile Strength Maximum ",
               "description": ":ref:`Stress` for Tensile Strength Maximum.",
               "example": {
                  "val": 570,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "yie_to_ten_max": {
               "title": "Y/T, maximum, specified",
               "description": "Maximum Yield to tensile :ref:`UnitLess` ratio, (Strain Hardening).",
               "example": [
                  {
                     "val": 0.93,
                     "unit": ""
                  },
                  {
                     "val": 93,
                     "unit": "%"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "uni_elon": {
               "title": "Uniform Elongation",
               "description": "Uniform Elongation.",
               "example": {
                  "val": 17,
                  "unit": "%"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "elon_at_yie": {
               "title": "Elongation at yield",
               "description": "Elongation at yield.",
               "example": {
                  "val": 10,
                  "unit": "%"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "thickness_nom": {
               "title": "Layer Thickness, nominal, specified",
               "description": ":ref:`Length` for Thickness of the coating layer, nominal.",
               "examples": [
                  {
                     "val": 3.0,
                     "unit": "mm"
                  },
                  {
                     "val": 0.003,
                     "unit": "m"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_tol_neg": {
               "title": "Layer Thickness Tolerance, negative",
               "description": ":ref:`Length` for Thickness tolerance of the coating layer, negative.",
               "examples": [
                  {
                     "val": -0.3,
                     "unit": "mm"
                  },
                  {
                     "val": -0.0003,
                     "unit": "m"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_tol_pos": {
               "title": "Layer Thickness Tolerance, positive",
               "description": ":ref:`Length` for Thickness tolerance of the coating layer, positive.",
               "examples": [
                  {
                     "val": 0.3,
                     "unit": "mm"
                  },
                  {
                     "val": 0.0003,
                     "unit": "m"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            }
         },
         "additionalProperties": false
      },
      "PipeCoatingSpec": {
         "title": "PipeCoatingSpec",
         "description": "`PipeCoatingSpec` stores data intended to gather the specified properties of :ref:`PipeCoatingSpec` objects.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "pipe_coating_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "system": {
               "title": "Coating System Name",
               "description": "Coating System Name",
               "example": "3LPP",
               "type": "string"
            },
            "thickness_nom": {
               "title": "Overall Coating System Thickness, Nominal",
               "description": ":ref:`Length` for coating system overall thickness, nominal.",
               "example": {
                  "val": 0.0025,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_min": {
               "title": "Overall Coating System Thickness, Minimum",
               "description": ":ref:`Length` for coating system overall thickness, minimum.",
               "example": {
                  "val": 0.0022,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_max": {
               "title": "Overall Coating System Thickness, Maximum",
               "description": ":ref:`Length` for coating system overall thickness, maximum.",
               "example": {
                  "val": 0.0027,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "cut_back_length_nom": {
               "title": "Coating Cut-Back Length, nominal",
               "description": ":ref:`Length` for Coating Cut-Back, nominal.",
               "examples": {
                  "val": 150,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "cut_back_length_max": {
               "title": "Coating Cut-Back Length, maximum",
               "description": ":ref:`Length` for Coating Cut-Back, maximum.",
               "examples": {
                  "val": 170,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "cut_back_length_min": {
               "title": "Coating Cut-Back Length, minimum",
               "description": ":ref:`Length` for Coating Cut-Back, minimum.",
               "examples": {
                  "val": 130,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "chamfer_angle_nom": {
               "title": "Coating Chamfer Angle, nominal",
               "description": ":ref:`Angle` for Coating Chamfer, nominal.",
               "examples": {
                  "val": 40,
                  "unit": "deg"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Angle"
                  }
               ]
            },
            "chamfer_angle_max": {
               "title": "Coating Chamfer Angle, maximum",
               "description": ":ref:`Angle` for Coating Chamfer, maximum.",
               "examples": {
                  "val": 45,
                  "unit": "deg"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Angle"
                  }
               ]
            },
            "chamfer_angle_min": {
               "title": "Coating Chamfer Angle, minimum",
               "description": ":ref:`Angle` for Coating Chamfer, minimum.",
               "examples": {
                  "val": 35,
                  "unit": "deg"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Angle"
                  }
               ]
            },
            "surface_roughness": {
               "title": "Surface Coating Roughness ",
               "description": "Ra Average Surface Roughness.",
               "example": {
                  "val": 0.4,
                  "unit": "microm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "surface_color": {
               "title": "Surface Color",
               "description": "Coating system color.",
               "example": [
                  "Grey"
               ],
               "type": "string"
            },
            "related_bare_pipe_spec": {
               "title": "Relations to BarePipeSpec",
               "description": "Related instances of :ref:`BarePipeSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "records_of_coating_layer_spec": {
               "title": "Records of Coating Layer Specification",
               "description": "Embedded records of specifications for each coating layer, :ref:`CoatingLayerSpec`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/CoatingLayerSpec"
               }
            }
         },
         "additionalProperties": false
      },
      "FieldJointCoatingLayerSpec": {
         "title": "FieldJointCoatingLayerSpec",
         "description": "`FieldJointCoatingLayerSpec` object stores data related to one layer of field joint coating.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "field_joint_coating_layer_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "layer_nb": {
               "title": "Layer Location",
               "description": "Order for the layer. `1` corresponds to the first layer on top of the bare steel, and so on.",
               "examples": [
                  1,
                  2
               ],
               "type": "integer"
            },
            "cut_back_length_nominal": {
               "title": "Cut back length, nominal",
               "description": ":ref:`Length` for nominal cut-back of the field joint coating layer.",
               "example": {
                  "val": 200,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "cut_back_length_min": {
               "title": "Cut back length, minimum",
               "description": ":ref:`Length` for minimum cut-back of the field joint coating layer.",
               "example": {
                  "val": 180,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "cut_back_length_max": {
               "title": "Cut back length, maximum",
               "description": ":ref:`Length` for maximum cut-back of the field joint coating layer.",
               "example": {
                  "val": 220,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "material_type": {
               "title": "Material Type",
               "description": "Material type used to make the field joint coating layer.",
               "maxLength": 256,
               "examples": [
                  "FBE",
                  "PVC",
                  "PP"
               ],
               "type": "string"
            },
            "material_density": {
               "title": "Material Density",
               "description": "Material :ref:`Density`",
               "example": {
                  "val": 7850,
                  "unit": "kg.m^-3"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Density"
                  }
               ]
            },
            "material_specific_heat_capacity": {
               "title": "Material Specific Heat Capacity",
               "description": ":ref:`Specific_Heat_Capacity` measure of the material.",
               "example": [
                  {
                     "val": 420,
                     "unit": "J.K^-1.kg^-1"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Specific_Heat_Capacity"
                  }
               ]
            },
            "material_thermal_conductivity": {
               "title": "Material Thermal Conductivity",
               "description": ":ref:`Thermal_Conductivity` for the material.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Thermal_Conductivity"
                  }
               ]
            },
            "material_thermal_emissivity": {
               "title": "Material Thermal Emissivity",
               "description": ":ref:`UnitLess` ratio for thermal emissivity",
               "example": {
                  "val": 0.9,
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "young_modulus": {
               "title": "Young's Modulus",
               "description": ":ref:`Stress` for material Young's modulus, at ambiant temperature.",
               "example": {
                  "val": 210,
                  "unit": "GPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "poisson_ratio": {
               "title": "Poisson Ratio",
               "description": "Material Poisson :ref:`UnitLess` ratio.",
               "example": {
                  "val": 0.3,
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "material_thermal_expansion_coef": {
               "title": "Thermal Expansion Coefficient",
               "description": ":ref:`Thermal_Expansion_Coef` ratio for material thermal expansion coefficient",
               "example": {
                  "val": 1.17e-05,
                  "unit": "C^-1"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Thermal_Expansion_Coef"
                  }
               ]
            },
            "yie_str_min": {
               "title": "Yield Strength Minimum, (SMYS).",
               "description": ":ref:`Stress` for Minimum Yield Strength (SMYS).",
               "example": {
                  "val": 450,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "yie_str_max": {
               "title": "Yield Strength Maximum ",
               "description": ":ref:`Stress` for Yield Strength Maximum.",
               "example": {
                  "val": 535,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "ten_str_min": {
               "title": "SMTS",
               "description": ":ref:`Stress` for Minimum Tensile Strength (SMTS).",
               "example": {
                  "val": 760,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "ten_str_max": {
               "title": "Tensile Strength Maximum ",
               "description": ":ref:`Stress` for Tensile Strength Maximum.",
               "example": {
                  "val": 570,
                  "unit": "MPa"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Stress"
                  }
               ]
            },
            "yie_to_ten_max": {
               "title": "Y/T, maximum, specified",
               "description": "Maximum Yield to tensile :ref:`UnitLess` ratio, (Strain Hardening).",
               "example": [
                  {
                     "val": 0.93,
                     "unit": ""
                  },
                  {
                     "val": 93,
                     "unit": "%"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "uni_elon": {
               "title": "Uniform Elongation",
               "description": "Uniform Elongation.",
               "example": {
                  "val": 17,
                  "unit": "%"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "elon_at_yie": {
               "title": "Elongation at yield",
               "description": "Elongation at yield.",
               "example": {
                  "val": 10,
                  "unit": "%"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "thickness_nom": {
               "title": "Layer Thickness, nominal",
               "description": ":ref:`Length` for Thickness of the field joint coating layer, nominal.",
               "examples": [
                  {
                     "val": 3.0,
                     "unit": "mm"
                  },
                  {
                     "val": 0.003,
                     "unit": "m"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_tol_neg": {
               "title": "Layer Thickness Tolerance, negative",
               "description": ":ref:`Length` for Thickness tolerance of the field joint coating layer, negative.",
               "examples": [
                  {
                     "val": -0.3,
                     "unit": "mm"
                  },
                  {
                     "val": -0.0003,
                     "unit": "m"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_tol_pos": {
               "title": "Layer Thickness Tolerance, positive",
               "description": ":ref:`Length` for Thickness tolerance of the field joint coating layer, positive.",
               "examples": [
                  {
                     "val": 0.3,
                     "unit": "mm"
                  },
                  {
                     "val": 0.0003,
                     "unit": "m"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            }
         }
      },
      "FieldJointCoatingSpec": {
         "title": "FieldJointCoatingSpec",
         "description": "`FieldJointCoatingSpec` stores data intended to gather the specified properties of `FieldJointCoating` objects.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "field_joint_coating_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "design_temp": {
               "title": "Design temperature",
               "description": ":ref:`Temperature` for Design",
               "example": {
                  "val": 80,
                  "unit": "C"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Temperature"
                  }
               ]
            },
            "overlap": {
               "title": "Length of overlap",
               "description": ":ref:`Length` of the field joint coating overlaping over parent coating",
               "example": {
                  "val": 5,
                  "unit": "cm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "related_bare_pipe_spec": {
               "title": "Relations to BarePipeSpec",
               "description": "Related instances of :ref:`BarePipeSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "42e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_pipe_coating_spec": {
               "title": "Relations to PipeCoatingSpec",
               "description": "Related instances of :ref:`PipeCoatingSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "records_of_field_joint_coating_layer_spec": {
               "title": "Records of Field Joint Coating Layer Specification",
               "description": "Embedded records of specifications for each coating layer, :ref:`FieldJointCoatingLayerSpec`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/FieldJointCoatingLayerSpec"
               }
            }
         },
         "additionalProperties": false
      },
      "ElectricCurrent": {
         "title": "ElectricCurrent",
         "description": ":ref:`Measure` of the intensity of an electric current.",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "A"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "Volt": {
         "title": "Volt",
         "description": ":ref:`Measure` of a current tension",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "V"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "HeatInput": {
         "title": "HeatInput",
         "description": ":ref:`Measure` of Heat Input",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "J/in",
                  "J/mm",
                  "kJ/in",
                  "kJ/mm"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "WeldPassSpec": {
         "title": "WeldPassSpec",
         "description": "`WeldPassSpec` object stores data related to one pass of layer's weld.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "weld_pass_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "pass_nb": {
               "title": "Pass number",
               "description": "The pass. `1` corresponds to the first pass on top parent layer, and so on.",
               "examples": [
                  1,
                  2
               ],
               "type": "integer"
            },
            "process": {
               "title": "welding process name",
               "description": "Type of welding process.",
               "examples": "SMAW",
               "enum": [
                  "OFW",
                  "SMAW",
                  "GTAW",
                  "GMAW",
                  "PAW",
                  "FCAW",
                  "SAW",
                  "ESW",
                  "EGW",
                  "BRAZING",
                  "THERMAL SPRAYING"
               ],
               "type": "string"
            },
            "filler_metal_aws": {
               "title": "Americal Welding Society classification label of filler metal",
               "description": "Americal Welding Society classification label of filler metal.",
               "examples": "A5.9",
               "enum": [
                  "A5.1",
                  "A5.2",
                  "A5.3",
                  "A5.4",
                  "A5.5",
                  "A5.6",
                  "A5.7",
                  "A5.8",
                  "A5.9",
                  "A5.10",
                  "A5.11",
                  "A5.12",
                  "A5.14",
                  "A5.15",
                  "A5.16",
                  "A5.17",
                  "A5.18",
                  "A5.19",
                  "A5.20",
                  "A5.21",
                  "A5.22",
                  "A5.23",
                  "A5.24",
                  "A5.25",
                  "A5.26",
                  "A5.28",
                  "A5.29",
                  "A5.30",
                  "A5.31",
                  "A5.32",
                  "A5.36",
                  "C2.25"
               ],
               "type": "string"
            },
            "filler_metal_size": {
               "title": "Filler metal size",
               "description": ":ref:`Length` measure of filler metal diameter.",
               "examples": {
                  "val": 1,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "polarity": {
               "title": "Polarity",
               "description": "Polarity of electrical current flow used to weld.",
               "examples": "AC",
               "enum": [
                  "AC",
                  "DCEP",
                  "DCEN"
               ],
               "type": "string"
            },
            "amps_min": {
               "title": "Minimum amperage for welding",
               "description": ":ref:`ElectricCurrent` measure of minimum amperage used to weld.",
               "examples": {
                  "val": "75",
                  "unit": "amp"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/ElectricCurrent"
                  }
               ]
            },
            "amps_max": {
               "title": "Maximum amperage",
               "description": ":ref:`ElectricCurrent` measure of maximum amperage used to weld.",
               "examples": {
                  "val": "125",
                  "unit": "A"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/ElectricCurrent"
                  }
               ]
            },
            "volt_min": {
               "title": "Minimum voltage ",
               "description": ":ref:`Volt` measure of minimum voltage used to weld.",
               "examples": {
                  "val": "23",
                  "unit": "V"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Volt"
                  }
               ]
            },
            "volt_max": {
               "title": "Maximum voltage",
               "description": ":ref:`Volt` measure of maximum voltage used to weld.",
               "examples": {
                  "val": "25",
                  "unit": "V"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Volt"
                  }
               ]
            },
            "travel_speed_min": {
               "title": "Minimum travel speed",
               "description": ":ref:`Speed` measure of minimum travel speed used to weld.",
               "examples": {
                  "val": "14",
                  "unit": "ipm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Speed"
                  }
               ]
            },
            "travel_speed_max": {
               "title": "Maximum travel speed",
               "description": ":ref:`Speed` measure of maximum travel speed used to weld.",
               "examples": {
                  "val": "15",
                  "unit": "ipm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Speed"
                  }
               ]
            },
            "heat_input_min": {
               "title": "Minimum heat input",
               "description": ":ref:`HeatInput` measure of minimum heat input used to weld.",
               "examples": {
                  "val": "10",
                  "unit": "kJ/in"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/HeatInput"
                  }
               ]
            },
            "heat_input_max": {
               "title": "Maximum heat input",
               "description": ":ref:`HeatInput` measure of maximum heat input used to weld.",
               "examples": {
                  "val": "20",
                  "unit": "kJ/in"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/HeatInput"
                  }
               ]
            },
            "interpass_min": {
               "title": "Minimum Interpass Temperature",
               "description": "Minimum :ref:`Temperature` measure of interpass.",
               "examples": {
                  "val": "70",
                  "unit": "C"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Temperature"
                  }
               ]
            },
            "interpass_max": {
               "title": "Maximum Interpass Temperature",
               "description": "Maximum :ref:`Temperature` measure of interpass.",
               "examples": {
                  "val": "200",
                  "unit": "C"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Temperature"
                  }
               ]
            },
            "position": {
               "title": "Type of Welding Position",
               "description": "Type of Welding Position, 1G, 2G, 5G, 6G.",
               "examples": "5G",
               "enum": [
                  "1G",
                  "2G",
                  "5G",
                  "6G"
               ],
               "type": "string"
            },
            "gas": {
               "title": "Type of Welding Gas ",
               "description": "Type of Gas used to weld.",
               "examples": "Argon ",
               "enum": [
                  "Ar",
                  "CO2",
                  "O2",
                  "He",
                  "N",
                  "H"
               ],
               "type": "string"
            },
            "gas_flow_rate": {
               "title": "Welding Gas Flow Rate ",
               "description": "Value of gas flow rate.",
               "examples": {
                  "val": 1,
                  "unit": "'mm.hr^-1'"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Speed"
                  }
               ]
            },
            "gas_cup_size": {
               "title": "Gas cup size ",
               "description": ":ref:`Length` measure of gas cup size.",
               "examples": {
                  "val": 4,
                  "unit": "'mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "tungsten_type": {
               "title": "Type of tungsten electrodes ",
               "description": "Type of tungsten electrodes. ",
               "examples": "EWP",
               "enum": [
                  "EWP",
                  "EWTh-1",
                  "EWTh-2",
                  "EWZr",
                  "EWCe-2",
                  "EWLa-1"
               ],
               "type": "string"
            },
            "tungsten_size": {
               "title": "Tunsgten Size ",
               "description": ":ref:`Length` measure of tungsten electrode size.",
               "examples": {
                  "val": 175,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "backing": {
               "title": "Backing used ",
               "description": "True or False backing used. ",
               "examples": true,
               "type": "boolean"
            },
            "backgouging": {
               "title": "Backgouging process",
               "description": "True or False backgouging process used.",
               "examples": false,
               "type": "boolean"
            }
         }
      },
      "WeldLayerSpec": {
         "title": "WeldLayerSpec",
         "description": "`WeldLayerSpec` object stores data related to one layer of weld.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "weld_layer_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "layer_name": {
               "title": "Type of layer name",
               "description": " Name of Layer, root, hot, fill or cap",
               "examples": "root",
               "enum": [
                  "root",
                  "hot",
                  "fill",
                  "cap"
               ],
               "type": "string"
            },
            "layer_nb": {
               "title": "Layer Location",
               "description": "Order for the layer. `1` corresponds to the first layer at root",
               "examples": [
                  1,
                  2
               ],
               "type": "integer"
            },
            "records_of_weld_pass_spec": {
               "title": "Records of Weld Pass Specification",
               "description": "Embedded records of specifications for each weld pass, :ref:`WeldPassSpec`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/WeldPassSpec"
               }
            }
         }
      },
      "WeldSpec": {
         "title": "WeldSpec",
         "description": "`WeldSpec` stores data intended to gather the specified properties of `Weld` objects.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "weld_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "environment_cap": {
               "title": "Cap Environment",
               "description": "Environmental condition for cap.",
               "example": "seawater with cathodic protection",
               "enum": [
                  "air",
                  "seawater with cathodic protection",
                  "seawater with free corrosion"
               ],
               "type": "string"
            },
            "environment_root": {
               "title": "Root Environment",
               "description": "Environmental condition for root.",
               "example": "air",
               "enum": [
                  "air",
                  "seawater with cathodic protection",
                  "seawater with free corrosion"
               ],
               "type": "string"
            },
            "fatigue_acceptance_criteria": {
               "title": "Fatigue Acceptance Criteria",
               "description": ":ref:`Unitless` measure of maximum allowable total accumulated damage ratio.",
               "example": {
                  "val": "0.8",
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "groove_angle": {
               "title": "groove angle",
               "description": ":ref:`Angle` measure of groove.",
               "example": {
                  "val": "0.8",
                  "unit": "deg"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Angle"
                  }
               ]
            },
            "knock_down_factor_cap": {
               "title": "Knock Down Factor Cap",
               "description": ":ref:`Unitless` measure of knock-down factor.",
               "example": {
                  "val": "10",
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "knock_down_factor_root": {
               "title": "Knock Down Factor Root",
               "description": ":ref:`Unitless` measure of knock-down factor.",
               "example": {
                  "val": "10",
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "l_root": {
               "title": "Length measure of root gap ",
               "description": ":ref:`Length` measure root gap.",
               "example": {
                  "val": "1",
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "l_cap": {
               "title": "Length measure of root gap ",
               "description": ":ref:`Length` measure of cap length/opening width.",
               "example": {
                  "val": "3.5",
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "max_hi_lo_cap": {
               "title": "High/low on cap side",
               "description": ":ref:`Length` measure of maximum High/low on cap side.",
               "example": {
                  "val": "1.3",
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "max_hi_lo_root": {
               "title": "High/low on root side",
               "description": ":ref:`Length` measure of maximum High/low on root side.",
               "example": {
                  "val": "1.3",
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "root_face": {
               "title": "Length measure of thickness root face",
               "description": ":ref:`Length` measure of thickness root face.",
               "example": {
                  "val": "0.3",
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "sn_curve_cap": {
               "title": "S-N Curve for cap",
               "description": "S-N Curve to be used for cap.",
               "example": "C",
               "enum": [
                  "B1",
                  "B2",
                  "C",
                  "C1",
                  "C2",
                  "D",
                  "E",
                  "F",
                  "F1",
                  "F3",
                  "G",
                  "W1",
                  "W2",
                  "W3"
               ],
               "type": "string"
            },
            "sn_curve_root": {
               "title": "S-N Curve for cap",
               "description": "S-N Curve to be used for cap.",
               "example": "C",
               "enum": [
                  "B1",
                  "B2",
                  "C",
                  "C1",
                  "C2",
                  "D",
                  "E",
                  "F",
                  "F1",
                  "F3",
                  "G",
                  "W1",
                  "W2",
                  "W3"
               ],
               "type": "string"
            },
            "stress_concentration_factor_cap": {
               "title": "Stress Concentration Factor Cap",
               "description": ":ref:`Unitless` measure of stress concentration factor.",
               "example": {
                  "val": "1.175",
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "stress_concentration_factor_root": {
               "title": "Stress Concentration Factor Root",
               "description": ":ref:`Unitless` measure of stress concentration factor.",
               "example": {
                  "val": "1.175",
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "total_elongation_max_strain": {
               "title": "Total Elongation at Maximum Strain",
               "description": ":ref:`Unitless` measure of total elongation at maximum strain.",
               "example": {
                  "val": "1.175",
                  "unit": "%"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "records_of_weld_layer_spec": {
               "title": "Records of Weld Layer Specification",
               "description": "Embedded records of specifications for each weld layer, :ref:`WeldLayerSpec`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/WeldLayerSpec"
               }
            },
            "related_connected_component_1_spec": {
               "title": "Relation to first component",
               "description": "Relation to specification of first component to be connected by the :ref:`Weld`.",
               "maxItems": 1,
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_connected_component_2_spec": {
               "title": "Relation to second component",
               "description": "Relation to specification of second component to be connected by the :ref:`Weld`.",
               "maxItems": 1,
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "OHTC": {
         "title": "OHTC",
         "description": ":ref:`Measure` of Overall Heat Transfer Coefficient (u-value).",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "W.m^-2.K^-1"
               ],
               "type": "string"
            },
            "ref": {
               "title": "OHTC Diameter Reference",
               "description": "The reference diameter used to specify the OHTC.",
               "default": "ID",
               "examples": [
                  "ID",
                  "OD"
               ],
               "enum": [
                  "ID",
                  "OD"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "PipelineSpec": {
         "title": "PipelineSpec",
         "description": "Pipeline Spec object stores data related to one pipeline.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "pipeline_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "battery_limits": {
               "title": "Battery Limit",
               "description": "Description of the battery limits considered in the definition of the pipeline.",
               "maxLength": 1000,
               "example": "from PLET-18 to ILT-01",
               "type": "string"
            },
            "design_code": {
               "title": "Design Code",
               "description": "The main design code used for this pipeline.",
               "example": "DNV",
               "enum": [
                  "API",
                  "DNV",
                  "ISO"
               ],
               "type": "string"
            },
            "design_life": {
               "title": "Design Life",
               "description": "The design life :ref:`Duration`.",
               "examples": {
                  "val": 15.0,
                  "uom": "y"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Duration"
                  }
               ]
            },
            "system": {
               "title": "System",
               "description": "Related functional system.",
               "example": "gas export",
               "enum": [
                  "gas export",
                  "gas injection",
                  "gas lift",
                  "oil export",
                  "offloading",
                  "production",
                  "water alternate gas (WAG)",
                  "water injection"
               ],
               "type": "string"
            },
            "service": {
               "title": "Service",
               "description": "Functional service rating.",
               "examples": [
                  "sweet",
                  "sour"
               ],
               "enum": [
                  "sweet",
                  "sour"
               ],
               "type": "string"
            },
            "tag": {
               "title": "Tag",
               "description": "Component tag for the pipeline.",
               "maxLength": 256,
               "example": "PR16",
               "type": "string"
            },
            "ohtc_max_specified": {
               "title": "Specified Max OHTC",
               "description": "Specified maximum Overall Heat Transfer Coefficient (:ref:`OHTC`).",
               "example": {
                  "val": 0.9,
                  "uom": "W.m^-2.K^-1",
                  "ref": "ID"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/OHTC"
                  }
               ]
            },
            "min_no_touch_time": {
               "title": "Minimum No Touch Time",
               "description": "Minimum :ref:`Duration` during which the pipeline can be left without hydrate mitigation.",
               "example": {
                  "val": 4,
                  "uom": "hr"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Duration"
                  }
               ]
            },
            "min_cool_down_time": {
               "title": "Minimum Cool Down Time",
               "description": "Minimum :ref:`Duration` during which the pipeline can be left to cooldown.",
               "example": {
                  "val": 4,
                  "uom": "hr"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Duration"
                  }
               ]
            },
            "max_water_condensation_rate": {
               "title": "Maximum Water Condensate Rate",
               "description": "WIP : description and example needed.",
               "example": {
                  "val": 0.9,
                  "uom": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "related_density_set": {
               "title": "Relations to Density Set",
               "description": "Related instances of :ref:`DensitySet`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_fluid_prop": {
               "title": "Relations to Fluid Properties",
               "description": "Related instances of :ref:`FluidProp`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_operating_cycle": {
               "title": "Relations to Operating Cycle",
               "description": "Related instances of :ref:`OperatingCycle`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_pressure_set": {
               "title": "Relations to Pressure Set",
               "description": "Related instances of :ref:`PressureSet`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_temperature_set": {
               "title": "Relations to Temperature Set",
               "description": "Related instances of :ref:`TemperatureSet`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_solid_load": {
               "title": "Relations to Solid Loads",
               "description": "Related instances of :ref:`SolidLoad`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_route": {
               "title": "Relations to Routes",
               "description": "Related instances of :ref:`Route`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_section_single_pipe_spec": {
               "title": "Relations to Section Single Pipe Spec",
               "description": "Related instances of :ref:`SectionSinglePipeSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_field_joint_coating_spec": {
               "title": "Relations to Field Joint Coating Spec",
               "description": "Related instances of :ref:`FieldJointCoatingSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_weld_spec": {
               "title": "Relations to Weld Spec",
               "description": "Related instances of :ref:`WeldSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "SectionSinglePipeSpec": {
         "title": "SectionSinglePipeSpec",
         "description": "`SectionSinglePipeSpec` stores data intended to gather the specified properties of a joint assembly of single pipe :ref:`Pipeline`, with repetitive cross-sectional properties & pattern.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "section_single_pipe_spec",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "length": {
               "title": "Length",
               "description": ":ref:`Length` of the section",
               "example": {
                  "val": 1500,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "corrosion_allowance": {
               "title": "Corrosion Allowance",
               "description": "The sacrificial design corrosion allowance for the :ref:`SectionSinglePipeSpec`",
               "example": {
                  "val": 3.0,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "location_class_dnv": {
               "title": "Location Class (DNV)",
               "description": "Location class, as per DNV acronym.",
               "example": 1,
               "enum": [
                  1,
                  2
               ],
               "type": "integer"
            },
            "related_bare_pipe_spec": {
               "title": "Relation to bare pipe specification",
               "description": "Related instance of :ref:`BarePipeSpec`, provided as value of :ref:`pdef_id`.",
               "example": "42e682a2-e4e5-497a-b252-ea4b4ea54bc0",
               "type": "string"
            },
            "related_pipe_coating_spec": {
               "title": "Relation to pipe coating specification",
               "description": "Related instance of :ref:`PipeCoatingSpec`, provided as value of :ref:`pdef_id`.",
               "example": "77e682a2-e4e5-497a-b252-ea4b4ea54bc0",
               "type": "string"
            },
            "related_field_joint_coating_spec": {
               "title": "Relation to field joint coating specification",
               "description": "Related instance of :ref:`FieldJointCoatingSPec`, provided as value of :ref:`pdef_id`.",
               "examples": "39e682a2-e4e5-497a-b252-ea4b4ea54bc0",
               "type": "string"
            },
            "related_weld_spec": {
               "title": "WeldSpec relations",
               "description": "Related instance of :ref:`WeldSpec`, provided as value of :ref:`pdef_id`.",
               "examples": "37e682a2-e4e5-457a-b252-ea4b4ea54bc0",
               "type": "string"
            }
         },
         "additionalProperties": false
      },
      "PipeCoatingPQT": {
         "title": "PipeCoatingPQT",
         "description": "Gathers the description of a :ref:`PipeCoatingPQT` Production Qualification Test (PQT).",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "pipe_coating_pqt",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "related_pipe_coating_spec": {
               "title": "Relations to Pipe Coating Specifications",
               "description": "Related instances of :ref:`PipeCoatingSpec`, provided as array of :ref:`pdef_id`.",
               "examples": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "FieldJointCoatingPQT": {
         "title": "FieldJointCoatingPQT",
         "description": "Gathers the description of a :ref:`FieldJointCoating` Production Qualification Test (PQT).",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "field_joint_coating_pqt",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "related_field_joint_coating_spec": {
               "title": "Relations to Field Joint Coating Specifications",
               "description": "Related instances of :ref:`FieldJointCoatingSpec`, provided as array of :ref:`pdef_id`.",
               "examples": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "WeldPQT": {
         "title": "WeldPQT",
         "description": "WeldPQT defines a :ref:`Weld` procedure qualification test (PQT).",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "weld_pqt",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "related_weld_spec": {
               "title": "Relation to :ref:`WeldSpec`",
               "description": "Related instances of :ref:`WeldSpec`, provided as array of :ref:`pdef_id`.",
               "examples": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "WeldNDTPQT": {
         "title": "WeldNDTPQT",
         "description": "Parameters defining a :ref:`WeldNDT` project qualification test (PQT).",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "weld_ndt_pqt",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "method": {
               "title": "NDT Method",
               "description": "Method used for non detructive testing.",
               "example": "MPI",
               "enum": [
                  "VT",
                  "DPI",
                  "MPI",
                  "MUT",
                  "RT",
                  "RTR",
                  "AUT"
               ],
               "type": "string"
            }
         },
         "additionalProperties": false
      },
      "Anode": {
         "title": "Anode",
         "description": "Parameters defining an Anode, in the context of the actual physical object.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "anode",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "part_number": {
               "title": "Part Number",
               "description": "Object :ref:`part_number`, ie the manufacturer or purchaser part design number.",
               "maxLength": 256,
               "example": "100-440-0.750-3434-A",
               "type": "string"
            },
            "serial_number": {
               "title": "Part Number",
               "description": "Object :ref:`serial_number`, ie the manufacturer or purchaser item serial number.",
               "maxLength": 256,
               "example": "P/N 12345",
               "type": "string"
            },
            "heat_ref": {
               "title": "Heat Reference",
               "description": "Reference of the heat used to make the anode.",
               "example": "4db9b261-e14f-40f5-8176-aa56593f6073",
               "type": "string"
            },
            "net_mass": {
               "title": "Net Mass",
               "description": "Net :ref:`Mass` of the anode.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Mass"
                  }
               ]
            },
            "gross_mass": {
               "title": "Gross Mass",
               "description": "Gross :ref:`Mass` of the anode.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Mass"
                  }
               ]
            },
            "length": {
               "title": "Length",
               "description": ":ref:`Length` of the anode.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "related_anode_spec": {
               "title": "Relations to anode specification",
               "description": "Related instances of :ref:`AnodeSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "PipeDamage": {
         "title": "PipeDamage",
         "description": "Gathers the records of damage observed and reported on a :ref:`BarePipe` instance. \n\n`PipeDamage` instances are stored in the `pipe_damage` member of :ref:`BarePipe`.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "pipe_damage",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "descr": {
               "title": "Description",
               "description": "Descriptive text for the Pipe Damage.",
               "maxLength": 1000,
               "type": "string"
            },
            "type": {
               "title": "Type of Damage",
               "description": "Descriptive text for the Pipe Damage.",
               "maxLength": 256,
               "type": "string"
            },
            "raised_date_time": {
               "title": "Damage Detection Date and Time",
               "description": "Date and time when the damage was raised.",
               "example": "2032-04-23T10:20:30.400+02:30",
               "type": "string",
               "format": "date-time"
            },
            "resolution": {
               "title": "Resolution",
               "description": "Descriptive text for the resolution.",
               "maxLength": 256,
               "type": "string"
            },
            "resolution_date_time": {
               "title": "Damage resolution Date and Time",
               "description": "Date and time when the damage was resolved.",
               "example": "2032-04-23T10:20:30.400+02:30",
               "type": "string",
               "format": "date-time"
            }
         },
         "additionalProperties": false
      },
      "BarePipe": {
         "title": "BarePipe",
         "description": "`BarePipe` object stores data related to one bare linepipe, ie more or less a 12m long metallic tube coming out of the pipemill.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "bare_pipe",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "part_number": {
               "title": "Part Number",
               "description": "Object :ref:`part_number`, ie the manufacturer or purchaser part design number.",
               "maxLength": 256,
               "example": "100-440-0.750-3434-A",
               "type": "string"
            },
            "serial_number": {
               "title": "Part Number",
               "description": "Object :ref:`serial_number`, ie the manufacturer or purchaser item serial number.",
               "maxLength": 256,
               "example": "P/N 12345",
               "type": "string"
            },
            "heat_ref": {
               "title": "Heat Reference",
               "description": "Reference of the heat used to make the pipe.",
               "maxLength": 256,
               "example": "aa56593f6073",
               "type": "string"
            },
            "plate_ref": {
               "title": "Plate Reference",
               "description": "Reference of the plate used to make the pipe.",
               "maxLength": 256,
               "example": "4db9b261",
               "type": "string"
            },
            "billet_ref": {
               "title": "Billet Reference",
               "description": "Reference of the billet used to make the pipe.",
               "maxLength": 256,
               "example": "4db9b261",
               "type": "string"
            },
            "length_act": {
               "title": "Length",
               "description": "The linepipe actual :ref:`length`.",
               "example": {
                  "val": 12.252,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "mass": {
               "title": "Mass of the linepipe",
               "description": "Linepipe nominal :ref:`Mass`, empty in air.",
               "example": [
                  {
                     "val": 398.7,
                     "unit": "kg"
                  },
                  {
                     "val": 398700.0,
                     "unit": "g"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Mass"
                  }
               ]
            },
            "manuf_date_time": {
               "title": "Manufacture Date and Time",
               "description": "Date of manufacturing.",
               "example": [
                  "2032-04-23T10:20:30.400+02:30"
               ],
               "type": "string",
               "format": "date-time"
            },
            "manuf_cpy": {
               "title": "Manufacturer",
               "description": "Name of the company who manufactured the linepipe.",
               "maxLength": 256,
               "example": "Vallourec",
               "type": "string"
            },
            "manuf_mill": {
               "title": "Pipe Mill",
               "description": "Mill facilities that made the linepipe.",
               "maxLength": 256,
               "example": "Dalmine",
               "type": "string"
            },
            "manuf_process": {
               "title": "Process of Manufacture",
               "description": "Process used to make the main pipe.",
               "example": "SMLS",
               "enum": [
                  "EBW",
                  "LBW",
                  "HFI",
                  "MWPHFW",
                  "SAW",
                  "SAWL",
                  "SAWH",
                  "SMLS"
               ],
               "type": "string"
            },
            "marking": {
               "title": "Marking",
               "description": "Marking for the linepipe.",
               "examples": [
                  "DNVGL SMLS 450 SP 323.9 x 14.3",
                  "DNVGL MWPL 415 D L - UNS S31600 (B) UNS N06625 (E)",
                  "X  API  Spec  5L 508  12,7  L360M  PSL  2  SAWL  Y  Z  TESTED 17,5"
               ],
               "type": "string"
            },
            "material_type": {
               "title": "Material Type",
               "description": "Material type used to make the pipe.",
               "example": [
                  "C-Mn",
                  "LINED/CLAD",
                  "CRA"
               ],
               "enum": [
                  "C-Mn",
                  "CRA",
                  "LINED/CLAD"
               ],
               "type": "string"
            },
            "delivery_condition_api5L": {
               "title": "Delivery Condition (API 5L)",
               "description": "Delivery condition for the pipe.",
               "example": [
                  "M",
                  "Q"
               ],
               "enum": [
                  "R",
                  "N",
                  "Q",
                  "M"
               ],
               "type": "string"
            },
            "supp_req_api5L": {
               "title": "Supplementary Requirement, API5L",
               "description": "Supplementary requirements from the purchaser, as per DNV.",
               "example": [
                  "['O', 'S']",
                  "['O']"
               ],
               "type": "array",
               "items": {
                  "enum": [
                     "S",
                     "O",
                     "N"
                  ],
                  "type": "string"
               }
            },
            "supp_req_dnv": {
               "title": "Supplementary Requirement, DNV",
               "description": "Supplementary requirements from the purchaser, as per DNV.",
               "example": [
                  "['S', 'P']",
                  "['U']"
               ],
               "type": "array",
               "items": {
                  "enum": [
                     "D",
                     "F",
                     "P",
                     "S",
                     "U"
                  ],
                  "type": "string"
               }
            },
            "mill_test_pressure": {
               "title": "Actual Mill Hydrotest Pressure",
               "description": "Pressure at which the linepipe is hydrotested at the mill.",
               "example": {
                  "val": 405,
                  "unit": "bar"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Pressure"
                  }
               ]
            },
            "int_dia_avg_end_a": {
               "title": "Internal Diameter, average, A-end, measured.",
               "description": "Internal diameter of the linepipe, average, end A,  measured.",
               "example": [
                  {
                     "val": 368.2,
                     "unit": "mm"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "int_dia_avg_end_b": {
               "title": "Internal Diameter, average, B-end, measured.",
               "description": "Internal diameter of the linepipe, average, end B,  measured.",
               "example": [
                  {
                     "val": 368.2,
                     "unit": "mm"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "wth_avg_end_a": {
               "title": "Wall Thickness, average, A-end, measured.",
               "description": "Wall thickness of the linepipe, average, end A,  measured.",
               "example": [
                  {
                     "val": 19.1,
                     "unit": "mm"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "wth_avg_end_b": {
               "title": "Wall Thickness, average, B-end, measured.",
               "description": "Wall thickness of the linepipe, average, end B,  measured.",
               "example": [
                  {
                     "val": 19.1,
                     "unit": "mm"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "oor_avg_end_a": {
               "title": "Out-of-roundness, average, A-end, measured",
               "description": "Actual out-of-roundness of the linepipe, average, end A,  measured.",
               "example": {
                  "val": 4.06,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "oor_avg_end_b": {
               "title": "Out-of-roundness, average, B-end, measured",
               "description": "Actual out-of-roundness of the linepipe, average, end B,  measured.",
               "example": {
                  "val": 4.06,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "oor_avg_body": {
               "title": "Out-of-roundness, body",
               "description": "Actual out-of-roundness of the linepipe body,average, measured.",
               "example": {
                  "val": 4.06,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "related_bare_pipe_spec": {
               "title": "Relations to Bare Pipe Specifications",
               "description": "Related instances of :ref:`BarePipeSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "records_of_pipe_damage": {
               "title": "Records of Pipe Damages",
               "description": "Embedded records of :ref:`PipeDamage`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/PipeDamage"
               }
            }
         },
         "additionalProperties": false
      },
      "CoatingLayer": {
         "title": "CoatingLayer",
         "description": "`CoatingLayer` object stores data related to one layer of coating.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "coating_layer",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "material_type": {
               "title": "Material Type",
               "description": "Material type used to make the layer.",
               "maxLength": 256,
               "examples": [
                  "FBE",
                  "Adhesive",
                  "PP"
               ],
               "type": "string"
            },
            "length": {
               "title": "Layer Length measured",
               "description": "Actual layer length, measured. ",
               "example": {
                  "val": 150,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_avg": {
               "title": "Thickness, average, measured",
               "description": "Actual layer thickness, average, measured. ",
               "example": {
                  "val": 0.5,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_min": {
               "title": "Minimum thickness, measured",
               "description": "Actual minimum layer thicknes, measured. ",
               "example": {
                  "val": 0.2,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_max": {
               "title": "Maximum thickness, measured ",
               "description": "Actual maximum layer thicknes, measured.  ",
               "example": {
                  "val": 0.6,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            }
         },
         "additionalProperties": false
      },
      "CoatedPipe": {
         "title": "CoatedPipe",
         "description": "`CoatedPipe` object stores data related to one coated pipe, ie more or less a 12m long metallic tube with its applied parent coating.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "coated_pipe",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "thickness_avg": {
               "title": "Thickness, average, measured",
               "description": "Actual coating thickness, average, measured. ",
               "example": {
                  "val": 3,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_min": {
               "title": "Minimum thickness, measured",
               "description": "Actual minimum coating thicknes, measured. ",
               "example": {
                  "val": 2.85,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "thickness_max": {
               "title": "Maximum thickness, measured ",
               "description": "Actual maximum coating thicknes, measured.  ",
               "example": {
                  "val": 3.1,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "cut_back_length": {
               "title": "Coating Cut-Back Length, measured",
               "description": "Actual coating Cut-Back :ref:`Length`, measured ",
               "example": {
                  "val": 150,
                  "unit": "mm"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "related_pipe_coating_spec": {
               "title": "Relations to Pipe Coating Specification",
               "description": "Related instances of :ref:`PipeCoatingSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_bare_pipe": {
               "title": "Relation to :ref:`BarePipe`",
               "description": "Related instances of :ref:`BarePipe`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "records_of_coating_layer": {
               "title": "Records of Coating Layers",
               "description": "Embedded records of coating layer, :ref:`CoatingLayer`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/CoatingLayer"
               }
            }
         },
         "additionalProperties": false
      },
      "WeldingConsumable": {
         "title": "WeldingConsumable",
         "description": "WeldingConsumable describes the consumables used to make the :ref:`Weld`.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "welding_consumable",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "name": {
               "title": "Name",
               "description": "Name of consumable.",
               "type": "string"
            },
            "type": {
               "title": "Type",
               "description": "Type of consumable.",
               "type": "string"
            },
            "heat": {
               "title": "Heat",
               "description": "Heat of consumable.",
               "type": "string"
            },
            "batch": {
               "title": "Batch",
               "description": "Batch of consumable.",
               "type": "string"
            }
         }
      },
      "WeldPass": {
         "title": "WeldPass",
         "description": "WeldPass describe the various layers making the :ref:`Weld`.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "weld_pass",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "pass_nb": {
               "title": "Pass Location",
               "description": "Order for the pass. `1` corresponds to the first pass (root), and so on.",
               "examples": [
                  -1,
                  1,
                  2
               ],
               "type": "integer"
            }
         }
      },
      "WeldRepair": {
         "title": "WeldRepair",
         "description": "Records of repairs made on a :ref:`Weld`.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "weld_repair",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "repair_type": {
               "title": "Repair Type",
               "description": "Type of repair.",
               "enum": [
                  "PTR",
                  "TTR",
                  "in_process_root",
                  "cap"
               ],
               "type": "string"
            },
            "defect_type": {
               "title": "Type of Defect",
               "description": "Type of detected defect to be repaired.",
               "type": "string"
            },
            "defect_length": {
               "title": "Defect Length",
               "description": ":ref:`Length` of the detected defect to be repaired.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "defect_depth": {
               "title": "Defect Depth",
               "description": "Depth of the detected defect to be repaired.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "defect_height": {
               "title": "Defect Height",
               "description": "Height of the detected defect to be repaired.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "start_pos": {
               "title": "Start Position",
               "description": "WIP, documentation and example to be added.",
               "type": "number"
            },
            "end_pos": {
               "title": "End Position",
               "description": "WIP, documentation and example to be added.",
               "type": "number"
            }
         },
         "additionalProperties": false
      },
      "Weld": {
         "title": "Weld",
         "description": "Parameters defining a  weld.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "weld",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "part_number": {
               "title": "Part Number",
               "description": "Object :ref:`part_number`, ie the manufacturer or purchaser part design number.",
               "maxLength": 256,
               "example": "100-440-0.750-3434-A",
               "type": "string"
            },
            "serial_number": {
               "title": "Part Number",
               "description": "Object :ref:`serial_number`, ie the manufacturer or purchaser item serial number.",
               "maxLength": 256,
               "example": "P/N 12345",
               "type": "string"
            },
            "acceptance_criteria_type": {
               "title": "Type of Acceptance Criteria",
               "description": "Type of Acceptance Criteria",
               "examples": [
                  "eca",
                  "workmanship"
               ],
               "enum": [
                  "eca",
                  "workmanship"
               ],
               "type": "string"
            },
            "related_connected_component_1": {
               "title": "Relation to first component",
               "description": "Relation to first component connected by the weld.",
               "maxItems": 1,
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_connected_component_2": {
               "title": "Relation to second component",
               "description": "Relation to second component connected by the weld.",
               "maxItems": 1,
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_weld_ndt": {
               "title": "Relations to :ref:`WeldNDT`",
               "description": "Related instances of :ref:`WeldNDT`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_weld_spec": {
               "title": "Relations to :ref:`WeldSpec`",
               "description": "Related instances of :ref:`WeldSpec`, provided as array of :ref:`pdef_id`.",
               "examples": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "records_of_welding_consumable": {
               "title": "Welding Consumables",
               "description": "Embedded records of welding consumables, :ref:`WeldingConsumable`.",
               "type": "object",
               "additionalProperties": {
                  "$ref": "#/definitions/WeldingConsumable"
               }
            },
            "records_of_weld_pass": {
               "title": "Weld Pass",
               "description": "Embedded records of weld pass, :ref:`WeldPass`.",
               "type": "object",
               "additionalProperties": {
                  "$ref": "#/definitions/WeldPass"
               }
            },
            "records_of_weld_repair": {
               "title": " Weld Repairs",
               "description": "Embedded records of :ref:`WeldRepair`.",
               "type": "object",
               "additionalProperties": {
                  "$ref": "#/definitions/WeldRepair"
               }
            }
         },
         "additionalProperties": false
      },
      "WeldNDT": {
         "title": "WeldNDT",
         "description": "Parameters defining a :ref:`Weld` non destructive test (NDT).",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "weld_ndt",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "method": {
               "title": "NDT Method",
               "description": "Method used for non detructive testing.",
               "example": "MPI",
               "enum": [
                  "VT",
                  "DPI",
                  "MPI",
                  "MUT",
                  "RT",
                  "RTR",
                  "AUT"
               ],
               "type": "string"
            },
            "related_weld": {
               "title": "Relation to :ref:`Weld`",
               "description": "Related instance of :ref:`Weld`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_weld_ndt_pqt": {
               "title": "Relation to Weld NDT PQT",
               "description": "Related instances of :ref:`WeldNDTPQT`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "FieldJointCoating": {
         "title": "FieldJointCoating",
         "description": "Parameters defining a field joint coating.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "field_joint_coating",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "part_number": {
               "title": "Part Number",
               "description": "Object :ref:`part_number`, ie the manufacturer or purchaser part design number.",
               "maxLength": 256,
               "example": "100-440-0.750-3434-A",
               "type": "string"
            },
            "serial_number": {
               "title": "Part Number",
               "description": "Object :ref:`serial_number`, ie the manufacturer or purchaser item serial number.",
               "maxLength": 256,
               "example": "P/N 12345",
               "type": "string"
            }
         },
         "additionalProperties": false
      },
      "AssemblySinglePipe": {
         "title": "AssemblySinglePipe",
         "description": "`AssemblySinglePipe` stores data intended to link several instances of :ref:`BarePipe` and :ref:`CoatedPipe` together, like in a double-joint, quad-joint or stalk.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "assembly_single_pipe",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "acceptance_status": {
               "title": "Acceptance Status",
               "description": "Whether the :ref:`AssemblySinglePipe` is accepted or not.",
               "example": true,
               "type": "boolean"
            },
            "prod_site_name": {
               "title": "Production Site Name",
               "description": "Name of the site, yard or vessel used to fabricate the assembly.",
               "maxLength": 256,
               "examples": [
                  "Orkanger Spoolbase",
                  "Arbatax QJ Plant",
                  "Vigra Spoolbase"
               ],
               "type": "string"
            },
            "prod_site_country": {
               "title": "Production Site Country",
               "description": "The country of the production site.",
               "example": "Angola",
               "enum": [
                  "Afghanistan",
                  "Aland Islands",
                  "Albania",
                  "Algeria",
                  "American Samoa",
                  "Andorra",
                  "Angola",
                  "Anguilla",
                  "Antarctica",
                  "Antigua and Barbuda",
                  "Argentina",
                  "Armenia",
                  "Aruba",
                  "Australia",
                  "Austria",
                  "Azerbaijan",
                  "Bahamas",
                  "Bahrain",
                  "Bangladesh",
                  "Barbados",
                  "Belarus",
                  "Belgium",
                  "Belize",
                  "Benin",
                  "Bermuda",
                  "Bhutan",
                  "Bolivia",
                  "Bosnia and Herzegovina",
                  "Botswana",
                  "Bouvet Island",
                  "Brazil",
                  "British Indian Ocean Territory",
                  "Brunei Darussalam",
                  "Bulgaria",
                  "Burkina Faso",
                  "Burundi",
                  "Cambodia",
                  "Cameroon",
                  "Canada",
                  "Cape Verde",
                  "Cayman Islands",
                  "Central African Republic",
                  "Chad",
                  "Chile",
                  "China",
                  "Christmas Island",
                  "Cocos (Keeling) Islands",
                  "Colombia",
                  "Comoros",
                  "Congo",
                  "Congo, The Democratic Republic of the",
                  "Cook Islands",
                  "Costa Rica",
                  "Cote D'Ivoire",
                  "Croatia",
                  "Cuba",
                  "Cyprus",
                  "Czech Republic",
                  "Denmark",
                  "Djibouti",
                  "Dominica",
                  "Dominican Republic",
                  "Ecuador",
                  "Egypt",
                  "El Salvador",
                  "Equatorial Guinea",
                  "Eritrea",
                  "Estonia",
                  "Ethiopia",
                  "Falkland Islands (Malvinas)",
                  "Faroe Islands",
                  "Fiji",
                  "Finland",
                  "France",
                  "French Guiana",
                  "French Polynesia",
                  "French Southern Territories",
                  "Gabon",
                  "Gambia",
                  "Georgia",
                  "Germany",
                  "Ghana",
                  "Gibraltar",
                  "Greece",
                  "Greenland",
                  "Grenada",
                  "Guadeloupe",
                  "Guam",
                  "Guatemala",
                  "Guernsey",
                  "Guinea",
                  "Guinea-Bissau",
                  "Guyana",
                  "Haiti",
                  "Heard Island and Mcdonald Islands",
                  "Holy See (Vatican City State)",
                  "Honduras",
                  "Hong Kong",
                  "Hungary",
                  "Iceland",
                  "India",
                  "Indonesia",
                  "Iran, Islamic Republic Of",
                  "Iraq",
                  "Ireland",
                  "Isle of Man",
                  "Israel",
                  "Italy",
                  "Jamaica",
                  "Japan",
                  "Jersey",
                  "Jordan",
                  "Kazakhstan",
                  "Kenya",
                  "Kiribati",
                  "Democratic People's Republic of Korea",
                  "Korea, Republic of",
                  "Kosovo",
                  "Kuwait",
                  "Kyrgyzstan",
                  "Lao People's Democratic Republic",
                  "Latvia",
                  "Lebanon",
                  "Lesotho",
                  "Liberia",
                  "Libyan Arab Jamahiriya",
                  "Liechtenstein",
                  "Lithuania",
                  "Luxembourg",
                  "Macao",
                  "Macedonia, The Former Yugoslav Republic of",
                  "Madagascar",
                  "Malawi",
                  "Malaysia",
                  "Maldives",
                  "Mali",
                  "Malta",
                  "Marshall Islands",
                  "Martinique",
                  "Mauritania",
                  "Mauritius",
                  "Mayotte",
                  "Mexico",
                  "Micronesia, Federated States of",
                  "Moldova, Republic of",
                  "Monaco",
                  "Mongolia",
                  "Montenegro",
                  "Montserrat",
                  "Morocco",
                  "Mozambique",
                  "Myanmar",
                  "Namibia",
                  "Nauru",
                  "Nepal",
                  "Netherlands",
                  "Netherlands Antilles",
                  "New Caledonia",
                  "New Zealand",
                  "Nicaragua",
                  "Niger",
                  "Nigeria",
                  "Niue",
                  "Norfolk Island",
                  "Northern Mariana Islands",
                  "Norway",
                  "Oman",
                  "Pakistan",
                  "Palau",
                  "Palestinian Territory, Occupied",
                  "Panama",
                  "Papua New Guinea",
                  "Paraguay",
                  "Peru",
                  "Philippines",
                  "Pitcairn",
                  "Poland",
                  "Portugal",
                  "Puerto Rico",
                  "Qatar",
                  "Reunion",
                  "Romania",
                  "Russian Federation",
                  "Rwanda",
                  "Saint Helena",
                  "Saint Kitts and Nevis",
                  "Saint Lucia",
                  "Saint Pierre and Miquelon",
                  "Saint Vincent and the Grenadines",
                  "Samoa",
                  "San Marino",
                  "Sao Tome and Principe",
                  "Saudi Arabia",
                  "Senegal",
                  "Serbia",
                  "Seychelles",
                  "Sierra Leone",
                  "Singapore",
                  "Slovakia",
                  "Slovenia",
                  "Solomon Islands",
                  "Somalia",
                  "South Africa",
                  "South Georgia and the South Sandwich Islands",
                  "Spain",
                  "Sri Lanka",
                  "Sudan",
                  "Suriname",
                  "Svalbard and Jan Mayen",
                  "Swaziland",
                  "Sweden",
                  "Switzerland",
                  "Syrian Arab Republic",
                  "Taiwan",
                  "Tajikistan",
                  "Tanzania, United Republic of",
                  "Thailand",
                  "Timor-Leste",
                  "Togo",
                  "Tokelau",
                  "Tonga",
                  "Trinidad and Tobago",
                  "Tunisia",
                  "Turkey",
                  "Turkmenistan",
                  "Turks and Caicos Islands",
                  "Tuvalu",
                  "Uganda",
                  "Ukraine",
                  "United Arab Emirates",
                  "United Kingdom",
                  "United States",
                  "United States Minor Outlying Islands",
                  "Uruguay",
                  "Uzbekistan",
                  "Vanuatu",
                  "Venezuela",
                  "Viet Nam",
                  "Virgin Islands, British",
                  "Virgin Islands, U.S.",
                  "Wallis and Futuna",
                  "Western Sahara",
                  "Yemen",
                  "Zambia",
                  "Zimbabwe"
               ],
               "type": "string"
            },
            "prod_site_onshore_offshore": {
               "title": "Production Site Onshore / Offshore",
               "description": "Whether the production site is located onshore or offshore.",
               "example": "onshore",
               "enum": [
                  "onshore",
                  "offshore"
               ],
               "type": "string"
            },
            "prod_line_name": {
               "title": "Production Line Name",
               "description": "Name of the production line used to fabricate the assembly.",
               "maxLength": 256,
               "example": "East Prod Line",
               "type": "string"
            },
            "length": {
               "title": "Length of the assembly",
               "description": "The overall :ref:`Length` of the Assembly.",
               "example": {
                  "val": 49.0,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "type": {
               "title": "Type of Assembly",
               "description": "Type of assembly.",
               "example": "double joint",
               "enum": [
                  "double joint",
                  "triple joint",
                  "quad joint",
                  "stalk"
               ],
               "type": "string"
            },
            "mass": {
               "title": "Mass of the assembly",
               "description": "The overall :ref:`Mass` of the assembly instance",
               "examples": {
                  "val": 49.0,
                  "unit": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Mass"
                  }
               ]
            },
            "related_bare_pipe": {
               "title": "Related instances of :ref:`BarePipe`",
               "description": "Related instances of :ref:`BarePipe` used in this assembly, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_coated_pipe": {
               "title": "Related instances of :ref:`CoatedPipe`.",
               "description": "Related instances of :ref:`CoatedPipe`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_weld": {
               "title": "Related instances of :ref:`Weld`",
               "description": "Related instances of :ref:`Weld`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_field_joint_coating": {
               "title": "Related instances of Field Joint Coating",
               "description": "Related instances of :ref:`FieldJointCoating`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "Flow_Rate": {
         "title": "Flow_Rate",
         "description": ":ref:`Measure` of a flow rate",
         "type": "object",
         "properties": {
            "val": {
               "title": "Value",
               "description": "The value taken by the Measure.",
               "examples": [
                  1.0,
                  -25.1,
                  1000000.0
               ],
               "type": "number"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "enum": [
                  "l.s^-1",
                  "m^3.s^-1"
               ],
               "type": "string"
            }
         },
         "required": [
            "val",
            "unit"
         ],
         "additionalProperties": false
      },
      "FlowRate": {
         "title": "FlowRate",
         "description": "`FlowRate` capture the flow rate at which the :ref:`Pipeline` operates.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "flow_rate",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "name": {
               "title": "Flow Rate Name",
               "description": "Name for this `FlowRate` scenario.",
               "type": "string"
            },
            "fluid": {
               "title": "Fluid Name",
               "description": "Name for the fluid for this scenario.",
               "type": "string"
            },
            "rate": {
               "title": "Flow rate",
               "description": "Fluid flow rate for this scenario.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Flow_Rate"
                  }
               ]
            }
         }
      },
      "Pipeline": {
         "title": "Pipeline",
         "description": "Pipeline object stores data related to one pipeline.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "pipeline",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "battery_limits": {
               "title": "Battery Limit",
               "description": "Description of the battery limits considered in the definition of the pipeline.",
               "maxLength": 1000,
               "example": "from PLET-18 to ILT-01",
               "type": "string"
            },
            "installation_date_time": {
               "title": "Installation Date and Time",
               "description": "Date of installation.",
               "example": "2032-04-23T10:20:30.400+02:30",
               "type": "string",
               "format": "date-time"
            },
            "commissioning_date_time": {
               "title": "Commissioning Date and Time",
               "description": "Date of commissioning.",
               "example": "2032-04-23T10:20:30.400+02:30",
               "type": "string",
               "format": "date-time"
            },
            "hydrotest_date_time": {
               "title": "Hydrotest Date and Time",
               "description": "Date of hydrotest.",
               "example": "2032-04-23T10:20:30.400+02:30",
               "type": "string",
               "format": "date-time"
            },
            "system": {
               "title": "System",
               "description": "Related functional system.",
               "example": "gas export",
               "enum": [
                  "gas export",
                  "gas injection",
                  "gas lift",
                  "oil export",
                  "offloading",
                  "production",
                  "water alternate gas (WAG)",
                  "water injection"
               ],
               "type": "string"
            },
            "service": {
               "title": "Service",
               "description": "Functional service rating.",
               "examples": [
                  "sweet",
                  "sour"
               ],
               "enum": [
                  "sweet",
                  "sour"
               ],
               "type": "string"
            },
            "tag": {
               "title": "Tag",
               "description": "Component tag for the pipeline.",
               "maxLength": 256,
               "example": "PR16",
               "type": "string"
            },
            "min_no_touch_time": {
               "title": "Minimum No Touch Time",
               "description": "Minimum :ref:`Duration` during which the pipeline can be left without hydrate mitigation.",
               "example": {
                  "val": 4,
                  "uom": "hr"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Duration"
                  }
               ]
            },
            "min_cool_down_time": {
               "title": "Minimum Cool Down Time",
               "description": "Minimum :ref:`Duration` during which the pipeline can be left to cooldown.",
               "example": {
                  "val": 4,
                  "uom": "hr"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Duration"
                  }
               ]
            },
            "max_water_condensation_rate": {
               "title": "Maximum Water Condensate Rate",
               "description": "WIP : description and example needed.",
               "example": {
                  "val": 0.9,
                  "uom": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "records_of_flow_rate": {
               "title": "Records of Flow Rate",
               "description": "Embeddeded records of :ref:`FlowRate`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/FlowRate"
               }
            },
            "related_density_set": {
               "title": "Relations to Density Set",
               "description": "Related instances of :ref:`DensitySet`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_fluid_prop": {
               "title": "Relations to Fluid Properties",
               "description": "Related instances of :ref:`FluidProp`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_operating_cycle": {
               "title": "Relations to Operating Cycle",
               "description": "Related instances of :ref:`OperatingCycle`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_pressure_set": {
               "title": "Relations to Pressure Set",
               "description": "Related instances of :ref:`PressureSet`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_temperature_set": {
               "title": "Relations to Temperature Set",
               "description": "Related instances of :ref:`TemperatureSet`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_solid_load": {
               "title": "Relations to Solid Loads",
               "description": "Related instances of :ref:`SolidLoad`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_route": {
               "title": "Relations to Routes",
               "description": "Related instances of :ref:`Route`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_pipeline_spec": {
               "title": "Relations to Pipeline Spec",
               "description": "Related instances of :ref:`PipelineSpec`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0",
                  "93b73ef3-cf5a-445e-a162-68fa6f246faa"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         },
         "additionalProperties": false
      },
      "Vessel": {
         "title": "Vessel",
         "description": ":ref:`Base PDEF Object` defining a vessel.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "vessel",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "IMO_number": {
               "title": "IMO Number",
               "description": "International Maritime Organization (IMO) number is a unique identifier for ships, registered ship owners and management companies.",
               "example": 9215359,
               "type": "integer"
            },
            "name": {
               "title": "Vessel Name",
               "description": "Vessel name.",
               "example": "DEEP BLUE",
               "type": "string"
            },
            "ship_type": {
               "title": "Ship Type",
               "description": "Type of vessel.",
               "example": "Pipe Layer",
               "anyOf": [
                  {
                     "type": "string"
                  },
                  {
                     "enum": [
                        "Pipe Layer"
                     ],
                     "type": "string"
                  }
               ]
            },
            "flag": {
               "title": "Flag",
               "description": "Vessel country flag.",
               "example": "Bahamas",
               "enum": [
                  "Afghanistan",
                  "Aland Islands",
                  "Albania",
                  "Algeria",
                  "American Samoa",
                  "Andorra",
                  "Angola",
                  "Anguilla",
                  "Antarctica",
                  "Antigua and Barbuda",
                  "Argentina",
                  "Armenia",
                  "Aruba",
                  "Australia",
                  "Austria",
                  "Azerbaijan",
                  "Bahamas",
                  "Bahrain",
                  "Bangladesh",
                  "Barbados",
                  "Belarus",
                  "Belgium",
                  "Belize",
                  "Benin",
                  "Bermuda",
                  "Bhutan",
                  "Bolivia",
                  "Bosnia and Herzegovina",
                  "Botswana",
                  "Bouvet Island",
                  "Brazil",
                  "British Indian Ocean Territory",
                  "Brunei Darussalam",
                  "Bulgaria",
                  "Burkina Faso",
                  "Burundi",
                  "Cambodia",
                  "Cameroon",
                  "Canada",
                  "Cape Verde",
                  "Cayman Islands",
                  "Central African Republic",
                  "Chad",
                  "Chile",
                  "China",
                  "Christmas Island",
                  "Cocos (Keeling) Islands",
                  "Colombia",
                  "Comoros",
                  "Congo",
                  "Congo, The Democratic Republic of the",
                  "Cook Islands",
                  "Costa Rica",
                  "Cote D'Ivoire",
                  "Croatia",
                  "Cuba",
                  "Cyprus",
                  "Czech Republic",
                  "Denmark",
                  "Djibouti",
                  "Dominica",
                  "Dominican Republic",
                  "Ecuador",
                  "Egypt",
                  "El Salvador",
                  "Equatorial Guinea",
                  "Eritrea",
                  "Estonia",
                  "Ethiopia",
                  "Falkland Islands (Malvinas)",
                  "Faroe Islands",
                  "Fiji",
                  "Finland",
                  "France",
                  "French Guiana",
                  "French Polynesia",
                  "French Southern Territories",
                  "Gabon",
                  "Gambia",
                  "Georgia",
                  "Germany",
                  "Ghana",
                  "Gibraltar",
                  "Greece",
                  "Greenland",
                  "Grenada",
                  "Guadeloupe",
                  "Guam",
                  "Guatemala",
                  "Guernsey",
                  "Guinea",
                  "Guinea-Bissau",
                  "Guyana",
                  "Haiti",
                  "Heard Island and Mcdonald Islands",
                  "Holy See (Vatican City State)",
                  "Honduras",
                  "Hong Kong",
                  "Hungary",
                  "Iceland",
                  "India",
                  "Indonesia",
                  "Iran, Islamic Republic Of",
                  "Iraq",
                  "Ireland",
                  "Isle of Man",
                  "Israel",
                  "Italy",
                  "Jamaica",
                  "Japan",
                  "Jersey",
                  "Jordan",
                  "Kazakhstan",
                  "Kenya",
                  "Kiribati",
                  "Democratic People's Republic of Korea",
                  "Korea, Republic of",
                  "Kosovo",
                  "Kuwait",
                  "Kyrgyzstan",
                  "Lao People's Democratic Republic",
                  "Latvia",
                  "Lebanon",
                  "Lesotho",
                  "Liberia",
                  "Libyan Arab Jamahiriya",
                  "Liechtenstein",
                  "Lithuania",
                  "Luxembourg",
                  "Macao",
                  "Macedonia, The Former Yugoslav Republic of",
                  "Madagascar",
                  "Malawi",
                  "Malaysia",
                  "Maldives",
                  "Mali",
                  "Malta",
                  "Marshall Islands",
                  "Martinique",
                  "Mauritania",
                  "Mauritius",
                  "Mayotte",
                  "Mexico",
                  "Micronesia, Federated States of",
                  "Moldova, Republic of",
                  "Monaco",
                  "Mongolia",
                  "Montenegro",
                  "Montserrat",
                  "Morocco",
                  "Mozambique",
                  "Myanmar",
                  "Namibia",
                  "Nauru",
                  "Nepal",
                  "Netherlands",
                  "Netherlands Antilles",
                  "New Caledonia",
                  "New Zealand",
                  "Nicaragua",
                  "Niger",
                  "Nigeria",
                  "Niue",
                  "Norfolk Island",
                  "Northern Mariana Islands",
                  "Norway",
                  "Oman",
                  "Pakistan",
                  "Palau",
                  "Palestinian Territory, Occupied",
                  "Panama",
                  "Papua New Guinea",
                  "Paraguay",
                  "Peru",
                  "Philippines",
                  "Pitcairn",
                  "Poland",
                  "Portugal",
                  "Puerto Rico",
                  "Qatar",
                  "Reunion",
                  "Romania",
                  "Russian Federation",
                  "Rwanda",
                  "Saint Helena",
                  "Saint Kitts and Nevis",
                  "Saint Lucia",
                  "Saint Pierre and Miquelon",
                  "Saint Vincent and the Grenadines",
                  "Samoa",
                  "San Marino",
                  "Sao Tome and Principe",
                  "Saudi Arabia",
                  "Senegal",
                  "Serbia",
                  "Seychelles",
                  "Sierra Leone",
                  "Singapore",
                  "Slovakia",
                  "Slovenia",
                  "Solomon Islands",
                  "Somalia",
                  "South Africa",
                  "South Georgia and the South Sandwich Islands",
                  "Spain",
                  "Sri Lanka",
                  "Sudan",
                  "Suriname",
                  "Svalbard and Jan Mayen",
                  "Swaziland",
                  "Sweden",
                  "Switzerland",
                  "Syrian Arab Republic",
                  "Taiwan",
                  "Tajikistan",
                  "Tanzania, United Republic of",
                  "Thailand",
                  "Timor-Leste",
                  "Togo",
                  "Tokelau",
                  "Tonga",
                  "Trinidad and Tobago",
                  "Tunisia",
                  "Turkey",
                  "Turkmenistan",
                  "Turks and Caicos Islands",
                  "Tuvalu",
                  "Uganda",
                  "Ukraine",
                  "United Arab Emirates",
                  "United Kingdom",
                  "United States",
                  "United States Minor Outlying Islands",
                  "Uruguay",
                  "Uzbekistan",
                  "Vanuatu",
                  "Venezuela",
                  "Viet Nam",
                  "Virgin Islands, British",
                  "Virgin Islands, U.S.",
                  "Wallis and Futuna",
                  "Western Sahara",
                  "Yemen",
                  "Zambia",
                  "Zimbabwe"
               ],
               "type": "string"
            },
            "year_of_built": {
               "title": "Year of built",
               "description": "Year of Built.",
               "example": 2001,
               "type": "integer"
            },
            "length_overall": {
               "title": "Length Overall",
               "description": "Overall vessel :ref:`Length`.",
               "example": {
                  "val": 207.0,
                  "uom": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "beam": {
               "title": "Beam Length",
               "description": "Overall vessel beam :ref:`Length`.",
               "example": {
                  "val": 32.0,
                  "uom": "m"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "gross_tonnage": {
               "title": "Gross Tonnage",
               "description": ":ref:`Mass` for ship gross tonnage.",
               "example": {
                  "val": 33822.0,
                  "uom": "t"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Mass"
                  }
               ]
            }
         },
         "additionalProperties": false
      },
      "Header": {
         "title": "Header",
         "description": ":ref:`Header` captures context and meta information about a series. This is similar to the header of a column.",
         "type": "object",
         "properties": {
            "name": {
               "title": "Name",
               "description": "Short name, usually very abbreviated. This name MUST be re-used as key in the data objects.",
               "example": "p",
               "type": "string"
            },
            "title": {
               "title": "Title",
               "description": "Title to be given to the series.",
               "example": "Pressure",
               "type": "string"
            },
            "description": {
               "title": "Description",
               "description": "Descriptive text about the series.",
               "example": "Internal pressure gauge record",
               "type": "string"
            },
            "unit": {
               "title": "unit of measure",
               "description": "Unit of measure.",
               "type": "string"
            }
         },
         "required": [
            "unit"
         ]
      },
      "Table": {
         "title": "Table",
         "description": ":ref:`Table` bundle one or several series. Series are similar to columns in row-major-order.",
         "type": "object",
         "properties": {
            "headers": {
               "title": "Headers",
               "description": "The array of :ref:`Header` objects describing the series.",
               "name": "fields",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/Header"
               }
            },
            "data": {
               "title": "Data",
               "description": "The records, similar to rows in row-major-order. The key of the objects MUST be the name declared in the :ref:`Header`.",
               "name": "data",
               "type": "array",
               "items": {
                  "type": "object"
               }
            }
         },
         "required": [
            "headers",
            "data"
         ],
         "additionalProperties": false
      },
      "HydrateCurve": {
         "title": "HydrateCurve",
         "description": "`HydrateCurve` defines the Pressure and Temperature (P-T) properties of the produced fluid hydrate formation.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "hydrate_curve",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "name": {
               "title": "Hydrate Name",
               "description": "Name for this `HydrateCurve` instance",
               "maxLength": 256,
               "type": "string"
            },
            "table": {
               "title": "Pressure - Temperature Table",
               "description": "A :ref:`Table` reporting the pressure / temperature records making the hydrate curve.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Table"
                  }
               ]
            }
         },
         "additionalProperties": false
      },
      "FluidComponent": {
         "title": "FluidComponent",
         "description": "`FluidComponent` describes a component part of `fluid_composition`.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "fluid_component",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "molecule_name": {
               "title": "Molecule Name",
               "description": "Molecule name of the component.",
               "maxLength": 20,
               "examples": [
                  "CH4",
                  "CO2"
               ],
               "type": "string"
            },
            "min_molar_content": {
               "title": "Minimum Molar Content",
               "description": "Minimum expected content of the component, in :ref:`UnitLess` molar fraction.",
               "example": {
                  "val": 0.11,
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "max_molar_content": {
               "title": "Maximum Molar Content",
               "description": "Maximum expected content of the component, in :ref:`UnitLess` molar fraction.",
               "example": {
                  "val": 0.13,
                  "unit": ""
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            }
         },
         "additionalProperties": false
      },
      "FluidProp": {
         "title": "FluidProp",
         "description": "`FluidProp` gathers properties of the fluid to be transported by a :ref:`Pipeline`.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "fluid_prop",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "scenario_name": {
               "title": "Fluid Prop Scenario Name",
               "description": "Name for this `FluidProp` scenario.",
               "maxLength": 256,
               "type": "string"
            },
            "phase": {
               "title": "Phase",
               "description": "Phase of the fluid.",
               "examples": "water",
               "enum": [
                  "water",
                  "liquid",
                  "gas",
                  "multiphase"
               ],
               "type": "string"
            },
            "cond_oil_ratio": {
               "title": "TBC",
               "description": "TBC",
               "examples": [],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "crit_wax_depos_temp": {
               "title": "Critical Wax Deposition Temperature",
               "description": "TBC",
               "examples": [],
               "allOf": [
                  {
                     "$ref": "#/definitions/Temperature"
                  }
               ]
            },
            "fluid_category_dnv": {
               "title": "Fluid Category (DNV)",
               "description": "Fluid category, as per DNV acronym.",
               "example": "E",
               "enum": [
                  "A",
                  "B",
                  "C",
                  "D",
                  "E"
               ],
               "type": "string"
            },
            "gas_cond_ratio": {
               "title": "TBC",
               "description": "TBC",
               "examples": [],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "gas_oil_ratio": {
               "title": "TBC",
               "description": "TBC",
               "examples": [],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "ph_min": {
               "title": "Minimum pH",
               "description": "Minimum expected pH",
               "examples": [
                  5.5,
                  8
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "ph_max": {
               "title": "Maximum pH",
               "description": "Maximum expected pH",
               "examples": [
                  8.5,
                  9
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "pour_point": {
               "title": "Pour Point (TBC).",
               "description": "TBC.",
               "examples": [
                  8.5,
                  9
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "sourness": {
               "title": "Fluid Sourness",
               "description": "Expected sourness for this FluidProp.",
               "type": "string"
            },
            "wat": {
               "title": "TBC",
               "description": "TBC.",
               "examples": [
                  8.5,
                  9
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "water_fraction": {
               "title": "Water Cut",
               "description": "Ratio of water content",
               "examples": [
                  0.25
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "records_of_hydrate_curve": {
               "title": "Records of Hydrate Curves",
               "description": "Embedded records of :ref:`HydrateCurve`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/HydrateCurve"
               }
            },
            "records_of_fluid_component": {
               "title": "Records of Fluid Components",
               "description": "Embedded records of :ref:`FluidComponent`.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/FluidComponent"
               }
            }
         },
         "additionalProperties": false
      },
      "DensitySet": {
         "title": "DensitySet",
         "description": "`DensitySet` provides a Density at which the :ref:`Pipeline` is operated.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "density_set",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "name": {
               "title": "Density Set Name",
               "description": "Name for this `DensitySet` scenario.",
               "maxLength": 256,
               "type": "string"
            },
            "density_kp_table": {
               "title": "Density KP Indexed Table",
               "description": ":ref:`Table` of density records against KP.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Table"
                  }
               ]
            },
            "related_route": {
               "title": "Relation to Route",
               "description": "Related instance of :ref:`Route`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         }
      },
      "CycleStep": {
         "title": "CycleStep",
         "description": "`CycleStep` describes a combination of :ref:`PressureSet`, :ref:`TemperatureSet` and :ref:`DensitySet` at which the :ref:`Pipeline` is operated.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "cycle_step",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "related_pressure_set": {
               "title": "Related Pressure Set",
               "description": "Related instances of :ref:`PressureSet`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_temperature_set": {
               "title": "Related Temperature Set",
               "description": "Related instances of :ref:`TemperatureSet`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            },
            "related_density_set": {
               "title": "Related Density Set",
               "description": "Related instances of :ref:`DensitySet`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         }
      },
      "OperatingCycle": {
         "title": "OperatingCycle",
         "description": "`OperatingCycle` provides the various cycles (:ref:`CycleStep`) of pressure, temperature and density regime at which the :ref:`Pipeline` is operated.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "operating_cycle",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "name": {
               "title": "Operating Cycle Name",
               "description": "Name for this `OperatingCycle` scenario.",
               "example": [
                  "partial shutdown"
               ],
               "type": "string"
            },
            "iter": {
               "title": "Number",
               "description": "Number of times this `OperatingCycle` is done.",
               "example": 332,
               "type": "integer"
            },
            "records_of_cycle_step": {
               "title": "Records of Cycle Steps",
               "description": "Records of :ref:`CycleStep` to be included in this operating cycle.",
               "type": "array",
               "items": {
                  "$ref": "#/definitions/CycleStep"
               }
            }
         }
      },
      "PressureSet": {
         "title": "PressureSet",
         "description": "`PressureSet` provides a pressure regime at which the :ref:`Pipeline` is operated. \n\n..note:: Since the pressure is defined at a KP, a reference :ref:`Depth` is not provided.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "pressure_set",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "name": {
               "title": "Pressure Set Name",
               "description": "Name for this :ref:`PressureSet` scenario.",
               "maxLength": 256,
               "type": "string"
            },
            "pressure_kp_table": {
               "title": "Pressure KP Indexed Table",
               "description": ":ref:`Table` of pressure records against KP.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Table"
                  }
               ]
            },
            "related_route": {
               "title": "Relation to Route",
               "description": "Related instance of :ref:`Route`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         }
      },
      "TemperatureSet": {
         "title": "TemperatureSet",
         "description": "`TemperatureSet` provides a temperature at which the :ref:`Pipeline` is operated.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "temperature_set",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "name": {
               "title": "Temperature Set Name",
               "description": "Name for this `TemperatureSet` scenario.",
               "maxLength": 256,
               "type": "string"
            },
            "temperature_kp_table": {
               "title": "Temperature KP Indexed Table",
               "description": ":ref:`Table` of temperature records against KP.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Table"
                  }
               ]
            },
            "related_route": {
               "title": "Relation to Route",
               "description": "Related instance of :ref:`Route`, provided as array of :ref:`pdef_id`.",
               "example": [
                  "37e682a2-e4e5-497a-b252-ea4b4ea54bc0"
               ],
               "type": "array",
               "items": {
                  "type": "string"
               }
            }
         }
      },
      "SolidLoad": {
         "title": "SolidLoad",
         "description": "`SolidLoad` describes the solid components transported by the fluid flowing into the :ref:`Pipeline`.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "solid_load",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "scenario_name": {
               "title": "Solid Load Scenario Name",
               "description": "Name for this `SolidLoad` scenario.",
               "maxLength": 256,
               "type": "string"
            },
            "charge": {
               "title": "Charge",
               "description": "WIP: doc and example needed.",
               "examples": [
                  {
                     "val": 0.13,
                     "unit": ""
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/UnitLess"
                  }
               ]
            },
            "density": {
               "title": "Density",
               "description": "Density of the solid.",
               "examples": {
                  "val": 7500,
                  "unit": "kg.m^-3"
               },
               "allOf": [
                  {
                     "$ref": "#/definitions/Density"
                  }
               ]
            },
            "shape": {
               "title": "Shape",
               "description": "WIP: doc and example needed.",
               "examples": [
                  "WIP"
               ],
               "type": "string"
            },
            "size": {
               "title": "Size",
               "description": "WIP: doc and example needed.",
               "examples": [
                  {
                     "val": 0.1,
                     "unit": "mm"
                  }
               ],
               "allOf": [
                  {
                     "$ref": "#/definitions/Length"
                  }
               ]
            },
            "type": {
               "title": "Type",
               "description": "WIP: doc and example needed.",
               "examples": [
                  "WIP"
               ],
               "type": "string"
            }
         },
         "additionalProperties": false
      },
      "SensorData": {
         "title": "SensorData",
         "description": "`SensorData` describes data collected by a sensor device set on the :ref:`Pipeline` to collect measurements.",
         "type": "object",
         "properties": {
            "pdef_id": {
               "title": "PDEF id",
               "description": ":ref:`pdef_id` is the unique identifier for the object.",
               "example": "14474720-db23-453a-b9c0-6a9fc9b03ef3",
               "type": "string"
            },
            "pdef_type": {
               "title": "Pdef Type",
               "const": "sensor_data",
               "type": "string"
            },
            "meta_data": {
               "title": "Metadata",
               "description": "Optional user free structured :ref:`Metadata` object.",
               "example": "{'created':'2021-09-03'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/MetaData"
                  }
               ]
            },
            "additional_data": {
               "title": "Additional Data",
               "description": "Optional user free structured :ref:`Additional Data` object.",
               "example": "{'color':'grey'}",
               "allOf": [
                  {
                     "$ref": "#/definitions/AdditionalData"
                  }
               ]
            },
            "tag": {
               "title": "Tag",
               "description": "Sensor Tag.",
               "maxLength": 256,
               "examples": "PR017-0054",
               "type": "string"
            },
            "descr": {
               "title": "Description",
               "description": "Descriptive text for the sensor.",
               "maxLength": 1000,
               "type": "string"
            },
            "position": {
               "title": "Sensor Geographical Position",
               "description": "GeoJSON :ref:`Point` for localizing sensor.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Point"
                  }
               ]
            },
            "table": {
               "title": "Table",
               "description": ":ref:`Table` of records from the sensor.",
               "allOf": [
                  {
                     "$ref": "#/definitions/Table"
                  }
               ]
            }
         },
         "additionalProperties": false
      }
   }
}

Config
  • extra: str = allow

anode_specs: Optional[List[pdef.model.anode_spec.AnodeSpec]]

The collection of AnodeSpec instances included in this dataset.

anodes: Optional[List[pdef.model.anode.Anode]]

The collection of Anode instances included in this dataset.

assembly_single_pipes: Optional[List[pdef.model.assembly_single_pipe.AssemblySinglePipe]]

The collection of AssemblySinglePipe instances included in this dataset.

bare_pipe_specs: Optional[List[pdef.model.bare_pipe_spec.BarePipeSpec]]

The collection of BarePipeSpec instances included in this dataset.

bare_pipes: Optional[List[pdef.model.bare_pipe.BarePipe]]

The collection of BarePipe instances included in this dataset.

coated_pipes: Optional[List[pdef.model.coated_pipe.CoatedPipe]]

The collection of CoatedPipe instances included in this dataset.

density_sets: Optional[List[pdef.model.density_set.DensitySet]]

The collection of DensitySet instances included in this dataset.

field_joint_coating_pqts: Optional[List[pdef.model.field_joint_coating_pqt.FieldJointCoatingPQT]]

The collection of FieldJointCoatingPQT instances included in this dataset.

field_joint_coating_specs: Optional[List[pdef.model.field_joint_coating_spec.FieldJointCoatingSpec]]

The collection of FieldJointCoatingSpec instances included in this dataset.

field_joint_coatings: Optional[List[pdef.model.field_joint_coating.FieldJointCoating]]

The collection of FieldJointCoating instances included in this dataset.

fluid_props: Optional[List[pdef.model.fluid_prop.FluidProp]]

The collection of FluidProp instances included in this dataset.

meteoceans: Optional[List[pdef.model.meteocean.Meteocean]]

The collection of Meteocean instances included in this dataset.

operating_cycles: Optional[List[pdef.model.operating_cycle.OperatingCycle]]

The collection of OperatingCycle instances included in this dataset.

pdef_type: str = 'pdef'

Object pdef_type. Always set to pdef in this case.

Constraints and examples:
  • const = pdef

pdef_version: str = '2021-12'

The version of the PDEF schema used for this dataset. Always 2021-12 in this case.

Constraints and examples:
  • const = 2021-12

pipe_coating_pqts: Optional[List[pdef.model.pipe_coating_pqt.PipeCoatingPQT]]

The collection of PipeCoatingPQT instances included in this dataset.

pipe_coating_specs: Optional[List[pdef.model.pipe_coating_spec.PipeCoatingSpec]]

The collection of PipeCoatingSpec instances included in this dataset.

pipeline_specs: Optional[List[pdef.model.pipeline_spec.PipelineSpec]]

The collection of PipelineSpec instances included in this dataset.

pipelines: Optional[List[pdef.model.pipeline.Pipeline]]

The collection of Pipeline instances included in this dataset.

pressure_sets: Optional[List[pdef.model.pressure_set.PressureSet]]

The collection of PressureSet instances included in this dataset.

projects: Optional[List[pdef.model.project.Project]]

The collection of Project instances included in this dataset.

routes: Optional[List[pdef.model.route.Route]]

The collection of Route instances included in this dataset.

section_single_pipe_specs: Optional[List[pdef.model.section_single_pipe_spec.SectionSinglePipeSpec]]

The collection of SectionSinglePipeSpec instances included in this dataset.

sensor_datas: Optional[List[pdef.model.sensor_data.SensorData]]

The collection of SensorData instances included in this dataset.

solid_loads: Optional[List[pdef.model.solid_load.SolidLoad]]

The collection of SolidLoad instances included in this dataset.

temperature_sets: Optional[List[pdef.model.temperature_set.TemperatureSet]]

The collection of TemperatureSet instances included in this dataset.

trawlings: Optional[List[pdef.model.trawling.Trawling]]

The collection of Trawling instances included in this dataset.

vessels: Optional[List[pdef.model.vessel.Vessel]]

The collection of Vessel instances included in this dataset.

weld_ndt_pqts: Optional[List[pdef.model.weld_ndt_pqt.WeldNDTPQT]]

The collection of WeldNDTPQT instances included in this dataset.

weld_ndts: Optional[List[pdef.model.weld_ndt.WeldNDT]]

The collection of WeldNDT instances included in this dataset.

weld_pqts: Optional[List[pdef.model.weld_pqt.WeldPQT]]

The collection of WeldPQT instances included in this dataset.

weld_specs: Optional[List[pdef.model.weld_spec.WeldSpec]]

The collection of WeldSpec instances included in this dataset.

welds: Optional[List[pdef.model.weld.Weld]]

The collection of Weld instances included in this dataset.