osdu-python-models 0.5.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- osdu_models/__init__.py +0 -0
- osdu_models/abstract/__init__.py +2 -0
- osdu_models/abstract/abstract_access_control_list/__init__.py +2 -0
- osdu_models/abstract/abstract_access_control_list/v1_0_0.py +31 -0
- osdu_models/abstract/abstract_activity_parameter/__init__.py +2 -0
- osdu_models/abstract/abstract_activity_parameter/v1_0_0.py +113 -0
- osdu_models/abstract/abstract_activity_parameter/v1_1_0.py +117 -0
- osdu_models/abstract/abstract_activity_state/__init__.py +2 -0
- osdu_models/abstract/abstract_activity_state/v1_0_0.py +36 -0
- osdu_models/abstract/abstract_alias_names/__init__.py +2 -0
- osdu_models/abstract/abstract_alias_names/v1_0_0.py +45 -0
- osdu_models/abstract/abstract_any_crs_feature_collection/__init__.py +2 -0
- osdu_models/abstract/abstract_any_crs_feature_collection/v1_0_0.py +282 -0
- osdu_models/abstract/abstract_any_crs_feature_collection/v1_1_0.py +300 -0
- osdu_models/abstract/abstract_bin_grid/__init__.py +2 -0
- osdu_models/abstract/abstract_bin_grid/v1_0_0.py +103 -0
- osdu_models/abstract/abstract_bin_grid/v1_1_0.py +103 -0
- osdu_models/abstract/abstract_business_rule/__init__.py +2 -0
- osdu_models/abstract/abstract_business_rule/v1_0_0.py +69 -0
- osdu_models/abstract/abstract_collaboration_lifecycle_event/__init__.py +2 -0
- osdu_models/abstract/abstract_collaboration_lifecycle_event/v1_0_0.py +49 -0
- osdu_models/abstract/abstract_column_based_table/__init__.py +2 -0
- osdu_models/abstract/abstract_column_based_table/v1_0_0.py +94 -0
- osdu_models/abstract/abstract_column_based_table/v1_1_0.py +94 -0
- osdu_models/abstract/abstract_column_based_table/v1_2_0.py +103 -0
- osdu_models/abstract/abstract_column_based_table/v1_2_1.py +103 -0
- osdu_models/abstract/abstract_column_layer_grid_patch/__init__.py +2 -0
- osdu_models/abstract/abstract_column_layer_grid_patch/v1_0_0.py +94 -0
- osdu_models/abstract/abstract_common_resources/__init__.py +2 -0
- osdu_models/abstract/abstract_common_resources/v1_0_0.py +82 -0
- osdu_models/abstract/abstract_common_resources/v1_0_1.py +82 -0
- osdu_models/abstract/abstract_compression_info/__init__.py +2 -0
- osdu_models/abstract/abstract_compression_info/v1_0_0.py +32 -0
- osdu_models/abstract/abstract_compression_info/v1_1_0.py +44 -0
- osdu_models/abstract/abstract_contact/__init__.py +2 -0
- osdu_models/abstract/abstract_contact/v1_0_0.py +51 -0
- osdu_models/abstract/abstract_contact/v1_1_0.py +69 -0
- osdu_models/abstract/abstract_contact_user_profile/__init__.py +2 -0
- osdu_models/abstract/abstract_contact_user_profile/v1_0_0.py +27 -0
- osdu_models/abstract/abstract_coordinates/__init__.py +2 -0
- osdu_models/abstract/abstract_coordinates/v1_0_0.py +23 -0
- osdu_models/abstract/abstract_dataset/__init__.py +2 -0
- osdu_models/abstract/abstract_dataset/v1_0_0.py +78 -0
- osdu_models/abstract/abstract_dataset/v1_0_1.py +78 -0
- osdu_models/abstract/abstract_decision_quality_element/__init__.py +2 -0
- osdu_models/abstract/abstract_decision_quality_element/v1_0_0.py +51 -0
- osdu_models/abstract/abstract_downtime_context/__init__.py +2 -0
- osdu_models/abstract/abstract_downtime_context/v1_0_0.py +34 -0
- osdu_models/abstract/abstract_facet/__init__.py +2 -0
- osdu_models/abstract/abstract_facet/v1_0_0.py +31 -0
- osdu_models/abstract/abstract_facility/__init__.py +2 -0
- osdu_models/abstract/abstract_facility/v1_0_0.py +87 -0
- osdu_models/abstract/abstract_facility/v1_1_0.py +91 -0
- osdu_models/abstract/abstract_facility_event/__init__.py +2 -0
- osdu_models/abstract/abstract_facility_event/v1_0_0.py +32 -0
- osdu_models/abstract/abstract_facility_event/v1_1_0.py +36 -0
- osdu_models/abstract/abstract_facility_operator/__init__.py +2 -0
- osdu_models/abstract/abstract_facility_operator/v1_0_0.py +34 -0
- osdu_models/abstract/abstract_facility_operator/v1_1_0.py +38 -0
- osdu_models/abstract/abstract_facility_specification/__init__.py +2 -0
- osdu_models/abstract/abstract_facility_specification/v1_0_0.py +57 -0
- osdu_models/abstract/abstract_facility_state/__init__.py +2 -0
- osdu_models/abstract/abstract_facility_state/v1_0_0.py +32 -0
- osdu_models/abstract/abstract_facility_state/v1_1_0.py +36 -0
- osdu_models/abstract/abstract_facility_vertical_measurement/__init__.py +2 -0
- osdu_models/abstract/abstract_facility_vertical_measurement/v1_0_0.py +98 -0
- osdu_models/abstract/abstract_feature_collection/__init__.py +2 -0
- osdu_models/abstract/abstract_feature_collection/v1_0_0.py +227 -0
- osdu_models/abstract/abstract_file/__init__.py +2 -0
- osdu_models/abstract/abstract_file/v1_0_0.py +44 -0
- osdu_models/abstract/abstract_file/v1_0_1.py +44 -0
- osdu_models/abstract/abstract_file_collection/__init__.py +2 -0
- osdu_models/abstract/abstract_file_collection/v1_0_0.py +89 -0
- osdu_models/abstract/abstract_file_collection/v1_0_1.py +89 -0
- osdu_models/abstract/abstract_file_source_info/__init__.py +2 -0
- osdu_models/abstract/abstract_file_source_info/v1_0_0.py +92 -0
- osdu_models/abstract/abstract_file_source_info/v1_0_1.py +92 -0
- osdu_models/abstract/abstract_fluid_additive/__init__.py +2 -0
- osdu_models/abstract/abstract_fluid_additive/v1_0_0.py +79 -0
- osdu_models/abstract/abstract_generic_reservoir_unit/__init__.py +2 -0
- osdu_models/abstract/abstract_generic_reservoir_unit/v1_0_0.py +131 -0
- osdu_models/abstract/abstract_generic_reservoir_unit/v1_1_0.py +131 -0
- osdu_models/abstract/abstract_generic_reservoir_unit/v2_0_0.py +133 -0
- osdu_models/abstract/abstract_geo_basin_context/__init__.py +2 -0
- osdu_models/abstract/abstract_geo_basin_context/v1_0_0.py +28 -0
- osdu_models/abstract/abstract_geo_context/__init__.py +2 -0
- osdu_models/abstract/abstract_geo_context/v1_0_0.py +31 -0
- osdu_models/abstract/abstract_geo_field_context/__init__.py +2 -0
- osdu_models/abstract/abstract_geo_field_context/v1_0_0.py +26 -0
- osdu_models/abstract/abstract_geo_play_context/__init__.py +2 -0
- osdu_models/abstract/abstract_geo_play_context/v1_0_0.py +28 -0
- osdu_models/abstract/abstract_geo_political_context/__init__.py +2 -0
- osdu_models/abstract/abstract_geo_political_context/v1_0_0.py +33 -0
- osdu_models/abstract/abstract_geo_prospect_context/__init__.py +2 -0
- osdu_models/abstract/abstract_geo_prospect_context/v1_0_0.py +31 -0
- osdu_models/abstract/abstract_geologic_unit_interpretation/__init__.py +2 -0
- osdu_models/abstract/abstract_geologic_unit_interpretation/v1_0_0.py +45 -0
- osdu_models/abstract/abstract_geologic_unit_interpretation/v1_1_0.py +94 -0
- osdu_models/abstract/abstract_grid_representation/__init__.py +2 -0
- osdu_models/abstract/abstract_grid_representation/v1_0_0.py +117 -0
- osdu_models/abstract/abstract_ijk_grid_flow_simulation_boundary_connection/__init__.py +2 -0
- osdu_models/abstract/abstract_ijk_grid_flow_simulation_boundary_connection/v1_0_0.py +71 -0
- osdu_models/abstract/abstract_ijk_grid_patch/__init__.py +2 -0
- osdu_models/abstract/abstract_ijk_grid_patch/v1_0_0.py +32 -0
- osdu_models/abstract/abstract_interpretation/__init__.py +2 -0
- osdu_models/abstract/abstract_interpretation/v1_0_0.py +51 -0
- osdu_models/abstract/abstract_interpretation/v1_1_0.py +55 -0
- osdu_models/abstract/abstract_label_and_value/__init__.py +2 -0
- osdu_models/abstract/abstract_label_and_value/v1_0_0.py +109 -0
- osdu_models/abstract/abstract_legal_tags/__init__.py +2 -0
- osdu_models/abstract/abstract_legal_tags/v1_0_0.py +31 -0
- osdu_models/abstract/abstract_location_uncertainty/__init__.py +2 -0
- osdu_models/abstract/abstract_location_uncertainty/v1_0_0.py +23 -0
- osdu_models/abstract/abstract_master/__init__.py +2 -0
- osdu_models/abstract/abstract_master/v1_0_0.py +47 -0
- osdu_models/abstract/abstract_master/v1_1_0.py +47 -0
- osdu_models/abstract/abstract_master/v1_2_0.py +54 -0
- osdu_models/abstract/abstract_project/__init__.py +2 -0
- osdu_models/abstract/abstract_project/v1_0_0.py +244 -0
- osdu_models/abstract/abstract_project_activity/__init__.py +2 -0
- osdu_models/abstract/abstract_project_activity/v1_0_0.py +40 -0
- osdu_models/abstract/abstract_project_activity/v1_1_0.py +51 -0
- osdu_models/abstract/abstract_project_activity/v1_2_0.py +51 -0
- osdu_models/abstract/abstract_property_type/__init__.py +2 -0
- osdu_models/abstract/abstract_property_type/v1_0_0.py +34 -0
- osdu_models/abstract/abstract_proppant_agent/__init__.py +2 -0
- osdu_models/abstract/abstract_proppant_agent/v1_0_0.py +233 -0
- osdu_models/abstract/abstract_ptcondition/__init__.py +2 -0
- osdu_models/abstract/abstract_ptcondition/v1_0_0.py +23 -0
- osdu_models/abstract/abstract_ptcondition/v1_1_0.py +35 -0
- osdu_models/abstract/abstract_quality_metric/__init__.py +2 -0
- osdu_models/abstract/abstract_quality_metric/v1_0_0.py +59 -0
- osdu_models/abstract/abstract_quality_metric/v1_1_0.py +63 -0
- osdu_models/abstract/abstract_reference_level/__init__.py +2 -0
- osdu_models/abstract/abstract_reference_level/v1_0_0.py +94 -0
- osdu_models/abstract/abstract_reference_property_type/__init__.py +2 -0
- osdu_models/abstract/abstract_reference_property_type/v1_1_0.py +72 -0
- osdu_models/abstract/abstract_reference_property_type/v1_2_0.py +89 -0
- osdu_models/abstract/abstract_reference_property_type/v1_2_1.py +91 -0
- osdu_models/abstract/abstract_reference_property_type/v1_2_2.py +91 -0
- osdu_models/abstract/abstract_remark/__init__.py +2 -0
- osdu_models/abstract/abstract_remark/v1_0_0.py +33 -0
- osdu_models/abstract/abstract_representation/__init__.py +2 -0
- osdu_models/abstract/abstract_representation/v1_0_0.py +104 -0
- osdu_models/abstract/abstract_sample_properties/__init__.py +2 -0
- osdu_models/abstract/abstract_sample_properties/v1_0_0.py +15 -0
- osdu_models/abstract/abstract_sample_properties/v1_1_0.py +44 -0
- osdu_models/abstract/abstract_seismic_precision/__init__.py +2 -0
- osdu_models/abstract/abstract_seismic_precision/v1_0_0.py +28 -0
- osdu_models/abstract/abstract_spatial_location/__init__.py +2 -0
- osdu_models/abstract/abstract_spatial_location/v1_0_0.py +94 -0
- osdu_models/abstract/abstract_spatial_location/v1_1_0.py +94 -0
- osdu_models/abstract/abstract_spatial_reference/__init__.py +2 -0
- osdu_models/abstract/abstract_spatial_reference/v1_0_0.py +75 -0
- osdu_models/abstract/abstract_stim_material_quantity/__init__.py +2 -0
- osdu_models/abstract/abstract_stim_material_quantity/v1_0_0.py +66 -0
- osdu_models/abstract/abstract_storage_location/__init__.py +2 -0
- osdu_models/abstract/abstract_storage_location/v1_0_0.py +47 -0
- osdu_models/abstract/abstract_technical_assurance/__init__.py +2 -0
- osdu_models/abstract/abstract_technical_assurance/v1_0_0.py +158 -0
- osdu_models/abstract/abstract_technical_assurance/v1_1_0.py +200 -0
- osdu_models/abstract/abstract_technical_assurance/v1_2_0.py +290 -0
- osdu_models/abstract/abstract_time_series_link/__init__.py +2 -0
- osdu_models/abstract/abstract_time_series_link/v1_0_0.py +31 -0
- osdu_models/abstract/abstract_trigger/__init__.py +2 -0
- osdu_models/abstract/abstract_trigger/v1_0_0.py +35 -0
- osdu_models/abstract/abstract_tubular_component_bend/__init__.py +2 -0
- osdu_models/abstract/abstract_tubular_component_bend/v1_0_0.py +23 -0
- osdu_models/abstract/abstract_tubular_component_bit_record/__init__.py +2 -0
- osdu_models/abstract/abstract_tubular_component_bit_record/v1_1_0.py +307 -0
- osdu_models/abstract/abstract_tubular_component_connection/__init__.py +2 -0
- osdu_models/abstract/abstract_tubular_component_connection/v1_0_0.py +81 -0
- osdu_models/abstract/abstract_tubular_component_hole_opener/__init__.py +2 -0
- osdu_models/abstract/abstract_tubular_component_hole_opener/v1_0_0.py +54 -0
- osdu_models/abstract/abstract_tubular_component_jar/__init__.py +2 -0
- osdu_models/abstract/abstract_tubular_component_jar/v1_0_0.py +55 -0
- osdu_models/abstract/abstract_tubular_component_motor/__init__.py +2 -0
- osdu_models/abstract/abstract_tubular_component_motor/v1_0_0.py +97 -0
- osdu_models/abstract/abstract_tubular_component_pressure_loss/__init__.py +2 -0
- osdu_models/abstract/abstract_tubular_component_pressure_loss/v1_0_0.py +23 -0
- osdu_models/abstract/abstract_tubular_component_rss/__init__.py +2 -0
- osdu_models/abstract/abstract_tubular_component_rss/v1_0_0.py +107 -0
- osdu_models/abstract/abstract_tubular_component_stabiliser/__init__.py +2 -0
- osdu_models/abstract/abstract_tubular_component_stabiliser/v1_0_0.py +90 -0
- osdu_models/abstract/abstract_unstructured_column_layer_grid_patch/__init__.py +2 -0
- osdu_models/abstract/abstract_unstructured_column_layer_grid_patch/v1_0_0.py +29 -0
- osdu_models/abstract/abstract_unstructured_grid_patch/__init__.py +2 -0
- osdu_models/abstract/abstract_unstructured_grid_patch/v1_0_0.py +36 -0
- osdu_models/abstract/abstract_vector_header_mapping/__init__.py +2 -0
- osdu_models/abstract/abstract_vector_header_mapping/v1_0_0.py +85 -0
- osdu_models/abstract/abstract_vector_header_mapping/v1_1_0.py +236 -0
- osdu_models/abstract/abstract_well_license_condition/__init__.py +2 -0
- osdu_models/abstract/abstract_well_license_condition/v1_0_0.py +165 -0
- osdu_models/abstract/abstract_well_license_service/__init__.py +2 -0
- osdu_models/abstract/abstract_well_license_service/v1_0_0.py +101 -0
- osdu_models/abstract/abstract_well_license_status/__init__.py +2 -0
- osdu_models/abstract/abstract_well_license_status/v1_0_0.py +67 -0
- osdu_models/abstract/abstract_well_license_violation/__init__.py +2 -0
- osdu_models/abstract/abstract_well_license_violation/v1_0_0.py +105 -0
- osdu_models/abstract/abstract_wellbore_drilling_reason/__init__.py +2 -0
- osdu_models/abstract/abstract_wellbore_drilling_reason/v1_0_0.py +32 -0
- osdu_models/abstract/abstract_wellbore_drilling_reason/v1_1_0.py +43 -0
- osdu_models/abstract/abstract_wellbore_drilling_reason/v1_1_1.py +43 -0
- osdu_models/abstract/abstract_work_product_component/__init__.py +2 -0
- osdu_models/abstract/abstract_work_product_component/v1_0_0.py +84 -0
- osdu_models/abstract/abstract_work_product_component/v1_1_0.py +84 -0
- osdu_models/abstract/abstract_wpcactivity/__init__.py +2 -0
- osdu_models/abstract/abstract_wpcactivity/v1_0_0.py +82 -0
- osdu_models/abstract/abstract_wpcactivity/v1_1_0.py +93 -0
- osdu_models/abstract/abstract_wpcactivity/v1_2_0.py +93 -0
- osdu_models/abstract/abstract_wpcactivity/v1_2_1.py +93 -0
- osdu_models/abstract/abstract_wpcgroup_type/__init__.py +2 -0
- osdu_models/abstract/abstract_wpcgroup_type/v1_0_0.py +72 -0
- osdu_models/abstract/abstract_wpcgroup_type/v1_1_0.py +97 -0
- osdu_models/abstract/abstract_wpcgroup_type/v1_2_0.py +97 -0
- osdu_models/dataset/__init__.py +2 -0
- osdu_models/dataset/connected_source_generic/__init__.py +2 -0
- osdu_models/dataset/connected_source_generic/v1_0_0.py +176 -0
- osdu_models/dataset/connected_source_generic/v1_0_1.py +176 -0
- osdu_models/dataset/etpdataspace/__init__.py +2 -0
- osdu_models/dataset/etpdataspace/v1_0_0.py +174 -0
- osdu_models/dataset/etpdataspace/v1_0_1.py +174 -0
- osdu_models/dataset/file_collection_bluware_open_vds/__init__.py +2 -0
- osdu_models/dataset/file_collection_bluware_open_vds/v1_0_0.py +220 -0
- osdu_models/dataset/file_collection_bluware_open_vds/v1_1_0.py +264 -0
- osdu_models/dataset/file_collection_bluware_open_vds/v1_2_0.py +264 -0
- osdu_models/dataset/file_collection_epc/__init__.py +2 -0
- osdu_models/dataset/file_collection_epc/v1_0_0.py +167 -0
- osdu_models/dataset/file_collection_epc/v1_0_1.py +167 -0
- osdu_models/dataset/file_collection_epc/v1_0_2.py +167 -0
- osdu_models/dataset/file_collection_esri_shape/__init__.py +2 -0
- osdu_models/dataset/file_collection_esri_shape/v1_0_0.py +221 -0
- osdu_models/dataset/file_collection_esri_shape/v1_1_0.py +221 -0
- osdu_models/dataset/file_collection_generic/__init__.py +2 -0
- osdu_models/dataset/file_collection_generic/v1_0_0.py +214 -0
- osdu_models/dataset/file_collection_generic/v1_1_0.py +214 -0
- osdu_models/dataset/file_collection_sega/__init__.py +2 -0
- osdu_models/dataset/file_collection_sega/v1_0_0.py +304 -0
- osdu_models/dataset/file_collection_sega/v1_1_0.py +455 -0
- osdu_models/dataset/file_collection_segb/__init__.py +2 -0
- osdu_models/dataset/file_collection_segb/v1_0_0.py +304 -0
- osdu_models/dataset/file_collection_segb/v1_1_0.py +455 -0
- osdu_models/dataset/file_collection_segd/__init__.py +2 -0
- osdu_models/dataset/file_collection_segd/v1_0_0.py +308 -0
- osdu_models/dataset/file_collection_segd/v1_1_0.py +313 -0
- osdu_models/dataset/file_collection_segd/v1_2_0.py +464 -0
- osdu_models/dataset/file_collection_segy/__init__.py +2 -0
- osdu_models/dataset/file_collection_segy/v1_0_0.py +287 -0
- osdu_models/dataset/file_collection_segy/v1_1_0.py +292 -0
- osdu_models/dataset/file_collection_segy/v1_2_0.py +464 -0
- osdu_models/dataset/file_collection_segy/v1_3_0.py +464 -0
- osdu_models/dataset/file_collection_slb_open_zgy/__init__.py +2 -0
- osdu_models/dataset/file_collection_slb_open_zgy/v1_0_0.py +214 -0
- osdu_models/dataset/file_collection_slb_open_zgy/v1_1_0.py +224 -0
- osdu_models/dataset/file_collection_slb_open_zgy/v1_2_0.py +224 -0
- osdu_models/dataset/file_collection_tgs_mdio/__init__.py +2 -0
- osdu_models/dataset/file_collection_tgs_mdio/v1_0_0.py +262 -0
- osdu_models/dataset/file_compressed_vector_headers/__init__.py +2 -0
- osdu_models/dataset/file_compressed_vector_headers/v1_0_0.py +255 -0
- osdu_models/dataset/file_compressed_vector_headers/v1_1_0.py +418 -0
- osdu_models/dataset/file_eml/__init__.py +2 -0
- osdu_models/dataset/file_eml/v1_0_0.py +169 -0
- osdu_models/dataset/file_eml/v1_1_0.py +169 -0
- osdu_models/dataset/file_generic/__init__.py +2 -0
- osdu_models/dataset/file_generic/v1_0_0.py +169 -0
- osdu_models/dataset/file_generic/v1_1_0.py +169 -0
- osdu_models/dataset/file_geo_json/__init__.py +2 -0
- osdu_models/dataset/file_geo_json/v1_0_0.py +169 -0
- osdu_models/dataset/file_geo_json/v1_1_0.py +169 -0
- osdu_models/dataset/file_hdf5/__init__.py +2 -0
- osdu_models/dataset/file_hdf5/v1_0_0.py +169 -0
- osdu_models/dataset/file_hdf5/v1_1_0.py +169 -0
- osdu_models/dataset/file_image_jpeg/__init__.py +2 -0
- osdu_models/dataset/file_image_jpeg/v1_0_0.py +169 -0
- osdu_models/dataset/file_image_jpeg/v1_1_0.py +169 -0
- osdu_models/dataset/file_image_png/__init__.py +2 -0
- osdu_models/dataset/file_image_png/v1_0_0.py +169 -0
- osdu_models/dataset/file_image_png/v1_1_0.py +169 -0
- osdu_models/dataset/file_image_tiff/__init__.py +2 -0
- osdu_models/dataset/file_image_tiff/v1_0_0.py +169 -0
- osdu_models/dataset/file_image_tiff/v1_1_0.py +169 -0
- osdu_models/dataset/file_image_world_file/__init__.py +2 -0
- osdu_models/dataset/file_image_world_file/v1_0_0.py +176 -0
- osdu_models/dataset/file_image_world_file/v1_1_0.py +176 -0
- osdu_models/dataset/file_ogc_geo_tiff/__init__.py +2 -0
- osdu_models/dataset/file_ogc_geo_tiff/v1_0_0.py +219 -0
- osdu_models/dataset/file_ogc_geo_tiff/v1_1_0.py +219 -0
- osdu_models/dataset/file_prodml/__init__.py +2 -0
- osdu_models/dataset/file_prodml/v1_0_0.py +169 -0
- osdu_models/dataset/file_prodml/v1_1_0.py +169 -0
- osdu_models/dataset/file_seismic_histogram/__init__.py +2 -0
- osdu_models/dataset/file_seismic_histogram/v1_0_0.py +179 -0
- osdu_models/dataset/file_seismic_histogram/v1_1_0.py +179 -0
- osdu_models/dataset/file_seismic_line_geometry/__init__.py +2 -0
- osdu_models/dataset/file_seismic_line_geometry/v1_0_0.py +179 -0
- osdu_models/dataset/file_seismic_line_geometry/v1_1_0.py +179 -0
- osdu_models/dataset/file_tabular_data/__init__.py +2 -0
- osdu_models/dataset/file_tabular_data/v1_0_0.py +264 -0
- osdu_models/dataset/file_witsml/__init__.py +2 -0
- osdu_models/dataset/file_witsml/v1_0_0.py +175 -0
- osdu_models/dataset/file_witsml/v1_1_0.py +175 -0
- osdu_models/dataset/physical_media/__init__.py +2 -0
- osdu_models/dataset/physical_media/v1_0_0.py +194 -0
- osdu_models/dataset/physical_media/v1_0_1.py +194 -0
- osdu_models/masterdata/__init__.py +2 -0
- osdu_models/masterdata/activity_plan/__init__.py +2 -0
- osdu_models/masterdata/activity_plan/v1_0_0.py +236 -0
- osdu_models/masterdata/activity_plan/v1_1_0.py +240 -0
- osdu_models/masterdata/activity_plan/v1_2_0.py +240 -0
- osdu_models/masterdata/activity_template/__init__.py +2 -0
- osdu_models/masterdata/activity_template/v1_0_0.py +111 -0
- osdu_models/masterdata/activity_template/v1_1_0.py +111 -0
- osdu_models/masterdata/activity_template_arc/__init__.py +2 -0
- osdu_models/masterdata/activity_template_arc/v1_0_0.py +89 -0
- osdu_models/masterdata/activity_template_arc/v1_1_0.py +89 -0
- osdu_models/masterdata/agreement/__init__.py +2 -0
- osdu_models/masterdata/agreement/v1_0_0.py +113 -0
- osdu_models/masterdata/agreement/v1_1_0.py +121 -0
- osdu_models/masterdata/basin/__init__.py +2 -0
- osdu_models/masterdata/basin/v1_0_0.py +53 -0
- osdu_models/masterdata/basin/v1_1_0.py +53 -0
- osdu_models/masterdata/basin/v1_2_0.py +61 -0
- osdu_models/masterdata/bharun/__init__.py +2 -0
- osdu_models/masterdata/bharun/v1_0_0.py +1353 -0
- osdu_models/masterdata/bharun/v1_1_0.py +1353 -0
- osdu_models/masterdata/bharun/v1_2_0.py +1357 -0
- osdu_models/masterdata/bharun/v2_0_0.py +1504 -0
- osdu_models/masterdata/bharun/v2_1_0.py +1539 -0
- osdu_models/masterdata/blowout_preventer/__init__.py +2 -0
- osdu_models/masterdata/blowout_preventer/v1_0_0.py +319 -0
- osdu_models/masterdata/blowout_preventer_component/__init__.py +2 -0
- osdu_models/masterdata/blowout_preventer_component/v1_0_0.py +162 -0
- osdu_models/masterdata/boundary_feature/__init__.py +2 -0
- osdu_models/masterdata/boundary_feature/v1_0_0.py +23 -0
- osdu_models/masterdata/boundary_feature/v1_1_0.py +23 -0
- osdu_models/masterdata/business_associate/__init__.py +2 -0
- osdu_models/masterdata/business_associate/v1_0_0.py +348 -0
- osdu_models/masterdata/business_decision/__init__.py +2 -0
- osdu_models/masterdata/business_decision/v1_0_0.py +188 -0
- osdu_models/masterdata/casing_design/__init__.py +2 -0
- osdu_models/masterdata/casing_design/v1_0_0.py +59 -0
- osdu_models/masterdata/casing_design/v1_1_0.py +59 -0
- osdu_models/masterdata/casing_design/v1_2_0.py +63 -0
- osdu_models/masterdata/collaboration_project/__init__.py +2 -0
- osdu_models/masterdata/collaboration_project/v1_0_0.py +107 -0
- osdu_models/masterdata/column_based_table_template/__init__.py +2 -0
- osdu_models/masterdata/column_based_table_template/v1_0_0.py +46 -0
- osdu_models/masterdata/column_based_table_template/v1_0_1.py +46 -0
- osdu_models/masterdata/connected_source_data_job/__init__.py +2 -0
- osdu_models/masterdata/connected_source_data_job/v1_0_0.py +182 -0
- osdu_models/masterdata/connected_source_data_job/v1_1_0.py +197 -0
- osdu_models/masterdata/connected_source_data_job/v1_2_0.py +209 -0
- osdu_models/masterdata/connected_source_data_job/v1_3_0.py +183 -0
- osdu_models/masterdata/connected_source_data_job/v1_4_0.py +186 -0
- osdu_models/masterdata/connected_source_data_job/v1_5_0.py +222 -0
- osdu_models/masterdata/connected_source_data_job/v1_6_0.py +228 -0
- osdu_models/masterdata/connected_source_data_job/v1_7_0.py +258 -0
- osdu_models/masterdata/connected_source_data_job/v1_8_0.py +285 -0
- osdu_models/masterdata/connected_source_registry_entry/__init__.py +2 -0
- osdu_models/masterdata/connected_source_registry_entry/v1_0_0.py +180 -0
- osdu_models/masterdata/connected_source_registry_entry/v1_1_0.py +288 -0
- osdu_models/masterdata/connected_source_registry_entry/v1_2_0.py +289 -0
- osdu_models/masterdata/connected_source_registry_entry/v1_3_0.py +292 -0
- osdu_models/masterdata/connected_source_registry_entry/v1_4_0.py +316 -0
- osdu_models/masterdata/connected_source_registry_entry/v1_5_0.py +386 -0
- osdu_models/masterdata/coring/__init__.py +2 -0
- osdu_models/masterdata/coring/v1_0_0.py +332 -0
- osdu_models/masterdata/coring/v1_1_0.py +332 -0
- osdu_models/masterdata/coring/v1_1_1.py +332 -0
- osdu_models/masterdata/evaluation_plan/__init__.py +2 -0
- osdu_models/masterdata/evaluation_plan/v1_0_0.py +232 -0
- osdu_models/masterdata/evaluation_plan/v1_1_0.py +232 -0
- osdu_models/masterdata/field/__init__.py +2 -0
- osdu_models/masterdata/field/v1_0_0.py +44 -0
- osdu_models/masterdata/field/v1_1_0.py +44 -0
- osdu_models/masterdata/fluids_program/__init__.py +2 -0
- osdu_models/masterdata/fluids_program/v1_0_0.py +262 -0
- osdu_models/masterdata/fluids_program/v1_1_0.py +262 -0
- osdu_models/masterdata/fluids_program/v1_2_0.py +270 -0
- osdu_models/masterdata/fluids_program/v1_3_0.py +296 -0
- osdu_models/masterdata/fluids_report/__init__.py +2 -0
- osdu_models/masterdata/fluids_report/v1_0_0.py +458 -0
- osdu_models/masterdata/fluids_report/v1_1_0.py +465 -0
- osdu_models/masterdata/fluids_report/v1_2_0.py +465 -0
- osdu_models/masterdata/generic_facility/__init__.py +2 -0
- osdu_models/masterdata/generic_facility/v1_0_0.py +20 -0
- osdu_models/masterdata/generic_facility/v1_0_1.py +20 -0
- osdu_models/masterdata/generic_site/__init__.py +2 -0
- osdu_models/masterdata/generic_site/v1_0_0.py +35 -0
- osdu_models/masterdata/generic_site/v1_1_0.py +42 -0
- osdu_models/masterdata/generic_site/v1_1_1.py +42 -0
- osdu_models/masterdata/geo_political_entity/__init__.py +2 -0
- osdu_models/masterdata/geo_political_entity/v1_0_0.py +72 -0
- osdu_models/masterdata/geo_political_entity/v1_1_0.py +72 -0
- osdu_models/masterdata/geometric_target_set/__init__.py +2 -0
- osdu_models/masterdata/geometric_target_set/v1_0_0.py +190 -0
- osdu_models/masterdata/geometric_target_set/v1_1_0.py +190 -0
- osdu_models/masterdata/gravity_magnetic_acquisition_survey/__init__.py +2 -0
- osdu_models/masterdata/gravity_magnetic_acquisition_survey/v1_0_0.py +271 -0
- osdu_models/masterdata/hole_section/__init__.py +2 -0
- osdu_models/masterdata/hole_section/v1_0_0.py +45 -0
- osdu_models/masterdata/hole_section/v1_1_0.py +52 -0
- osdu_models/masterdata/hole_section/v1_2_0.py +105 -0
- osdu_models/masterdata/hole_section/v1_3_0.py +105 -0
- osdu_models/masterdata/hole_section/v1_4_0.py +122 -0
- osdu_models/masterdata/isolated_interval/__init__.py +2 -0
- osdu_models/masterdata/isolated_interval/v1_0_0.py +110 -0
- osdu_models/masterdata/isolated_interval/v1_1_0.py +110 -0
- osdu_models/masterdata/isolated_interval/v1_2_0.py +211 -0
- osdu_models/masterdata/model_feature/__init__.py +2 -0
- osdu_models/masterdata/model_feature/v1_0_0.py +23 -0
- osdu_models/masterdata/model_feature/v1_1_0.py +23 -0
- osdu_models/masterdata/operations_report/__init__.py +2 -0
- osdu_models/masterdata/operations_report/v1_0_0.py +1784 -0
- osdu_models/masterdata/operations_report/v1_1_0.py +2014 -0
- osdu_models/masterdata/operations_report/v1_2_0.py +2026 -0
- osdu_models/masterdata/operations_report/v1_3_0.py +2030 -0
- osdu_models/masterdata/operations_report/v1_4_0.py +2030 -0
- osdu_models/masterdata/organisation/__init__.py +2 -0
- osdu_models/masterdata/organisation/v1_0_0.py +61 -0
- osdu_models/masterdata/organisation/v1_1_0.py +68 -0
- osdu_models/masterdata/organisation/v1_2_0.py +68 -0
- osdu_models/masterdata/perforation_interval/__init__.py +2 -0
- osdu_models/masterdata/perforation_interval/v1_0_0.py +305 -0
- osdu_models/masterdata/perforation_interval/v1_1_0.py +305 -0
- osdu_models/masterdata/perforation_interval/v1_2_0.py +444 -0
- osdu_models/masterdata/perforation_job/__init__.py +2 -0
- osdu_models/masterdata/perforation_job/v1_0_0.py +259 -0
- osdu_models/masterdata/perforation_job/v1_1_0.py +259 -0
- osdu_models/masterdata/perforation_job/v1_2_0.py +263 -0
- osdu_models/masterdata/planned_cement_job/__init__.py +2 -0
- osdu_models/masterdata/planned_cement_job/v1_0_0.py +559 -0
- osdu_models/masterdata/planned_cement_job/v1_1_0.py +568 -0
- osdu_models/masterdata/planned_cement_job/v1_2_0.py +568 -0
- osdu_models/masterdata/planned_cement_job/v1_3_0.py +580 -0
- osdu_models/masterdata/planned_cement_job/v1_4_0.py +615 -0
- osdu_models/masterdata/play/__init__.py +2 -0
- osdu_models/masterdata/play/v1_0_0.py +51 -0
- osdu_models/masterdata/play/v1_1_0.py +51 -0
- osdu_models/masterdata/prospect/__init__.py +2 -0
- osdu_models/masterdata/prospect/v1_0_0.py +53 -0
- osdu_models/masterdata/prospect/v1_1_0.py +53 -0
- osdu_models/masterdata/reference_level/__init__.py +2 -0
- osdu_models/masterdata/reference_level/v1_0_0.py +32 -0
- osdu_models/masterdata/reference_level/v1_1_0.py +32 -0
- osdu_models/masterdata/reservoir/__init__.py +2 -0
- osdu_models/masterdata/reservoir/v0_0_0.py +23 -0
- osdu_models/masterdata/reservoir/v1_0_0.py +38 -0
- osdu_models/masterdata/reservoir/v1_1_0.py +38 -0
- osdu_models/masterdata/reservoir/v1_2_0.py +43 -0
- osdu_models/masterdata/reservoir/v2_0_0.py +38 -0
- osdu_models/masterdata/reservoir_segment/__init__.py +2 -0
- osdu_models/masterdata/reservoir_segment/v0_0_0.py +30 -0
- osdu_models/masterdata/reservoir_segment/v1_0_0.py +60 -0
- osdu_models/masterdata/reservoir_segment/v1_1_0.py +292 -0
- osdu_models/masterdata/reservoir_segment/v1_2_0.py +298 -0
- osdu_models/masterdata/reservoir_segment/v2_0_0.py +83 -0
- osdu_models/masterdata/rig/__init__.py +2 -0
- osdu_models/masterdata/rig/v1_0_0.py +38 -0
- osdu_models/masterdata/rig/v1_1_0.py +38 -0
- osdu_models/masterdata/rig/v1_2_0.py +38 -0
- osdu_models/masterdata/rig_utilization/__init__.py +2 -0
- osdu_models/masterdata/rig_utilization/v1_0_0.py +119 -0
- osdu_models/masterdata/rig_utilization/v1_1_0.py +119 -0
- osdu_models/masterdata/risk/__init__.py +2 -0
- osdu_models/masterdata/risk/v1_0_0.py +284 -0
- osdu_models/masterdata/risk/v1_1_0.py +284 -0
- osdu_models/masterdata/risk/v1_2_0.py +317 -0
- osdu_models/masterdata/rock_sample/__init__.py +2 -0
- osdu_models/masterdata/rock_sample/v1_0_0.py +187 -0
- osdu_models/masterdata/rock_sample/v1_1_0.py +187 -0
- osdu_models/masterdata/rock_sample/v1_1_1.py +187 -0
- osdu_models/masterdata/rock_volume_feature/__init__.py +2 -0
- osdu_models/masterdata/rock_volume_feature/v1_0_0.py +23 -0
- osdu_models/masterdata/rock_volume_feature/v1_1_0.py +23 -0
- osdu_models/masterdata/sample/__init__.py +2 -0
- osdu_models/masterdata/sample/v1_0_0.py +19 -0
- osdu_models/masterdata/sample/v2_0_0.py +740 -0
- osdu_models/masterdata/sample/v2_1_0.py +740 -0
- osdu_models/masterdata/sample/v3_0_0.py +775 -0
- osdu_models/masterdata/sample_acquisition_job/__init__.py +2 -0
- osdu_models/masterdata/sample_acquisition_job/v1_0_0.py +31 -0
- osdu_models/masterdata/sample_chain_of_custody_event/__init__.py +2 -0
- osdu_models/masterdata/sample_chain_of_custody_event/v1_0_0.py +189 -0
- osdu_models/masterdata/sample_chain_of_custody_event/v1_1_0.py +189 -0
- osdu_models/masterdata/sample_container/__init__.py +2 -0
- osdu_models/masterdata/sample_container/v1_0_0.py +188 -0
- osdu_models/masterdata/seismic2_dinterpretation_set/__init__.py +2 -0
- osdu_models/masterdata/seismic2_dinterpretation_set/v1_0_0.py +43 -0
- osdu_models/masterdata/seismic2_dinterpretation_set/v1_1_0.py +50 -0
- osdu_models/masterdata/seismic2_dinterpretation_set/v1_2_0.py +50 -0
- osdu_models/masterdata/seismic3_dinterpretation_set/__init__.py +2 -0
- osdu_models/masterdata/seismic3_dinterpretation_set/v1_0_0.py +29 -0
- osdu_models/masterdata/seismic3_dinterpretation_set/v1_1_0.py +32 -0
- osdu_models/masterdata/seismic3_dinterpretation_set/v1_2_0.py +32 -0
- osdu_models/masterdata/seismic_acquisition_survey/__init__.py +2 -0
- osdu_models/masterdata/seismic_acquisition_survey/v1_0_0.py +107 -0
- osdu_models/masterdata/seismic_acquisition_survey/v1_1_0.py +247 -0
- osdu_models/masterdata/seismic_acquisition_survey/v1_2_0.py +286 -0
- osdu_models/masterdata/seismic_acquisition_survey/v1_3_0.py +295 -0
- osdu_models/masterdata/seismic_acquisition_survey/v1_4_0.py +295 -0
- osdu_models/masterdata/seismic_processing_project/__init__.py +2 -0
- osdu_models/masterdata/seismic_processing_project/v1_0_0.py +31 -0
- osdu_models/masterdata/seismic_processing_project/v1_1_0.py +34 -0
- osdu_models/masterdata/seismic_processing_project/v1_2_0.py +43 -0
- osdu_models/masterdata/seismic_processing_project/v1_3_0.py +43 -0
- osdu_models/masterdata/seismic_processing_project/v1_4_0.py +64 -0
- osdu_models/masterdata/storage_facility/__init__.py +2 -0
- osdu_models/masterdata/storage_facility/v1_0_0.py +24 -0
- osdu_models/masterdata/storage_facility/v1_1_0.py +24 -0
- osdu_models/masterdata/storage_facility/v1_2_0.py +24 -0
- osdu_models/masterdata/survey_program/__init__.py +2 -0
- osdu_models/masterdata/survey_program/v1_0_0.py +104 -0
- osdu_models/masterdata/survey_program/v1_1_0.py +130 -0
- osdu_models/masterdata/survey_program/v1_2_0.py +137 -0
- osdu_models/masterdata/tubular_assembly/__init__.py +2 -0
- osdu_models/masterdata/tubular_assembly/v2_0_0.py +286 -0
- osdu_models/masterdata/tubular_assembly/v2_1_0.py +398 -0
- osdu_models/masterdata/tubular_component/__init__.py +2 -0
- osdu_models/masterdata/tubular_component/v2_0_0.py +188 -0
- osdu_models/masterdata/tubular_component/v2_1_0.py +382 -0
- osdu_models/masterdata/tubular_component/v2_2_0.py +482 -0
- osdu_models/masterdata/tubular_component/v2_3_0.py +533 -0
- osdu_models/masterdata/tubular_component/v2_4_0.py +587 -0
- osdu_models/masterdata/tubular_external_component/__init__.py +2 -0
- osdu_models/masterdata/tubular_external_component/v2_0_0.py +132 -0
- osdu_models/masterdata/tubular_umbilical/__init__.py +2 -0
- osdu_models/masterdata/tubular_umbilical/v2_0_0.py +130 -0
- osdu_models/masterdata/user_profile/__init__.py +2 -0
- osdu_models/masterdata/user_profile/v1_0_0.py +133 -0
- osdu_models/masterdata/well/__init__.py +2 -0
- osdu_models/masterdata/well/v1_0_0.py +59 -0
- osdu_models/masterdata/well/v1_1_0.py +165 -0
- osdu_models/masterdata/well/v1_2_0.py +165 -0
- osdu_models/masterdata/well/v1_3_0.py +165 -0
- osdu_models/masterdata/well/v1_4_0.py +189 -0
- osdu_models/masterdata/well_activity/__init__.py +2 -0
- osdu_models/masterdata/well_activity/v1_0_0.py +131 -0
- osdu_models/masterdata/well_activity/v1_1_0.py +163 -0
- osdu_models/masterdata/well_activity/v1_2_0.py +167 -0
- osdu_models/masterdata/well_activity_program/__init__.py +2 -0
- osdu_models/masterdata/well_activity_program/v1_0_0.py +157 -0
- osdu_models/masterdata/well_activity_program/v1_1_0.py +157 -0
- osdu_models/masterdata/well_barrier_element_test/__init__.py +2 -0
- osdu_models/masterdata/well_barrier_element_test/v1_0_0.py +383 -0
- osdu_models/masterdata/well_barrier_element_test/v1_1_0.py +383 -0
- osdu_models/masterdata/well_barrier_element_test/v1_2_0.py +385 -0
- osdu_models/masterdata/well_barrier_element_test/v1_3_0.py +592 -0
- osdu_models/masterdata/well_license/__init__.py +2 -0
- osdu_models/masterdata/well_license/v1_0_0.py +256 -0
- osdu_models/masterdata/well_log_acquisition/__init__.py +2 -0
- osdu_models/masterdata/well_log_acquisition/v1_0_0.py +239 -0
- osdu_models/masterdata/well_planning_well/__init__.py +2 -0
- osdu_models/masterdata/well_planning_well/v1_0_0.py +63 -0
- osdu_models/masterdata/well_planning_well/v1_1_0.py +64 -0
- osdu_models/masterdata/well_planning_wellbore/__init__.py +2 -0
- osdu_models/masterdata/well_planning_wellbore/v1_0_0.py +99 -0
- osdu_models/masterdata/well_planning_wellbore/v1_1_0.py +100 -0
- osdu_models/masterdata/well_planning_wellbore/v1_2_0.py +111 -0
- osdu_models/masterdata/well_planning_wellbore/v1_3_0.py +131 -0
- osdu_models/masterdata/well_planning_wellbore/v1_4_0.py +138 -0
- osdu_models/masterdata/well_pressure_test_acquisition_job/__init__.py +2 -0
- osdu_models/masterdata/well_pressure_test_acquisition_job/v1_0_0.py +202 -0
- osdu_models/masterdata/well_pressure_test_acquisition_job/v1_1_0.py +218 -0
- osdu_models/masterdata/well_pressure_test_acquisition_job/v1_2_0.py +250 -0
- osdu_models/masterdata/well_site_structure/__init__.py +2 -0
- osdu_models/masterdata/well_site_structure/v1_0_0.py +164 -0
- osdu_models/masterdata/wellbore/__init__.py +2 -0
- osdu_models/masterdata/wellbore/v1_0_0.py +105 -0
- osdu_models/masterdata/wellbore/v1_1_0.py +264 -0
- osdu_models/masterdata/wellbore/v1_1_1.py +264 -0
- osdu_models/masterdata/wellbore/v1_2_0.py +264 -0
- osdu_models/masterdata/wellbore/v1_3_0.py +304 -0
- osdu_models/masterdata/wellbore/v1_4_0.py +304 -0
- osdu_models/masterdata/wellbore/v1_5_0.py +304 -0
- osdu_models/masterdata/wellbore/v1_5_1.py +304 -0
- osdu_models/masterdata/wellbore_architecture/__init__.py +2 -0
- osdu_models/masterdata/wellbore_architecture/v1_0_0.py +75 -0
- osdu_models/masterdata/wellbore_architecture/v1_1_0.py +75 -0
- osdu_models/masterdata/wellbore_architecture/v1_2_0.py +79 -0
- osdu_models/masterdata/wellbore_hold_up_depth/__init__.py +2 -0
- osdu_models/masterdata/wellbore_hold_up_depth/v1_0_0.py +218 -0
- osdu_models/masterdata/wellbore_opening/__init__.py +2 -0
- osdu_models/masterdata/wellbore_opening/v1_0_0.py +129 -0
- osdu_models/masterdata/wellbore_opening/v1_1_0.py +138 -0
- osdu_models/masterdata/wellbore_opening/v1_2_0.py +138 -0
- osdu_models/workproductcomponent/__init__.py +2 -0
- osdu_models/workproductcomponent/activity/__init__.py +2 -0
- osdu_models/workproductcomponent/activity/v1_0_0.py +28 -0
- osdu_models/workproductcomponent/activity/v1_1_0.py +28 -0
- osdu_models/workproductcomponent/activity/v1_2_0.py +28 -0
- osdu_models/workproductcomponent/activity/v1_3_0.py +28 -0
- osdu_models/workproductcomponent/activity/v1_4_0.py +28 -0
- osdu_models/workproductcomponent/aquifer_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/aquifer_interpretation/v1_0_0.py +246 -0
- osdu_models/workproductcomponent/aquifer_interpretation/v1_1_0.py +271 -0
- osdu_models/workproductcomponent/aquifer_interpretation/v1_2_0.py +275 -0
- osdu_models/workproductcomponent/biostratigraphic_study/__init__.py +2 -0
- osdu_models/workproductcomponent/biostratigraphic_study/v1_0_0.py +96 -0
- osdu_models/workproductcomponent/cement_job/__init__.py +2 -0
- osdu_models/workproductcomponent/cement_job/v1_0_0.py +2855 -0
- osdu_models/workproductcomponent/cement_job/v1_1_0.py +2875 -0
- osdu_models/workproductcomponent/cement_job/v1_2_0.py +2875 -0
- osdu_models/workproductcomponent/cement_job/v1_3_0.py +2934 -0
- osdu_models/workproductcomponent/collaboration_project_collection/__init__.py +2 -0
- osdu_models/workproductcomponent/collaboration_project_collection/v1_0_0.py +43 -0
- osdu_models/workproductcomponent/column_based_table/__init__.py +2 -0
- osdu_models/workproductcomponent/column_based_table/v1_0_0.py +101 -0
- osdu_models/workproductcomponent/column_based_table/v1_1_0.py +101 -0
- osdu_models/workproductcomponent/column_based_table/v1_2_0.py +101 -0
- osdu_models/workproductcomponent/column_based_table/v1_3_0.py +110 -0
- osdu_models/workproductcomponent/column_based_table/v1_4_0.py +126 -0
- osdu_models/workproductcomponent/data_quality/__init__.py +2 -0
- osdu_models/workproductcomponent/data_quality/v1_0_0.py +41 -0
- osdu_models/workproductcomponent/data_quality/v1_1_0.py +41 -0
- osdu_models/workproductcomponent/data_quality/v1_2_0.py +41 -0
- osdu_models/workproductcomponent/data_quality/v1_3_0.py +41 -0
- osdu_models/workproductcomponent/data_quality/v2_0_0.py +209 -0
- osdu_models/workproductcomponent/data_quality_summary/__init__.py +2 -0
- osdu_models/workproductcomponent/data_quality_summary/v1_0_0.py +151 -0
- osdu_models/workproductcomponent/document/__init__.py +2 -0
- osdu_models/workproductcomponent/document/v1_0_0.py +55 -0
- osdu_models/workproductcomponent/document/v1_1_0.py +55 -0
- osdu_models/workproductcomponent/document/v1_2_0.py +55 -0
- osdu_models/workproductcomponent/document/v1_3_0.py +88 -0
- osdu_models/workproductcomponent/document/v2_0_0.py +95 -0
- osdu_models/workproductcomponent/downtime_event/__init__.py +2 -0
- osdu_models/workproductcomponent/downtime_event/v1_0_0.py +323 -0
- osdu_models/workproductcomponent/earth_model_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/earth_model_interpretation/v1_0_0.py +338 -0
- osdu_models/workproductcomponent/earth_model_interpretation/v1_1_0.py +363 -0
- osdu_models/workproductcomponent/earth_model_interpretation/v1_2_0.py +367 -0
- osdu_models/workproductcomponent/fault_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/fault_interpretation/v1_0_0.py +118 -0
- osdu_models/workproductcomponent/fault_interpretation/v1_1_0.py +118 -0
- osdu_models/workproductcomponent/fault_interpretation/v1_2_0.py +118 -0
- osdu_models/workproductcomponent/fault_interpretation/v1_3_0.py +132 -0
- osdu_models/workproductcomponent/fault_system/__init__.py +2 -0
- osdu_models/workproductcomponent/fault_system/v1_0_0.py +217 -0
- osdu_models/workproductcomponent/fault_system/v1_1_0.py +256 -0
- osdu_models/workproductcomponent/fault_system/v1_2_0.py +267 -0
- osdu_models/workproductcomponent/fault_system/v1_3_0.py +267 -0
- osdu_models/workproductcomponent/fault_system/v1_4_0.py +267 -0
- osdu_models/workproductcomponent/fault_system/v1_4_1.py +267 -0
- osdu_models/workproductcomponent/flow_test/__init__.py +2 -0
- osdu_models/workproductcomponent/flow_test/v1_0_0.py +170 -0
- osdu_models/workproductcomponent/fluid_boundary_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/fluid_boundary_interpretation/v1_0_0.py +261 -0
- osdu_models/workproductcomponent/fluid_boundary_interpretation/v1_1_0.py +286 -0
- osdu_models/workproductcomponent/fluid_boundary_interpretation/v1_2_0.py +290 -0
- osdu_models/workproductcomponent/fluid_model/__init__.py +2 -0
- osdu_models/workproductcomponent/fluid_model/v1_0_0.py +203 -0
- osdu_models/workproductcomponent/formation_integrity_test/__init__.py +2 -0
- osdu_models/workproductcomponent/formation_integrity_test/v1_0_0.py +745 -0
- osdu_models/workproductcomponent/formation_integrity_test/v1_1_0.py +745 -0
- osdu_models/workproductcomponent/formation_integrity_test/v1_2_0.py +757 -0
- osdu_models/workproductcomponent/generic_image/__init__.py +2 -0
- osdu_models/workproductcomponent/generic_image/v1_0_0.py +31 -0
- osdu_models/workproductcomponent/generic_image/v1_1_0.py +31 -0
- osdu_models/workproductcomponent/generic_image/v1_2_0.py +31 -0
- osdu_models/workproductcomponent/generic_property/__init__.py +2 -0
- osdu_models/workproductcomponent/generic_property/v1_0_0.py +111 -0
- osdu_models/workproductcomponent/generic_property/v1_1_0.py +111 -0
- osdu_models/workproductcomponent/generic_property/v1_2_0.py +111 -0
- osdu_models/workproductcomponent/generic_property/v1_3_0.py +111 -0
- osdu_models/workproductcomponent/generic_representation/__init__.py +2 -0
- osdu_models/workproductcomponent/generic_representation/v1_0_0.py +54 -0
- osdu_models/workproductcomponent/generic_representation/v1_1_0.py +54 -0
- osdu_models/workproductcomponent/generic_representation/v1_2_0.py +54 -0
- osdu_models/workproductcomponent/geo_label_set/__init__.py +2 -0
- osdu_models/workproductcomponent/geo_label_set/v1_0_0.py +38 -0
- osdu_models/workproductcomponent/geo_label_set/v1_1_0.py +46 -0
- osdu_models/workproductcomponent/geo_referenced_image/__init__.py +2 -0
- osdu_models/workproductcomponent/geo_referenced_image/v1_0_0.py +86 -0
- osdu_models/workproductcomponent/geo_referenced_image/v1_1_0.py +83 -0
- osdu_models/workproductcomponent/geo_referenced_image/v1_2_0.py +83 -0
- osdu_models/workproductcomponent/geo_referenced_image/v1_3_0.py +83 -0
- osdu_models/workproductcomponent/geobody_boundary_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/geobody_boundary_interpretation/v1_0_0.py +37 -0
- osdu_models/workproductcomponent/geobody_boundary_interpretation/v1_1_0.py +37 -0
- osdu_models/workproductcomponent/geobody_boundary_interpretation/v1_2_0.py +37 -0
- osdu_models/workproductcomponent/geobody_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/geobody_interpretation/v1_0_0.py +276 -0
- osdu_models/workproductcomponent/geobody_interpretation/v1_1_0.py +301 -0
- osdu_models/workproductcomponent/geobody_interpretation/v1_2_0.py +305 -0
- osdu_models/workproductcomponent/geobody_interpretation/v1_3_0.py +354 -0
- osdu_models/workproductcomponent/geologic_unit_occurrence_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/geologic_unit_occurrence_interpretation/v1_0_0.py +76 -0
- osdu_models/workproductcomponent/geologic_unit_occurrence_interpretation/v1_1_0.py +76 -0
- osdu_models/workproductcomponent/geologic_unit_occurrence_interpretation/v1_2_0.py +76 -0
- osdu_models/workproductcomponent/gp_grid_representation/__init__.py +2 -0
- osdu_models/workproductcomponent/gp_grid_representation/v1_0_0.py +49 -0
- osdu_models/workproductcomponent/gp_grid_representation/v1_1_0.py +49 -0
- osdu_models/workproductcomponent/gp_grid_representation/v1_2_0.py +49 -0
- osdu_models/workproductcomponent/grid_connection_set_representation/__init__.py +2 -0
- osdu_models/workproductcomponent/grid_connection_set_representation/v1_0_0.py +72 -0
- osdu_models/workproductcomponent/grid_connection_set_representation/v1_1_0.py +72 -0
- osdu_models/workproductcomponent/grid_connection_set_representation/v1_2_0.py +72 -0
- osdu_models/workproductcomponent/horizon_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/horizon_interpretation/v1_0_0.py +66 -0
- osdu_models/workproductcomponent/horizon_interpretation/v1_1_0.py +66 -0
- osdu_models/workproductcomponent/horizon_interpretation/v1_2_0.py +66 -0
- osdu_models/workproductcomponent/ijk_grid_numerical_aquifer_representation/__init__.py +2 -0
- osdu_models/workproductcomponent/ijk_grid_numerical_aquifer_representation/v1_0_0.py +375 -0
- osdu_models/workproductcomponent/ijk_grid_numerical_aquifer_representation/v1_1_0.py +400 -0
- osdu_models/workproductcomponent/ijk_grid_numerical_aquifer_representation/v1_2_0.py +400 -0
- osdu_models/workproductcomponent/ijk_grid_representation/__init__.py +2 -0
- osdu_models/workproductcomponent/ijk_grid_representation/v1_0_0.py +30 -0
- osdu_models/workproductcomponent/ijk_grid_representation/v1_1_0.py +30 -0
- osdu_models/workproductcomponent/ijk_grid_representation/v1_2_0.py +30 -0
- osdu_models/workproductcomponent/local_boundary_feature/__init__.py +2 -0
- osdu_models/workproductcomponent/local_boundary_feature/v1_0_0.py +31 -0
- osdu_models/workproductcomponent/local_boundary_feature/v1_1_0.py +31 -0
- osdu_models/workproductcomponent/local_boundary_feature/v1_2_0.py +31 -0
- osdu_models/workproductcomponent/local_model_compound_crs/__init__.py +2 -0
- osdu_models/workproductcomponent/local_model_compound_crs/v1_0_0.py +22 -0
- osdu_models/workproductcomponent/local_model_compound_crs/v1_1_0.py +22 -0
- osdu_models/workproductcomponent/local_model_compound_crs/v1_2_0.py +22 -0
- osdu_models/workproductcomponent/local_model_feature/__init__.py +2 -0
- osdu_models/workproductcomponent/local_model_feature/v1_0_0.py +29 -0
- osdu_models/workproductcomponent/local_model_feature/v1_1_0.py +29 -0
- osdu_models/workproductcomponent/local_model_feature/v1_2_0.py +29 -0
- osdu_models/workproductcomponent/local_rock_volume_feature/__init__.py +2 -0
- osdu_models/workproductcomponent/local_rock_volume_feature/v1_0_0.py +31 -0
- osdu_models/workproductcomponent/local_rock_volume_feature/v1_1_0.py +31 -0
- osdu_models/workproductcomponent/local_rock_volume_feature/v1_2_0.py +31 -0
- osdu_models/workproductcomponent/notional_seismic_line/__init__.py +2 -0
- osdu_models/workproductcomponent/notional_seismic_line/v1_0_0.py +26 -0
- osdu_models/workproductcomponent/notional_seismic_line/v1_1_0.py +26 -0
- osdu_models/workproductcomponent/notional_seismic_line/v1_2_0.py +26 -0
- osdu_models/workproductcomponent/notional_seismic_processing_product/__init__.py +2 -0
- osdu_models/workproductcomponent/notional_seismic_processing_product/v1_0_0.py +33 -0
- osdu_models/workproductcomponent/persisted_collection/__init__.py +2 -0
- osdu_models/workproductcomponent/persisted_collection/v1_0_0.py +260 -0
- osdu_models/workproductcomponent/persisted_collection/v1_1_0.py +285 -0
- osdu_models/workproductcomponent/persisted_collection/v1_2_0.py +285 -0
- osdu_models/workproductcomponent/planned_lithology/__init__.py +2 -0
- osdu_models/workproductcomponent/planned_lithology/v1_0_0.py +141 -0
- osdu_models/workproductcomponent/planned_lithology/v1_1_0.py +141 -0
- osdu_models/workproductcomponent/planned_lithology/v1_2_0.py +141 -0
- osdu_models/workproductcomponent/ppfgdataset/__init__.py +2 -0
- osdu_models/workproductcomponent/ppfgdataset/v1_0_0.py +199 -0
- osdu_models/workproductcomponent/ppfgdataset/v1_1_0.py +203 -0
- osdu_models/workproductcomponent/ppfgdataset/v1_2_0.py +203 -0
- osdu_models/workproductcomponent/processed_in_sar/__init__.py +2 -0
- osdu_models/workproductcomponent/processed_in_sar/v1_0_0.py +223 -0
- osdu_models/workproductcomponent/processed_in_sar/v1_1_0.py +223 -0
- osdu_models/workproductcomponent/processed_in_sar/v1_2_0.py +223 -0
- osdu_models/workproductcomponent/production_values/__init__.py +2 -0
- osdu_models/workproductcomponent/production_values/v1_0_0.py +212 -0
- osdu_models/workproductcomponent/production_values/v1_1_0.py +212 -0
- osdu_models/workproductcomponent/production_values/v1_1_1.py +212 -0
- osdu_models/workproductcomponent/reservoir_compartment_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/reservoir_compartment_interpretation/v1_0_0.py +314 -0
- osdu_models/workproductcomponent/reservoir_compartment_interpretation/v1_1_0.py +339 -0
- osdu_models/workproductcomponent/reservoir_compartment_interpretation/v1_2_0.py +343 -0
- osdu_models/workproductcomponent/reservoir_estimated_volumes/__init__.py +2 -0
- osdu_models/workproductcomponent/reservoir_estimated_volumes/v1_0_0.py +67 -0
- osdu_models/workproductcomponent/reservoir_estimated_volumes/v1_1_0.py +67 -0
- osdu_models/workproductcomponent/reservoir_estimated_volumes/v1_1_1.py +67 -0
- osdu_models/workproductcomponent/reservoir_model_scenario/__init__.py +2 -0
- osdu_models/workproductcomponent/reservoir_model_scenario/v1_0_0.py +58 -0
- osdu_models/workproductcomponent/reservoir_simulation_equilibrium_model/__init__.py +2 -0
- osdu_models/workproductcomponent/reservoir_simulation_equilibrium_model/v1_0_0.py +397 -0
- osdu_models/workproductcomponent/reservoir_simulation_model/__init__.py +2 -0
- osdu_models/workproductcomponent/reservoir_simulation_model/v1_0_0.py +230 -0
- osdu_models/workproductcomponent/reservoir_simulation_rock_physics_model/__init__.py +2 -0
- osdu_models/workproductcomponent/reservoir_simulation_rock_physics_model/v1_0_0.py +131 -0
- osdu_models/workproductcomponent/reservoir_simulation_run_configuration/__init__.py +2 -0
- osdu_models/workproductcomponent/reservoir_simulation_run_configuration/v1_0_0.py +90 -0
- osdu_models/workproductcomponent/rock_fluid_organization_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/rock_fluid_organization_interpretation/v1_0_0.py +263 -0
- osdu_models/workproductcomponent/rock_fluid_organization_interpretation/v1_1_0.py +288 -0
- osdu_models/workproductcomponent/rock_fluid_organization_interpretation/v1_2_0.py +292 -0
- osdu_models/workproductcomponent/rock_fluid_unit_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/rock_fluid_unit_interpretation/v1_0_0.py +285 -0
- osdu_models/workproductcomponent/rock_fluid_unit_interpretation/v1_1_0.py +310 -0
- osdu_models/workproductcomponent/rock_fluid_unit_interpretation/v1_2_0.py +314 -0
- osdu_models/workproductcomponent/rock_fluid_unit_interpretation/v1_3_0.py +363 -0
- osdu_models/workproductcomponent/rock_image/__init__.py +2 -0
- osdu_models/workproductcomponent/rock_image/v1_0_0.py +130 -0
- osdu_models/workproductcomponent/rock_image/v1_1_0.py +130 -0
- osdu_models/workproductcomponent/rock_image/v1_2_0.py +130 -0
- osdu_models/workproductcomponent/rock_image/v1_3_0.py +137 -0
- osdu_models/workproductcomponent/rock_image/v1_3_1.py +137 -0
- osdu_models/workproductcomponent/rock_sample_analysis/__init__.py +2 -0
- osdu_models/workproductcomponent/rock_sample_analysis/v1_0_0.py +327 -0
- osdu_models/workproductcomponent/rock_sample_analysis/v1_1_0.py +391 -0
- osdu_models/workproductcomponent/rock_sample_analysis/v1_2_0.py +391 -0
- osdu_models/workproductcomponent/rock_sample_analysis/v1_3_0.py +391 -0
- osdu_models/workproductcomponent/rock_sample_analysis/v1_3_1.py +391 -0
- osdu_models/workproductcomponent/sample_image/__init__.py +2 -0
- osdu_models/workproductcomponent/sample_image/v1_0_0.py +129 -0
- osdu_models/workproductcomponent/sample_image/v1_1_0.py +269 -0
- osdu_models/workproductcomponent/samples_analyses_report/__init__.py +2 -0
- osdu_models/workproductcomponent/samples_analyses_report/v1_0_0.py +129 -0
- osdu_models/workproductcomponent/samples_analysis/__init__.py +2 -0
- osdu_models/workproductcomponent/samples_analysis/v1_0_0.py +143 -0
- osdu_models/workproductcomponent/samples_analysis/v2_0_0.py +137 -0
- osdu_models/workproductcomponent/saturation_function_set/__init__.py +2 -0
- osdu_models/workproductcomponent/saturation_function_set/v1_0_0.py +174 -0
- osdu_models/workproductcomponent/sealed_surface_framework/__init__.py +2 -0
- osdu_models/workproductcomponent/sealed_surface_framework/v1_0_0.py +310 -0
- osdu_models/workproductcomponent/sealed_surface_framework/v1_1_0.py +335 -0
- osdu_models/workproductcomponent/sealed_surface_framework/v1_2_0.py +335 -0
- osdu_models/workproductcomponent/sealed_volume_framework/__init__.py +2 -0
- osdu_models/workproductcomponent/sealed_volume_framework/v1_0_0.py +308 -0
- osdu_models/workproductcomponent/sealed_volume_framework/v1_1_0.py +333 -0
- osdu_models/workproductcomponent/sealed_volume_framework/v1_2_0.py +333 -0
- osdu_models/workproductcomponent/seismic_acquisition_documents/__init__.py +2 -0
- osdu_models/workproductcomponent/seismic_acquisition_documents/v1_0_0.py +116 -0
- osdu_models/workproductcomponent/seismic_acquisition_documents/v1_1_0.py +116 -0
- osdu_models/workproductcomponent/seismic_acquisition_documents/v2_0_0.py +139 -0
- osdu_models/workproductcomponent/seismic_bin_grid/__init__.py +2 -0
- osdu_models/workproductcomponent/seismic_bin_grid/v1_0_0.py +28 -0
- osdu_models/workproductcomponent/seismic_bin_grid/v1_1_0.py +28 -0
- osdu_models/workproductcomponent/seismic_bin_grid/v1_2_0.py +28 -0
- osdu_models/workproductcomponent/seismic_bin_grid/v1_3_0.py +28 -0
- osdu_models/workproductcomponent/seismic_fault/__init__.py +2 -0
- osdu_models/workproductcomponent/seismic_fault/v1_0_0.py +160 -0
- osdu_models/workproductcomponent/seismic_fault/v1_1_0.py +160 -0
- osdu_models/workproductcomponent/seismic_fault/v1_2_0.py +160 -0
- osdu_models/workproductcomponent/seismic_fault/v1_3_0.py +179 -0
- osdu_models/workproductcomponent/seismic_fault/v2_0_0.py +433 -0
- osdu_models/workproductcomponent/seismic_field_trace_data/__init__.py +2 -0
- osdu_models/workproductcomponent/seismic_field_trace_data/v1_0_0.py +272 -0
- osdu_models/workproductcomponent/seismic_field_trace_data/v1_1_0.py +272 -0
- osdu_models/workproductcomponent/seismic_horizon/__init__.py +2 -0
- osdu_models/workproductcomponent/seismic_horizon/v1_0_0.py +226 -0
- osdu_models/workproductcomponent/seismic_horizon/v1_1_0.py +258 -0
- osdu_models/workproductcomponent/seismic_horizon/v1_2_0.py +258 -0
- osdu_models/workproductcomponent/seismic_horizon/v1_3_0.py +258 -0
- osdu_models/workproductcomponent/seismic_horizon/v2_0_0.py +475 -0
- osdu_models/workproductcomponent/seismic_line_geometry/__init__.py +2 -0
- osdu_models/workproductcomponent/seismic_line_geometry/v1_0_0.py +82 -0
- osdu_models/workproductcomponent/seismic_line_geometry/v1_1_0.py +82 -0
- osdu_models/workproductcomponent/seismic_line_geometry/v1_2_0.py +82 -0
- osdu_models/workproductcomponent/seismic_trace_data/__init__.py +2 -0
- osdu_models/workproductcomponent/seismic_trace_data/v1_0_0.py +376 -0
- osdu_models/workproductcomponent/seismic_trace_data/v1_1_0.py +470 -0
- osdu_models/workproductcomponent/seismic_trace_data/v1_2_0.py +497 -0
- osdu_models/workproductcomponent/seismic_trace_data/v1_3_0.py +515 -0
- osdu_models/workproductcomponent/seismic_trace_data/v1_4_0.py +515 -0
- osdu_models/workproductcomponent/seismic_trace_data/v1_5_0.py +515 -0
- osdu_models/workproductcomponent/seismic_trace_data/v1_5_1.py +515 -0
- osdu_models/workproductcomponent/seismic_trace_data/v1_6_0.py +535 -0
- osdu_models/workproductcomponent/soil_gas_monitoring/__init__.py +2 -0
- osdu_models/workproductcomponent/soil_gas_monitoring/v1_0_0.py +119 -0
- osdu_models/workproductcomponent/soil_gas_monitoring/v1_1_0.py +119 -0
- osdu_models/workproductcomponent/stimulation_job/__init__.py +2 -0
- osdu_models/workproductcomponent/stimulation_job/v1_0_0.py +285 -0
- osdu_models/workproductcomponent/stimulation_job/v1_1_0.py +333 -0
- osdu_models/workproductcomponent/stimulation_stage/__init__.py +2 -0
- osdu_models/workproductcomponent/stimulation_stage/v1_0_0.py +1768 -0
- osdu_models/workproductcomponent/stratigraphic_column/__init__.py +2 -0
- osdu_models/workproductcomponent/stratigraphic_column/v1_0_0.py +57 -0
- osdu_models/workproductcomponent/stratigraphic_column/v1_1_0.py +57 -0
- osdu_models/workproductcomponent/stratigraphic_column/v1_2_0.py +57 -0
- osdu_models/workproductcomponent/stratigraphic_column_rank_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/stratigraphic_column_rank_interpretation/v1_0_0.py +89 -0
- osdu_models/workproductcomponent/stratigraphic_column_rank_interpretation/v1_1_0.py +110 -0
- osdu_models/workproductcomponent/stratigraphic_column_rank_interpretation/v1_2_0.py +110 -0
- osdu_models/workproductcomponent/stratigraphic_column_rank_interpretation/v1_3_0.py +110 -0
- osdu_models/workproductcomponent/stratigraphic_unit_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/stratigraphic_unit_interpretation/v1_0_0.py +340 -0
- osdu_models/workproductcomponent/stratigraphic_unit_interpretation/v1_1_0.py +365 -0
- osdu_models/workproductcomponent/stratigraphic_unit_interpretation/v1_2_0.py +369 -0
- osdu_models/workproductcomponent/stratigraphic_unit_interpretation/v1_3_0.py +418 -0
- osdu_models/workproductcomponent/structural_organization_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/structural_organization_interpretation/v1_0_0.py +280 -0
- osdu_models/workproductcomponent/structural_organization_interpretation/v1_1_0.py +305 -0
- osdu_models/workproductcomponent/structural_organization_interpretation/v1_2_0.py +309 -0
- osdu_models/workproductcomponent/sub_representation/__init__.py +2 -0
- osdu_models/workproductcomponent/sub_representation/v1_0_0.py +77 -0
- osdu_models/workproductcomponent/sub_representation/v1_1_0.py +77 -0
- osdu_models/workproductcomponent/sub_representation/v1_2_0.py +77 -0
- osdu_models/workproductcomponent/time_series/__init__.py +2 -0
- osdu_models/workproductcomponent/time_series/v1_0_0.py +31 -0
- osdu_models/workproductcomponent/time_series/v1_1_0.py +31 -0
- osdu_models/workproductcomponent/time_series/v1_2_0.py +31 -0
- osdu_models/workproductcomponent/tubular_assembly/__init__.py +2 -0
- osdu_models/workproductcomponent/tubular_assembly/v1_0_0.py +178 -0
- osdu_models/workproductcomponent/tubular_assembly/v1_1_0.py +183 -0
- osdu_models/workproductcomponent/tubular_assembly/v1_2_0.py +216 -0
- osdu_models/workproductcomponent/tubular_assembly/v1_3_0.py +216 -0
- osdu_models/workproductcomponent/tubular_component/__init__.py +2 -0
- osdu_models/workproductcomponent/tubular_component/v1_0_0.py +187 -0
- osdu_models/workproductcomponent/tubular_component/v1_1_0.py +187 -0
- osdu_models/workproductcomponent/tubular_component/v1_2_0.py +187 -0
- osdu_models/workproductcomponent/tubular_component/v1_3_0.py +187 -0
- osdu_models/workproductcomponent/tubular_external_component/__init__.py +2 -0
- osdu_models/workproductcomponent/tubular_external_component/v1_0_0.py +317 -0
- osdu_models/workproductcomponent/tubular_external_component/v1_1_0.py +342 -0
- osdu_models/workproductcomponent/tubular_umbilical/__init__.py +2 -0
- osdu_models/workproductcomponent/tubular_umbilical/v1_0_0.py +74 -0
- osdu_models/workproductcomponent/tubular_umbilical/v1_1_0.py +74 -0
- osdu_models/workproductcomponent/tubular_umbilical/v1_2_0.py +74 -0
- osdu_models/workproductcomponent/unsealed_surface_framework/__init__.py +2 -0
- osdu_models/workproductcomponent/unsealed_surface_framework/v1_0_0.py +330 -0
- osdu_models/workproductcomponent/unsealed_surface_framework/v1_1_0.py +350 -0
- osdu_models/workproductcomponent/unsealed_surface_framework/v1_2_0.py +375 -0
- osdu_models/workproductcomponent/unsealed_surface_framework/v1_3_0.py +375 -0
- osdu_models/workproductcomponent/unsealed_surface_framework/v1_3_1.py +375 -0
- osdu_models/workproductcomponent/unstructured_column_layer_grid_representation/__init__.py +2 -0
- osdu_models/workproductcomponent/unstructured_column_layer_grid_representation/v1_0_0.py +32 -0
- osdu_models/workproductcomponent/unstructured_column_layer_grid_representation/v1_1_0.py +32 -0
- osdu_models/workproductcomponent/unstructured_column_layer_grid_representation/v1_2_0.py +32 -0
- osdu_models/workproductcomponent/unstructured_grid_representation/__init__.py +2 -0
- osdu_models/workproductcomponent/unstructured_grid_representation/v1_0_0.py +32 -0
- osdu_models/workproductcomponent/unstructured_grid_representation/v1_1_0.py +32 -0
- osdu_models/workproductcomponent/unstructured_grid_representation/v1_2_0.py +32 -0
- osdu_models/workproductcomponent/velocity_modeling/__init__.py +2 -0
- osdu_models/workproductcomponent/velocity_modeling/v1_0_0.py +218 -0
- osdu_models/workproductcomponent/velocity_modeling/v1_1_0.py +229 -0
- osdu_models/workproductcomponent/velocity_modeling/v1_2_0.py +229 -0
- osdu_models/workproductcomponent/velocity_modeling/v1_3_0.py +229 -0
- osdu_models/workproductcomponent/velocity_modeling/v1_4_0.py +265 -0
- osdu_models/workproductcomponent/voidage_group_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/voidage_group_interpretation/v1_0_0.py +302 -0
- osdu_models/workproductcomponent/voidage_group_interpretation/v1_1_0.py +327 -0
- osdu_models/workproductcomponent/voidage_group_interpretation/v1_2_0.py +331 -0
- osdu_models/workproductcomponent/well_fluids_report/__init__.py +2 -0
- osdu_models/workproductcomponent/well_fluids_report/v2_0_0.py +679 -0
- osdu_models/workproductcomponent/well_log/__init__.py +2 -0
- osdu_models/workproductcomponent/well_log/v1_0_0.py +231 -0
- osdu_models/workproductcomponent/well_log/v1_1_0.py +295 -0
- osdu_models/workproductcomponent/well_log/v1_2_0.py +324 -0
- osdu_models/workproductcomponent/well_log/v1_3_0.py +342 -0
- osdu_models/workproductcomponent/well_log/v1_4_0.py +342 -0
- osdu_models/workproductcomponent/well_log/v1_5_0.py +424 -0
- osdu_models/workproductcomponent/well_maasp/__init__.py +2 -0
- osdu_models/workproductcomponent/well_maasp/v1_0_0.py +70 -0
- osdu_models/workproductcomponent/well_operations_report/__init__.py +2 -0
- osdu_models/workproductcomponent/well_operations_report/v2_0_0.py +1994 -0
- osdu_models/workproductcomponent/well_operations_report/v2_1_0.py +2063 -0
- osdu_models/workproductcomponent/well_ops_non_productive_time/__init__.py +2 -0
- osdu_models/workproductcomponent/well_ops_non_productive_time/v1_0_0.py +856 -0
- osdu_models/workproductcomponent/well_pressure_test_interpretation/__init__.py +2 -0
- osdu_models/workproductcomponent/well_pressure_test_interpretation/v1_0_0.py +354 -0
- osdu_models/workproductcomponent/well_pressure_test_raw_measurement/__init__.py +2 -0
- osdu_models/workproductcomponent/well_pressure_test_raw_measurement/v1_0_0.py +231 -0
- osdu_models/workproductcomponent/well_pressure_test_raw_measurement/v1_1_0.py +279 -0
- osdu_models/workproductcomponent/wellbore_interval_set/__init__.py +2 -0
- osdu_models/workproductcomponent/wellbore_interval_set/v1_0_0.py +222 -0
- osdu_models/workproductcomponent/wellbore_interval_set/v1_1_0.py +222 -0
- osdu_models/workproductcomponent/wellbore_interval_set/v1_2_0.py +222 -0
- osdu_models/workproductcomponent/wellbore_interval_set/v1_3_0.py +229 -0
- osdu_models/workproductcomponent/wellbore_interval_set/v1_3_1.py +229 -0
- osdu_models/workproductcomponent/wellbore_marker_set/__init__.py +2 -0
- osdu_models/workproductcomponent/wellbore_marker_set/v1_0_0.py +102 -0
- osdu_models/workproductcomponent/wellbore_marker_set/v1_1_0.py +157 -0
- osdu_models/workproductcomponent/wellbore_marker_set/v1_2_0.py +192 -0
- osdu_models/workproductcomponent/wellbore_marker_set/v1_2_1.py +195 -0
- osdu_models/workproductcomponent/wellbore_marker_set/v1_3_0.py +195 -0
- osdu_models/workproductcomponent/wellbore_marker_set/v1_4_0.py +195 -0
- osdu_models/workproductcomponent/wellbore_marker_set/v1_5_0.py +209 -0
- osdu_models/workproductcomponent/wellbore_marker_set/v1_5_1.py +209 -0
- osdu_models/workproductcomponent/wellbore_trajectory/__init__.py +2 -0
- osdu_models/workproductcomponent/wellbore_trajectory/v1_0_0.py +136 -0
- osdu_models/workproductcomponent/wellbore_trajectory/v1_1_0.py +200 -0
- osdu_models/workproductcomponent/wellbore_trajectory/v1_2_0.py +276 -0
- osdu_models/workproductcomponent/wellbore_trajectory/v1_3_0.py +282 -0
- osdu_models/workproductcomponent/wellbore_trajectory/v1_4_0.py +427 -0
- osdu_python_models-0.5.0.dist-info/METADATA +182 -0
- osdu_python_models-0.5.0.dist-info/RECORD +968 -0
- osdu_python_models-0.5.0.dist-info/WHEEL +5 -0
- osdu_python_models-0.5.0.dist-info/licenses/LICENSE +201 -0
- osdu_python_models-0.5.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,2855 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: workproductcomponent/cement_job/v1_0_0.json
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from pydantic import BaseModel, ConfigDict, Field, constr
|
|
6
|
+
from typing import Any, Literal
|
|
7
|
+
from ...abstract.abstract_technical_assurance import v1_2_0
|
|
8
|
+
from ...abstract.abstract_alias_names import v1_0_0
|
|
9
|
+
from ...abstract.abstract_spatial_location import v1_1_0
|
|
10
|
+
from ...abstract.abstract_geo_context import v1_0_0 as v1_0_0_1
|
|
11
|
+
from ...abstract.abstract_facility_vertical_measurement import v1_0_0 as v1_0_0_2
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class Artefact(BaseModel):
|
|
15
|
+
"""
|
|
16
|
+
An array of Artefacts - each artefact has a Role, Resource tuple. An artefact is distinct from the file, in the sense certain valuable information is generated during loading process (Artefact generation process). Examples include retrieving location data, performing an OCR which may result in the generation of artefacts which need to be preserved distinctly
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
model_config = ConfigDict(
|
|
20
|
+
extra='allow',
|
|
21
|
+
)
|
|
22
|
+
RoleID: (
|
|
23
|
+
constr(
|
|
24
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-ArtefactRole:[\w\-\.\:\%]+:[0-9]*$'
|
|
25
|
+
)
|
|
26
|
+
| None
|
|
27
|
+
) = None
|
|
28
|
+
"""
|
|
29
|
+
The record id of this artefact's role.
|
|
30
|
+
"""
|
|
31
|
+
ResourceKind: (
|
|
32
|
+
constr(pattern=r'^[\w\-\.]+:[\w\-\.]+:[\w\-\.]+:[0-9]+.[0-9]+.[0-9]+$') | None
|
|
33
|
+
) = None
|
|
34
|
+
"""
|
|
35
|
+
The kind or schema ID of the artefact. Resolvable with the Schema Service.
|
|
36
|
+
"""
|
|
37
|
+
ResourceID: (
|
|
38
|
+
constr(pattern=r'^[\w\-\.]+:dataset\-\-[\w\-\.]+:[\w\-\.\:\%]+:[0-9]*$') | None
|
|
39
|
+
) = None
|
|
40
|
+
"""
|
|
41
|
+
The SRN which identifies this OSDU Artefact resource.
|
|
42
|
+
"""
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
class LineageAssertion(BaseModel):
|
|
46
|
+
"""
|
|
47
|
+
Defines relationships with other objects (any kind of Resource) upon which this work product component depends. The assertion is directed only from the asserting WPC to ancestor objects, not children. It should not be used to refer to files or artefacts within the WPC -- the association within the WPC is sufficient and Artefacts are actually children of the main WPC file. They should be recorded in the data.Artefacts[] array.
|
|
48
|
+
"""
|
|
49
|
+
|
|
50
|
+
model_config = ConfigDict(
|
|
51
|
+
extra='allow',
|
|
52
|
+
)
|
|
53
|
+
ID: constr(pattern=r'^[\w\-\.]+:[\w\-\.]+:[\w\-\.\:\%]+:[0-9]*$') | None = None
|
|
54
|
+
"""
|
|
55
|
+
The object reference identifying the DIRECT, INDIRECT, REFERENCE dependency.
|
|
56
|
+
"""
|
|
57
|
+
LineageRelationshipType: (
|
|
58
|
+
constr(
|
|
59
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-LineageRelationshipType:[\w\-\.\:\%]+:[0-9]*$'
|
|
60
|
+
)
|
|
61
|
+
| None
|
|
62
|
+
) = None
|
|
63
|
+
"""
|
|
64
|
+
Used by LineageAssertion to describe the nature of the line of descent of a work product component from a prior Resource, such as DIRECT, INDIRECT, REFERENCE. It is not for proximity (number of nodes away), it is not to cover all the relationships in a full ontology or graph, and it is not to describe the type of activity that created the asserting WPC. LineageAssertion does not encompass a full provenance, process history, or activity model.
|
|
65
|
+
"""
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
class CementPlugState(BaseModel):
|
|
69
|
+
"""
|
|
70
|
+
Cement Plug status history
|
|
71
|
+
"""
|
|
72
|
+
|
|
73
|
+
model_config = ConfigDict(
|
|
74
|
+
extra='allow',
|
|
75
|
+
)
|
|
76
|
+
PlugStatusTypeID: (
|
|
77
|
+
constr(
|
|
78
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementPlugStatusType:[\w\-\.\:\%]+:[0-9]*$'
|
|
79
|
+
)
|
|
80
|
+
| None
|
|
81
|
+
) = Field(None, title='Plug Status Type')
|
|
82
|
+
"""
|
|
83
|
+
Status Type
|
|
84
|
+
"""
|
|
85
|
+
PlugStatusDatetime: str | None = Field(None, title='Status Date/time')
|
|
86
|
+
"""
|
|
87
|
+
Status date/time
|
|
88
|
+
"""
|
|
89
|
+
PlugStatusRemarks: str | None = Field(None, title='Status Remarks')
|
|
90
|
+
"""
|
|
91
|
+
Status Remarks
|
|
92
|
+
"""
|
|
93
|
+
PlugStatusTopMeasuredDepth: float | None = Field(None, title='Plug Status Top MD')
|
|
94
|
+
"""
|
|
95
|
+
Plug Status Top MD
|
|
96
|
+
"""
|
|
97
|
+
PlugStatusBaseMeasuredDepth: float | None = Field(None, title='Plug Status Base MD')
|
|
98
|
+
"""
|
|
99
|
+
Plug Status Base MD
|
|
100
|
+
"""
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
class RheometerItem(BaseModel):
|
|
104
|
+
"""
|
|
105
|
+
Fluid Fann Viscometer Rheology
|
|
106
|
+
"""
|
|
107
|
+
|
|
108
|
+
model_config = ConfigDict(
|
|
109
|
+
extra='allow',
|
|
110
|
+
)
|
|
111
|
+
ViscometerIndex: int | None = Field(None, examples=[1], title='Viscometer Index')
|
|
112
|
+
"""
|
|
113
|
+
Viscometer index or sequence number. Used to retain order.
|
|
114
|
+
"""
|
|
115
|
+
ViscometerTemperature: float | None = Field(
|
|
116
|
+
None, examples=['80 degF'], title='Viscometer Temperature'
|
|
117
|
+
)
|
|
118
|
+
"""
|
|
119
|
+
Viscometer Temperature
|
|
120
|
+
"""
|
|
121
|
+
ViscometerTemperatureDirection: (
|
|
122
|
+
constr(
|
|
123
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-FluidRheometerTempDirection:[\w\-\.\:\%]+:[0-9]*$'
|
|
124
|
+
)
|
|
125
|
+
| None
|
|
126
|
+
) = Field(
|
|
127
|
+
None,
|
|
128
|
+
examples=['namespace:reference-data--FluidRheometerTempDirection:Up:'],
|
|
129
|
+
title='Viscometer Temperature Direction',
|
|
130
|
+
)
|
|
131
|
+
"""
|
|
132
|
+
Viscometer Temperature Direction
|
|
133
|
+
"""
|
|
134
|
+
ViscometerPressure: float | None = Field(None, title='Viscometer Pressure')
|
|
135
|
+
"""
|
|
136
|
+
Viscometer Pressure
|
|
137
|
+
"""
|
|
138
|
+
Viscometer3RPMDialReading: float | None = Field(
|
|
139
|
+
None, examples=[28], title='3 RPM Dial Reading'
|
|
140
|
+
)
|
|
141
|
+
"""
|
|
142
|
+
3 RPM Dial Reading
|
|
143
|
+
"""
|
|
144
|
+
Viscometer6RPMDialReading: float | None = Field(
|
|
145
|
+
None, examples=[32], title='6 RPM Dial Reading'
|
|
146
|
+
)
|
|
147
|
+
"""
|
|
148
|
+
6 RPM Dial Reading
|
|
149
|
+
"""
|
|
150
|
+
Viscometer30RPMDialReading: float | None = Field(
|
|
151
|
+
None, examples=[36], title='30 RPM Dial Reading'
|
|
152
|
+
)
|
|
153
|
+
"""
|
|
154
|
+
30 RPM Dial Reading
|
|
155
|
+
"""
|
|
156
|
+
Viscometer60RPMDialReading: float | None = Field(
|
|
157
|
+
None, examples=[46], title='60 RPM Dial Reading'
|
|
158
|
+
)
|
|
159
|
+
"""
|
|
160
|
+
60 RPM Dial Reading
|
|
161
|
+
"""
|
|
162
|
+
Viscometer100RPMDialReading: float | None = Field(
|
|
163
|
+
None, examples=[66], title='100 RPM Dial Reading'
|
|
164
|
+
)
|
|
165
|
+
"""
|
|
166
|
+
100 RPM Dial Reading
|
|
167
|
+
"""
|
|
168
|
+
Viscometer200RPMDialReading: float | None = Field(
|
|
169
|
+
None, examples=[104], title='200 RPM Dial Reading'
|
|
170
|
+
)
|
|
171
|
+
"""
|
|
172
|
+
200 RPM Dial Reading
|
|
173
|
+
"""
|
|
174
|
+
Viscometer300RPMDialReading: float | None = Field(
|
|
175
|
+
None, examples=[140], title='300 RPM Dial Reading'
|
|
176
|
+
)
|
|
177
|
+
"""
|
|
178
|
+
300 RPM Dial Reading
|
|
179
|
+
"""
|
|
180
|
+
Viscometer600RPMDialReading: float | None = Field(
|
|
181
|
+
None, examples=[238], title='600 RPM Dial Reading'
|
|
182
|
+
)
|
|
183
|
+
"""
|
|
184
|
+
600 RPM Dial Reading
|
|
185
|
+
"""
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
class CompressiveStrengthTestItem(BaseModel):
|
|
189
|
+
"""
|
|
190
|
+
Fluid Compressive Strength Test data
|
|
191
|
+
"""
|
|
192
|
+
|
|
193
|
+
model_config = ConfigDict(
|
|
194
|
+
extra='allow',
|
|
195
|
+
)
|
|
196
|
+
CompressiveStrengthIndex: int = Field(
|
|
197
|
+
..., examples=[1], title='Compressive Strength Index'
|
|
198
|
+
)
|
|
199
|
+
"""
|
|
200
|
+
Compressive Strength Index
|
|
201
|
+
"""
|
|
202
|
+
CompressiveStrengthTestPressure: float | None = Field(
|
|
203
|
+
None, examples=['4600 psi'], title='Compressive Strength Test Pressure'
|
|
204
|
+
)
|
|
205
|
+
"""
|
|
206
|
+
Pressure held during Compressive Strength test
|
|
207
|
+
"""
|
|
208
|
+
CompressiveStrengthTemperature: float | None = Field(
|
|
209
|
+
None, examples=['60 degF'], title='Compressive Strength Temperature'
|
|
210
|
+
)
|
|
211
|
+
"""
|
|
212
|
+
Compressive strength temperature
|
|
213
|
+
"""
|
|
214
|
+
CompressiveStrengthElapsedTime: float | None = Field(
|
|
215
|
+
None, examples=['15 h'], title='Compressive Strength Elapsed Time'
|
|
216
|
+
)
|
|
217
|
+
"""
|
|
218
|
+
Compressive Strength Elapsed Time
|
|
219
|
+
"""
|
|
220
|
+
CompressiveStrengthTransitTime: float | None = Field(
|
|
221
|
+
None, examples=['13 usec/in'], title='Compressive Strength Transit Time'
|
|
222
|
+
)
|
|
223
|
+
"""
|
|
224
|
+
Transit Time measured over a set length (microseconds)
|
|
225
|
+
"""
|
|
226
|
+
CompressiveStrength: float | None = Field(
|
|
227
|
+
None, examples=['400 psi'], title='Compressive Strength'
|
|
228
|
+
)
|
|
229
|
+
"""
|
|
230
|
+
Compressive Strength
|
|
231
|
+
"""
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
class ThickeningTimeTestItem(BaseModel):
|
|
235
|
+
"""
|
|
236
|
+
Thickening Time Test data
|
|
237
|
+
"""
|
|
238
|
+
|
|
239
|
+
model_config = ConfigDict(
|
|
240
|
+
extra='allow',
|
|
241
|
+
)
|
|
242
|
+
TestIndex: int = Field(..., examples=[1], title='Thickening Test Index')
|
|
243
|
+
"""
|
|
244
|
+
Compressive Strength Index
|
|
245
|
+
"""
|
|
246
|
+
ThickeningTestConsistency: int | None = Field(
|
|
247
|
+
None, examples=[28], title='Thickening Test Consistency'
|
|
248
|
+
)
|
|
249
|
+
"""
|
|
250
|
+
Thickening text consistency/slurry viscosity: Bearden Consistency (Bc) 0 to 100.
|
|
251
|
+
"""
|
|
252
|
+
ThickeningTestTemperature: float | None = Field(
|
|
253
|
+
None, examples=['60 degF'], title='Thickening Test Temperature'
|
|
254
|
+
)
|
|
255
|
+
"""
|
|
256
|
+
Thickening Test Temperature
|
|
257
|
+
"""
|
|
258
|
+
ThickeningTestPressure: float | None = Field(
|
|
259
|
+
None, examples=['5232 psi'], title='Thickening Test Pressure'
|
|
260
|
+
)
|
|
261
|
+
"""
|
|
262
|
+
Thickening Test Pressure
|
|
263
|
+
"""
|
|
264
|
+
ThickeningTestElapsedTime: float | None = Field(
|
|
265
|
+
None, examples=['90 min'], title='Thickening Test Elapsed Time'
|
|
266
|
+
)
|
|
267
|
+
"""
|
|
268
|
+
Thickening Test Elapsed Time
|
|
269
|
+
"""
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
class CementAdditive(BaseModel):
|
|
273
|
+
"""
|
|
274
|
+
Additives/chemicals added to a Fluid during a cement job
|
|
275
|
+
"""
|
|
276
|
+
|
|
277
|
+
model_config = ConfigDict(
|
|
278
|
+
extra='allow',
|
|
279
|
+
)
|
|
280
|
+
AdditiveIndex: int = Field(..., examples=[1], title='Additive Index')
|
|
281
|
+
"""
|
|
282
|
+
Additive index or sequence number. Used to retain order.
|
|
283
|
+
"""
|
|
284
|
+
AdditiveNameID: constr(
|
|
285
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-FluidAdditiveName:[\w\-\.\:\%]+:[0-9]*$'
|
|
286
|
+
) = Field(
|
|
287
|
+
...,
|
|
288
|
+
examples=[
|
|
289
|
+
'namespace:reference-data--FluidAdditiveName:EZ-Flo_II.PB.percent-bwoc:'
|
|
290
|
+
],
|
|
291
|
+
title='Additive Name ID',
|
|
292
|
+
)
|
|
293
|
+
"""
|
|
294
|
+
Relationship to a FluidAdditiveName reference-data record.
|
|
295
|
+
"""
|
|
296
|
+
AdditiveCode: str | None = Field(None, examples=['EZFloII'], title='Additive Code')
|
|
297
|
+
"""
|
|
298
|
+
Additive Code
|
|
299
|
+
"""
|
|
300
|
+
AdditiveTypeID: (
|
|
301
|
+
constr(
|
|
302
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-AdditiveType:[\w\-\.\:\%]+:[0-9]*$'
|
|
303
|
+
)
|
|
304
|
+
| None
|
|
305
|
+
) = Field(None, title='Additive Type ID')
|
|
306
|
+
"""
|
|
307
|
+
The liquid, solid or gaseous substance used to manipulate the function or properties of a fluid.
|
|
308
|
+
"""
|
|
309
|
+
AdditiveRoleID: (
|
|
310
|
+
constr(
|
|
311
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-AdditiveRole:[\w\-\.\:\%]+:[0-9]*$'
|
|
312
|
+
)
|
|
313
|
+
| None
|
|
314
|
+
) = Field(None, title='Additive Role ID')
|
|
315
|
+
"""
|
|
316
|
+
The chief purpose or reason for adding a substance to a fluid used in a downhole operation.
|
|
317
|
+
"""
|
|
318
|
+
AdditiveFormulationID: (
|
|
319
|
+
constr(
|
|
320
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-FluidAdditiveFormulationType:[\w\-\.\:\%]+:[0-9]*$'
|
|
321
|
+
)
|
|
322
|
+
| None
|
|
323
|
+
) = Field(None, title='Additive Formulation')
|
|
324
|
+
"""
|
|
325
|
+
Additive Formulation - Wet or Dry.
|
|
326
|
+
"""
|
|
327
|
+
AdditiveDensity: float | None = Field(None, title='Additive Density')
|
|
328
|
+
"""
|
|
329
|
+
Additive density
|
|
330
|
+
"""
|
|
331
|
+
AdditiveAmount: float | None = Field(None, title='Additive Amount')
|
|
332
|
+
"""
|
|
333
|
+
Additive Amount Used
|
|
334
|
+
"""
|
|
335
|
+
AdditiveAmountUoM: (
|
|
336
|
+
constr(
|
|
337
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-FluidAdditiveUnitOfMeasure:[\w\-\.\:\%]+:[0-9]*$'
|
|
338
|
+
)
|
|
339
|
+
| None
|
|
340
|
+
) = Field(
|
|
341
|
+
None,
|
|
342
|
+
examples=['namespace:reference-data--FluidAdditiveUnitOfMeasure:scf:'],
|
|
343
|
+
title='Additive Amount Unit',
|
|
344
|
+
)
|
|
345
|
+
"""
|
|
346
|
+
Additive Amount Unit
|
|
347
|
+
"""
|
|
348
|
+
AdditiveTypeConcentrationID: (
|
|
349
|
+
constr(
|
|
350
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-FluidAdditiveConcentrationType:[\w\-\.\:\%]+:[0-9]*$'
|
|
351
|
+
)
|
|
352
|
+
| None
|
|
353
|
+
) = Field(None, title='Type Conc')
|
|
354
|
+
"""
|
|
355
|
+
ConcentrationType: %BWOC (%By weight of Cement), %BWOB (%By weight of blend), %BWOW (%By weight of water), %BWOBF (%By weight of base fluid)
|
|
356
|
+
"""
|
|
357
|
+
AdditiveConcentrationAmount: float | None = Field(
|
|
358
|
+
None, title='Concentration Amount'
|
|
359
|
+
)
|
|
360
|
+
"""
|
|
361
|
+
Concentration Amount: unit type depends of typeConc.
|
|
362
|
+
"""
|
|
363
|
+
AdditiveConcentrationUnitOfMeasureID: (
|
|
364
|
+
constr(
|
|
365
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-FluidAdditiveConcUnitOfMeasure:[\w\-\.\:\%]+:[0-9]*$'
|
|
366
|
+
)
|
|
367
|
+
| None
|
|
368
|
+
) = Field(None, title='Additive Concentration Unit Of Measure ID')
|
|
369
|
+
"""
|
|
370
|
+
Additive Concentration Unit Of Measure
|
|
371
|
+
"""
|
|
372
|
+
AdditiveSackMass: float | None = Field(
|
|
373
|
+
None, examples=['94 lbs'], title='Mass of Sack'
|
|
374
|
+
)
|
|
375
|
+
"""
|
|
376
|
+
Mass of Sack
|
|
377
|
+
"""
|
|
378
|
+
AdditiveLiquidVolume: float | None = Field(None, title='Volume of container')
|
|
379
|
+
"""
|
|
380
|
+
Volume of container
|
|
381
|
+
"""
|
|
382
|
+
AdditiveMSDSID: str | None = Field(None, title='Additive MSDS ID')
|
|
383
|
+
"""
|
|
384
|
+
ID of or URL to Material Safety Data Sheet
|
|
385
|
+
"""
|
|
386
|
+
AdditiveRemark: str | None = Field(
|
|
387
|
+
None,
|
|
388
|
+
examples=[
|
|
389
|
+
'Mix Water was batch mixed, extra chemicals to account for dead volume in the batch mixer'
|
|
390
|
+
],
|
|
391
|
+
title='Remark',
|
|
392
|
+
)
|
|
393
|
+
"""
|
|
394
|
+
Comments or Remarks.
|
|
395
|
+
"""
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
class CementPumpSchedule(BaseModel):
|
|
399
|
+
"""
|
|
400
|
+
Cement Pump Schedule Parameters
|
|
401
|
+
"""
|
|
402
|
+
|
|
403
|
+
model_config = ConfigDict(
|
|
404
|
+
extra='allow',
|
|
405
|
+
)
|
|
406
|
+
SequenceNumber: int | None = Field(None, examples=[2], title='Sequence Number')
|
|
407
|
+
"""
|
|
408
|
+
Sequence Number
|
|
409
|
+
"""
|
|
410
|
+
StartDatetime: str | None = Field(
|
|
411
|
+
None, examples=['2020-04-20T08:15:00+0000'], title='Start Date/Time'
|
|
412
|
+
)
|
|
413
|
+
"""
|
|
414
|
+
Date/time when the pump schedule interval started.
|
|
415
|
+
"""
|
|
416
|
+
EndDatetime: str | None = Field(
|
|
417
|
+
None, examples=['2020-04-20T08:27:30+0000'], title='End Date/Time'
|
|
418
|
+
)
|
|
419
|
+
"""
|
|
420
|
+
Date/time when the pump schedule interval ended.
|
|
421
|
+
"""
|
|
422
|
+
ElapsedTime: float | None = Field(None, examples=['12.5 min'], title='Elapsed Time')
|
|
423
|
+
"""
|
|
424
|
+
Duration of the pumping schedule interval
|
|
425
|
+
"""
|
|
426
|
+
PlacementMethod: (
|
|
427
|
+
constr(
|
|
428
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementPlacementMethod:[\w\-\.\:\%]+:[0-9]*$'
|
|
429
|
+
)
|
|
430
|
+
| None
|
|
431
|
+
) = Field(
|
|
432
|
+
None,
|
|
433
|
+
examples=[
|
|
434
|
+
'namespace:reference-data--CementPlacementMethod:ForwardCirculation:'
|
|
435
|
+
],
|
|
436
|
+
title='Placement Method',
|
|
437
|
+
)
|
|
438
|
+
"""
|
|
439
|
+
Placement Method to land cement
|
|
440
|
+
"""
|
|
441
|
+
PumpEquipmentType: (
|
|
442
|
+
constr(
|
|
443
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementPumpEquipmentType:[\w\-\.\:\%]+:[0-9]*$'
|
|
444
|
+
)
|
|
445
|
+
| None
|
|
446
|
+
) = Field(
|
|
447
|
+
None,
|
|
448
|
+
examples=['namespace:reference-data--CementPumpEquipmentType:CementUnit:'],
|
|
449
|
+
title='Pumping Equipment Type',
|
|
450
|
+
)
|
|
451
|
+
"""
|
|
452
|
+
Pumping Equipment Type
|
|
453
|
+
"""
|
|
454
|
+
PumpRateMin: float | None = Field(
|
|
455
|
+
None, examples=['2 bbl/min'], title='Pump Rate Minimum'
|
|
456
|
+
)
|
|
457
|
+
"""
|
|
458
|
+
Minimum Rate fluid is pumped. 0 means it is a pause.
|
|
459
|
+
"""
|
|
460
|
+
PumpRateMax: float | None = Field(
|
|
461
|
+
None, examples=['4 bbl/min'], title='Pump Rate Maximum'
|
|
462
|
+
)
|
|
463
|
+
"""
|
|
464
|
+
Maximum Rate fluid is pumped. 0 means it is a pause.
|
|
465
|
+
"""
|
|
466
|
+
PumpRateAvg: float | None = Field(
|
|
467
|
+
None, examples=['4 bbl/min'], title='Pump Rate Average'
|
|
468
|
+
)
|
|
469
|
+
"""
|
|
470
|
+
Average Rate fluid is pumped. 0 means it is a pause.
|
|
471
|
+
"""
|
|
472
|
+
PumpPressureMin: float | None = Field(None, title='Pump Pressure Minimum')
|
|
473
|
+
"""
|
|
474
|
+
Pump Pressure Minimum
|
|
475
|
+
"""
|
|
476
|
+
PumpPressureMax: float | None = Field(None, title='Pump Pressure Maximum')
|
|
477
|
+
"""
|
|
478
|
+
Pump Pressure Maximum
|
|
479
|
+
"""
|
|
480
|
+
PumpPressureAvg: float | None = Field(None, title='Pump Pressure Average')
|
|
481
|
+
"""
|
|
482
|
+
Pump Pressure Average
|
|
483
|
+
"""
|
|
484
|
+
PumpVolume: float | None = Field(None, examples=['50 bbls'], title='Pump Volume')
|
|
485
|
+
"""
|
|
486
|
+
Volume pumped = eTimPump * ratePump.
|
|
487
|
+
"""
|
|
488
|
+
MixRate: float | None = Field(None, title='Mix Rate')
|
|
489
|
+
"""
|
|
490
|
+
Cement slurry mix rate
|
|
491
|
+
"""
|
|
492
|
+
PumpStrokesEstimated: int | None = Field(None, title='Pump Strokes Estimated')
|
|
493
|
+
"""
|
|
494
|
+
Number of Pump strokes estimated for the fluid to be pumped (assumed pump output known)
|
|
495
|
+
"""
|
|
496
|
+
PumpStrokesActual: int | None = Field(None, title='Pump Strokes Actual')
|
|
497
|
+
"""
|
|
498
|
+
Number of actual Pump strokes for the fluid to be pumped (assumed pump output known)
|
|
499
|
+
"""
|
|
500
|
+
PumpStrokeRate: float | None = Field(None, title='Pump Stroke Rate')
|
|
501
|
+
"""
|
|
502
|
+
Pump stroke rate (SPM)
|
|
503
|
+
"""
|
|
504
|
+
BackPressure: float | None = Field(None, title='Back Pressure')
|
|
505
|
+
"""
|
|
506
|
+
Back pressure applied during pumping stage.
|
|
507
|
+
"""
|
|
508
|
+
ShutdownElapsedTime: float | None = Field(None, title='Shutdown Elapsed Time')
|
|
509
|
+
"""
|
|
510
|
+
Shutdown Elapsed Time
|
|
511
|
+
"""
|
|
512
|
+
ExcessFluidRatio: float | None = Field(None, title='Excess Fluid Ratio')
|
|
513
|
+
"""
|
|
514
|
+
The ratio of excess fluid to total fluid pumped during the step
|
|
515
|
+
"""
|
|
516
|
+
Remark: str | None = Field(None, title='Remark')
|
|
517
|
+
"""
|
|
518
|
+
Remarks
|
|
519
|
+
"""
|
|
520
|
+
|
|
521
|
+
|
|
522
|
+
class CementingFluidItem(BaseModel):
|
|
523
|
+
"""
|
|
524
|
+
Original mud, washes, spacers, cement and displacement fluid properties.
|
|
525
|
+
"""
|
|
526
|
+
|
|
527
|
+
model_config = ConfigDict(
|
|
528
|
+
extra='allow',
|
|
529
|
+
)
|
|
530
|
+
FluidIndex: int = Field(..., examples=[1], title='Fluid Index')
|
|
531
|
+
"""
|
|
532
|
+
Cement pumping schedule index or sequence number. Fluid Index: 1: first fluid pumped (=original mud)
|
|
533
|
+
(last-1)=Tail cement, last= displacement mud
|
|
534
|
+
"""
|
|
535
|
+
FluidTypeID: (
|
|
536
|
+
constr(
|
|
537
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementFluidType:[\w\-\.\:\%]+:[0-9]*$'
|
|
538
|
+
)
|
|
539
|
+
| None
|
|
540
|
+
) = Field(
|
|
541
|
+
None,
|
|
542
|
+
examples=['namespace:reference-data--CementFluidType:LeadSlurry:'],
|
|
543
|
+
title='Fluid Type',
|
|
544
|
+
)
|
|
545
|
+
"""
|
|
546
|
+
High level fluid type
|
|
547
|
+
"""
|
|
548
|
+
MudTypeID: (
|
|
549
|
+
constr(
|
|
550
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementMudType:[\w\-\.\:\%]+:[0-9]*$'
|
|
551
|
+
)
|
|
552
|
+
| None
|
|
553
|
+
) = Field(None, title='Mud Type')
|
|
554
|
+
"""
|
|
555
|
+
Detailed level fluid type
|
|
556
|
+
"""
|
|
557
|
+
FluidName: str | None = Field(None, examples=['LeadSlurry'], title='Name of Fluid')
|
|
558
|
+
"""
|
|
559
|
+
Name of Fluid e.g. Lead or Tail Slurry
|
|
560
|
+
"""
|
|
561
|
+
FluidCommercialNameID: (
|
|
562
|
+
constr(
|
|
563
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementFluidProductName:[\w\-\.\:\%]+:[0-9]*$'
|
|
564
|
+
)
|
|
565
|
+
| None
|
|
566
|
+
) = Field(
|
|
567
|
+
None,
|
|
568
|
+
examples=['namespace:reference-data--CementFluidProductName:TXI:'],
|
|
569
|
+
title='Commercial name of Fluid',
|
|
570
|
+
)
|
|
571
|
+
"""
|
|
572
|
+
Commercial product or trade name of fluid
|
|
573
|
+
"""
|
|
574
|
+
FluidDescription: str | None = Field(None, title='Fluid Description')
|
|
575
|
+
"""
|
|
576
|
+
Fluid description.
|
|
577
|
+
"""
|
|
578
|
+
FluidSupplier: (
|
|
579
|
+
constr(pattern=r'^[\w\-\.]+:master-data\-\-Organisation:[\w\-\.\:\%]+:[0-9]*$')
|
|
580
|
+
| None
|
|
581
|
+
) = Field(
|
|
582
|
+
None,
|
|
583
|
+
examples=['namespace:master-data--Organisation:Halliburton:'],
|
|
584
|
+
title='Fluid Supplier',
|
|
585
|
+
)
|
|
586
|
+
"""
|
|
587
|
+
Fluid Supplier.
|
|
588
|
+
"""
|
|
589
|
+
FluidPurpose: str | None = Field(
|
|
590
|
+
None,
|
|
591
|
+
examples=['Primary cementation, seal off formation.'],
|
|
592
|
+
title='Fluid Purpose',
|
|
593
|
+
)
|
|
594
|
+
"""
|
|
595
|
+
Fluid purpose description.
|
|
596
|
+
"""
|
|
597
|
+
SlurryTypeID: (
|
|
598
|
+
constr(
|
|
599
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementSlurryType:[\w\-\.\:\%]+:[0-9]*$'
|
|
600
|
+
)
|
|
601
|
+
| None
|
|
602
|
+
) = Field(
|
|
603
|
+
None,
|
|
604
|
+
examples=['namespace:reference-data--CementSlurryType:ProductionSlurry:'],
|
|
605
|
+
title='Slurry Type',
|
|
606
|
+
)
|
|
607
|
+
"""
|
|
608
|
+
Slurry Type
|
|
609
|
+
"""
|
|
610
|
+
TopMeasuredDepth: float | None = Field(
|
|
611
|
+
None, examples=['10507 ft'], title='Fluid Top Measured Depth'
|
|
612
|
+
)
|
|
613
|
+
"""
|
|
614
|
+
Estimated Measured depth at top of fluid placement at end of Stage.
|
|
615
|
+
"""
|
|
616
|
+
BaseMeasuredDepth: float | None = Field(
|
|
617
|
+
None, examples=['11162 ft'], title='Fluid Base Measured Depth'
|
|
618
|
+
)
|
|
619
|
+
"""
|
|
620
|
+
Estimate Measured depth at bottom of fluid placement at end of Stage
|
|
621
|
+
"""
|
|
622
|
+
SlurryHeight: float | None = Field(None, examples=['665 ft'], title='SlurryHeight')
|
|
623
|
+
"""
|
|
624
|
+
Measured depth interval between the top and base of the slurry placement.
|
|
625
|
+
"""
|
|
626
|
+
MixFluidRatio: float | None = Field(None, title='Mix Fluid Ratio')
|
|
627
|
+
"""
|
|
628
|
+
Mix Fluid Ratio
|
|
629
|
+
"""
|
|
630
|
+
SlurryMixMethodID: (
|
|
631
|
+
constr(
|
|
632
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementSlurryMixMethod:[\w\-\.\:\%]+:[0-9]*$'
|
|
633
|
+
)
|
|
634
|
+
| None
|
|
635
|
+
) = Field(
|
|
636
|
+
None,
|
|
637
|
+
examples=['namespace:reference-data--CementSlurryMixMethod:Batch:'],
|
|
638
|
+
title='Slurry Mix Method',
|
|
639
|
+
)
|
|
640
|
+
"""
|
|
641
|
+
Slurry Mix Method
|
|
642
|
+
"""
|
|
643
|
+
MixFluidConcentration: float | None = Field(
|
|
644
|
+
None, examples=['6.42 gal[US]/sack[94lbm]'], title='Mix Fluid Concentration'
|
|
645
|
+
)
|
|
646
|
+
"""
|
|
647
|
+
Mix Fluid Concentration
|
|
648
|
+
"""
|
|
649
|
+
OpenHoleExcessPercent: float | None = Field(
|
|
650
|
+
None, examples=[0.05], title='Open Hole Excess Percent'
|
|
651
|
+
)
|
|
652
|
+
"""
|
|
653
|
+
Open Hole Excess Slurry Volume Percent
|
|
654
|
+
"""
|
|
655
|
+
CasedHoleExcessPercent: float | None = Field(
|
|
656
|
+
None, examples=[0], title='Cased Hole Excess Percent'
|
|
657
|
+
)
|
|
658
|
+
"""
|
|
659
|
+
Cased Hole Excess Slurry Volume Percent
|
|
660
|
+
"""
|
|
661
|
+
TotalFluidVolume: float | None = Field(
|
|
662
|
+
None, examples=['50 bbl'], title='Total Fluid Volume'
|
|
663
|
+
)
|
|
664
|
+
"""
|
|
665
|
+
Total Fluid/Slurry Volume. If CementingFluid is NOT a cement slurry, then report the total fluid volume created of the fluid in question.
|
|
666
|
+
"""
|
|
667
|
+
PumpedVolume: float | None = Field(None, examples=['50 bbl'], title='Pumped Volume')
|
|
668
|
+
"""
|
|
669
|
+
Volume Pumped
|
|
670
|
+
"""
|
|
671
|
+
DesignVolume: float | None = Field(None, examples=['50 bbl'], title='Design Volume')
|
|
672
|
+
"""
|
|
673
|
+
DesignVolume
|
|
674
|
+
"""
|
|
675
|
+
ReservedVolume: float | None = Field(
|
|
676
|
+
None, examples=['0 bbl'], title='Reserved Volume'
|
|
677
|
+
)
|
|
678
|
+
"""
|
|
679
|
+
Reserved (Unpumped) Volume
|
|
680
|
+
"""
|
|
681
|
+
TotalSlurryVolume: float | None = Field(
|
|
682
|
+
None, examples=['50 bbl'], title='Total Slurry Volume'
|
|
683
|
+
)
|
|
684
|
+
"""
|
|
685
|
+
Total Slurry Volume
|
|
686
|
+
"""
|
|
687
|
+
ExcessSlurryVolume: float | None = Field(
|
|
688
|
+
None, examples=['2.5 bbl'], title='Excess Slurry Volume'
|
|
689
|
+
)
|
|
690
|
+
"""
|
|
691
|
+
Excess Slurry Volume
|
|
692
|
+
"""
|
|
693
|
+
ExcessSlurryVolumeMeasureTypeID: (
|
|
694
|
+
constr(
|
|
695
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementExcessVolCalcMethod:[\w\-\.\:\%]+:[0-9]*$'
|
|
696
|
+
)
|
|
697
|
+
| None
|
|
698
|
+
) = Field(
|
|
699
|
+
None,
|
|
700
|
+
examples=['namespace:reference-data--CementExcessVolCalcMethod:Estimate:'],
|
|
701
|
+
title='Excess Slurry Volume Measurement Type',
|
|
702
|
+
)
|
|
703
|
+
"""
|
|
704
|
+
Excess Slurry Volume Measurement Type
|
|
705
|
+
"""
|
|
706
|
+
GaugeHoleSize: float | None = Field(
|
|
707
|
+
None, examples=['12.25 in'], title='Gauge Hole Size'
|
|
708
|
+
)
|
|
709
|
+
"""
|
|
710
|
+
Gauge Hole Size for estimating annular volume
|
|
711
|
+
"""
|
|
712
|
+
FluidRheologicalModelID: (
|
|
713
|
+
constr(
|
|
714
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-FluidRheologicalModelType:[\w\-\.\:\%]+:[0-9]*$'
|
|
715
|
+
)
|
|
716
|
+
| None
|
|
717
|
+
) = Field(None, title='Fluid Rheological Model ID')
|
|
718
|
+
"""
|
|
719
|
+
Fluid Rheological Model - Newtonian/Bingham/Power Law/Herschel Bulkley.
|
|
720
|
+
"""
|
|
721
|
+
Rheometer: list[RheometerItem] | None = Field(None, title='Fluid Rheometer')
|
|
722
|
+
"""
|
|
723
|
+
Fluid Fann Viscometer Rheology
|
|
724
|
+
"""
|
|
725
|
+
DesignDensity: float | None = Field(
|
|
726
|
+
None, examples=['15.6 lbm/gal[US]'], title='Design Fluid Density'
|
|
727
|
+
)
|
|
728
|
+
"""
|
|
729
|
+
Design fluid density
|
|
730
|
+
"""
|
|
731
|
+
Density: float | None = Field(
|
|
732
|
+
None, examples=['15.6 lbm/gal[US]'], title='Fluid Density'
|
|
733
|
+
)
|
|
734
|
+
"""
|
|
735
|
+
Fluid density
|
|
736
|
+
"""
|
|
737
|
+
DensityMethodID: (
|
|
738
|
+
constr(
|
|
739
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-FluidDensityMeasurementMethod:[\w\-\.\:\%]+:[0-9]*$'
|
|
740
|
+
)
|
|
741
|
+
| None
|
|
742
|
+
) = Field(None, title='Density Method')
|
|
743
|
+
"""
|
|
744
|
+
Density Method
|
|
745
|
+
"""
|
|
746
|
+
DensityTemperature: float | None = Field(
|
|
747
|
+
None, title='Fluid Density Measurement Temperature'
|
|
748
|
+
)
|
|
749
|
+
"""
|
|
750
|
+
Fluid Density Measurement Temperature
|
|
751
|
+
"""
|
|
752
|
+
DensityPressure: float | None = Field(
|
|
753
|
+
None, title='Fluid Density Measurement Pressure'
|
|
754
|
+
)
|
|
755
|
+
"""
|
|
756
|
+
Fluid Density Measurement Pressure
|
|
757
|
+
"""
|
|
758
|
+
Viscosity: float | None = Field(None, title='Viscosity')
|
|
759
|
+
"""
|
|
760
|
+
Viscosity (Newtonian) or Plastic Viscosity if Bingham. Not relevant for other rheological models.
|
|
761
|
+
"""
|
|
762
|
+
YieldPoint: float | None = Field(None, title='Yield Point')
|
|
763
|
+
"""
|
|
764
|
+
Yield point (Bingham and Herschel Bulkley models).
|
|
765
|
+
"""
|
|
766
|
+
N: float | None = Field(None, title='N')
|
|
767
|
+
"""
|
|
768
|
+
Power Law index (Power Law and Herschel-Bulkley).
|
|
769
|
+
"""
|
|
770
|
+
K: float | None = Field(None, title='K')
|
|
771
|
+
"""
|
|
772
|
+
Consistency index (Power Law and Herschel-Bulkley).
|
|
773
|
+
"""
|
|
774
|
+
Gel10SecReading: float | None = Field(None, title='Gel 10 Second Reading')
|
|
775
|
+
"""
|
|
776
|
+
Gel reading after 10 seconds.
|
|
777
|
+
"""
|
|
778
|
+
Gel10SecStrength: float | None = Field(None, title='Gel 10 Second Strength')
|
|
779
|
+
"""
|
|
780
|
+
Gel strength after 10 seconds.
|
|
781
|
+
"""
|
|
782
|
+
Gel1MinReading: float | None = Field(None, title='Gel 1 Minute Reading')
|
|
783
|
+
"""
|
|
784
|
+
Gel reading after 1 minute.
|
|
785
|
+
"""
|
|
786
|
+
Gel1MinStrength: float | None = Field(None, title='Gel 1 Minute Strength')
|
|
787
|
+
"""
|
|
788
|
+
Gel strength after 1 minute.
|
|
789
|
+
"""
|
|
790
|
+
Gel10MinReading: float | None = Field(None, title='Gel 10 Minute Reading')
|
|
791
|
+
"""
|
|
792
|
+
Gel reading after 10 minutes.
|
|
793
|
+
"""
|
|
794
|
+
Gel10MinStrength: float | None = Field(None, title='Gel 10 Minute Strength')
|
|
795
|
+
"""
|
|
796
|
+
Gel strength after 10 minutes.
|
|
797
|
+
"""
|
|
798
|
+
Gel30MinReading: float | None = Field(None, title='Gel 30 Minute Reading')
|
|
799
|
+
"""
|
|
800
|
+
Gel reading after 30 minutes.
|
|
801
|
+
"""
|
|
802
|
+
Gel30MinStrength: float | None = Field(None, title='Gel 30 Minute Strength')
|
|
803
|
+
"""
|
|
804
|
+
Gel strength after 30 minutes.
|
|
805
|
+
"""
|
|
806
|
+
BaseFluidTypeID: (
|
|
807
|
+
constr(pattern=r'^[\w\-\.]+:reference-data\-\-FluidType:[\w\-\.\:\%]+:[0-9]*$')
|
|
808
|
+
| None
|
|
809
|
+
) = Field(
|
|
810
|
+
None,
|
|
811
|
+
examples=['namespace:reference-data--FluidType:WBM-Synthetic:'],
|
|
812
|
+
title='Base Fluid Type ID',
|
|
813
|
+
)
|
|
814
|
+
"""
|
|
815
|
+
Drilling fluid base type
|
|
816
|
+
"""
|
|
817
|
+
BaseFluidDensity: float | None = Field(
|
|
818
|
+
None, examples=['9.2 lbm/gal[US]'], title='Base Fluid Density'
|
|
819
|
+
)
|
|
820
|
+
"""
|
|
821
|
+
Density of base fluid.
|
|
822
|
+
"""
|
|
823
|
+
MixFluidTypeID: (
|
|
824
|
+
constr(
|
|
825
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementMixFluidType:[\w\-\.\:\%]+:[0-9]*$'
|
|
826
|
+
)
|
|
827
|
+
| None
|
|
828
|
+
) = Field(
|
|
829
|
+
None,
|
|
830
|
+
examples=['namespace:reference-data--CementMixFluidType:Water:'],
|
|
831
|
+
title='Mix Fluid Type',
|
|
832
|
+
)
|
|
833
|
+
"""
|
|
834
|
+
Mix Fluid Type
|
|
835
|
+
"""
|
|
836
|
+
DryBlendName: str | None = Field(
|
|
837
|
+
None, examples=['Microsphere Blend'], title='Dry Blend Name'
|
|
838
|
+
)
|
|
839
|
+
"""
|
|
840
|
+
Name of dry blend.
|
|
841
|
+
"""
|
|
842
|
+
DryBlendDescription: str | None = Field(
|
|
843
|
+
None, examples=['Class A'], title='Dry Blend Description'
|
|
844
|
+
)
|
|
845
|
+
"""
|
|
846
|
+
Description of dry blend.
|
|
847
|
+
"""
|
|
848
|
+
DryBlendCementSlurryClassID: (
|
|
849
|
+
constr(
|
|
850
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementSlurryClass:[\w\-\.\:\%]+:[0-9]*$'
|
|
851
|
+
)
|
|
852
|
+
| None
|
|
853
|
+
) = Field(
|
|
854
|
+
None,
|
|
855
|
+
examples=['namespace:reference-data--CementSlurryClass:A:'],
|
|
856
|
+
title='Dry Blend Cement Slurry Class',
|
|
857
|
+
)
|
|
858
|
+
"""
|
|
859
|
+
Dry blend cement slurry class
|
|
860
|
+
"""
|
|
861
|
+
DryBlendMass: float | None = Field(None, title='Dry Blend Mass')
|
|
862
|
+
"""
|
|
863
|
+
Total mass of dry blend including additives: the volume is not constant.
|
|
864
|
+
"""
|
|
865
|
+
DryBlendDensity: float | None = Field(None, title='Dry Blend Density')
|
|
866
|
+
"""
|
|
867
|
+
Density of Dry blend.
|
|
868
|
+
"""
|
|
869
|
+
DryBlendMassPerUnit: float | None = Field(None, title='Dry Blend Mass per Unit')
|
|
870
|
+
"""
|
|
871
|
+
Weight of a sack of dry blend aka Sack Size or Tonnes
|
|
872
|
+
"""
|
|
873
|
+
CementMassUnitTypeID: (
|
|
874
|
+
constr(
|
|
875
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementMassUnitType:[\w\-\.\:\%]+:[0-9]*$'
|
|
876
|
+
)
|
|
877
|
+
| None
|
|
878
|
+
) = Field(
|
|
879
|
+
None,
|
|
880
|
+
examples=['namespace:reference-data--CementMassUnitType:Sacks:'],
|
|
881
|
+
title='Cement Mass Unit Type',
|
|
882
|
+
)
|
|
883
|
+
"""
|
|
884
|
+
Cement Mass Unit Type (Sacks or Tonnes)
|
|
885
|
+
"""
|
|
886
|
+
UnitsCalculated: int | None = Field(None, examples=[177], title='Amount Calculated')
|
|
887
|
+
"""
|
|
888
|
+
Units/Amount of Dry Blend Calculated
|
|
889
|
+
"""
|
|
890
|
+
UnitsUsed: int | None = Field(None, examples=[177], title='Amount Used')
|
|
891
|
+
"""
|
|
892
|
+
Units/Amount of Dry Blend Used
|
|
893
|
+
"""
|
|
894
|
+
CementYield: float | None = Field(
|
|
895
|
+
None, examples=['1.59 ft3/sk'], title='Cement Slurry Yield'
|
|
896
|
+
)
|
|
897
|
+
"""
|
|
898
|
+
Cement Yield per Unit
|
|
899
|
+
"""
|
|
900
|
+
YieldVolume: float | None = Field(
|
|
901
|
+
None, examples=['50 bbl'], title='Slurry Yield Volume'
|
|
902
|
+
)
|
|
903
|
+
"""
|
|
904
|
+
Cement Slurry Yield Volume. Calculated - Sacks Used * CementYield
|
|
905
|
+
"""
|
|
906
|
+
IsFoamUsed: bool | None = Field(None, examples=[False], title='Is Foam Used')
|
|
907
|
+
"""
|
|
908
|
+
Foam used indicator
|
|
909
|
+
"""
|
|
910
|
+
GasFoamTypeID: (
|
|
911
|
+
constr(
|
|
912
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementGasFoamType:[\w\-\.\:\%]+:[0-9]*$'
|
|
913
|
+
)
|
|
914
|
+
| None
|
|
915
|
+
) = Field(None, title='Gas Foam Type')
|
|
916
|
+
"""
|
|
917
|
+
Gas type used for foam job.
|
|
918
|
+
"""
|
|
919
|
+
GasFoamVolume: float | None = Field(None, title='GasFoam Volume')
|
|
920
|
+
"""
|
|
921
|
+
Volume of gas used for foam job
|
|
922
|
+
"""
|
|
923
|
+
FoamInjectionPressure: float | None = Field(None, title='Foam Injection Pressure')
|
|
924
|
+
"""
|
|
925
|
+
Foam Injection Pressure
|
|
926
|
+
"""
|
|
927
|
+
ConstantGasFoamDensity: float | None = Field(
|
|
928
|
+
None, title='Constant Gas Foam Method Density'
|
|
929
|
+
)
|
|
930
|
+
"""
|
|
931
|
+
Constant Gas Foam Method Density
|
|
932
|
+
"""
|
|
933
|
+
DensityConstantGasMethodID: (
|
|
934
|
+
constr(
|
|
935
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementConstantGasMethod:[\w\-\.\:\%]+:[0-9]*$'
|
|
936
|
+
)
|
|
937
|
+
| None
|
|
938
|
+
) = Field(None, title='Density Constant Gas Ratio Method')
|
|
939
|
+
"""
|
|
940
|
+
Constant gas ratio method for measuring average density.
|
|
941
|
+
"""
|
|
942
|
+
GasMethodAverageRatio: float | None = Field(None, title='Gas Method Average Ratio')
|
|
943
|
+
"""
|
|
944
|
+
Gas foam method ratio
|
|
945
|
+
"""
|
|
946
|
+
GasMethodStartRatio: float | None = Field(None, title='Gas Method Start Ratio')
|
|
947
|
+
"""
|
|
948
|
+
Gas foam method: initial method ratio
|
|
949
|
+
"""
|
|
950
|
+
GasMethodEndRatio: float | None = Field(None, title='Gas Method End Ratio')
|
|
951
|
+
"""
|
|
952
|
+
Gas foam method: final method ratio
|
|
953
|
+
"""
|
|
954
|
+
CompressiveStrengthTest: list[CompressiveStrengthTestItem] | None = Field(
|
|
955
|
+
None, title='Compressive Strength Test'
|
|
956
|
+
)
|
|
957
|
+
"""
|
|
958
|
+
Compressive Strength Pressure/Temperature/Thickening
|
|
959
|
+
"""
|
|
960
|
+
ThickeningTimeTest: list[ThickeningTimeTestItem] | None = Field(
|
|
961
|
+
None, title='Thickening Test'
|
|
962
|
+
)
|
|
963
|
+
"""
|
|
964
|
+
Thickening Test - Pressure, Temperature, Consistency (Bc) v Elapsed Time
|
|
965
|
+
"""
|
|
966
|
+
ZeroGelElapsedTime: float | None = Field(None, title='Zero Gel Elapsed Time')
|
|
967
|
+
"""
|
|
968
|
+
The elapsed time from initiation of the static portion of the test until the slurry attains a gel strength of 100lbf/100sq ft.
|
|
969
|
+
"""
|
|
970
|
+
TransitionElapsedTime: float | None = Field(None, title='Transition Elapsed Time')
|
|
971
|
+
"""
|
|
972
|
+
The elapsed time between the development of 100lbf/100sq ft gel strength and 500lbf/100 sq ft gel strength.
|
|
973
|
+
"""
|
|
974
|
+
FreeFluidPercent: float | None = Field(
|
|
975
|
+
None, examples=[0], title='Free Fluid Percent'
|
|
976
|
+
)
|
|
977
|
+
"""
|
|
978
|
+
Test free fluid (mL/250ML) API 10B-2
|
|
979
|
+
"""
|
|
980
|
+
FreeFluidTemperature: float | None = Field(
|
|
981
|
+
None, examples=['60 degF'], title='Free Fluid Temperature'
|
|
982
|
+
)
|
|
983
|
+
"""
|
|
984
|
+
Test free fluid temperature
|
|
985
|
+
"""
|
|
986
|
+
FreeFluidTestAngle: float | None = Field(
|
|
987
|
+
None, examples=['45 deg'], title='Free Fluid Test Angle'
|
|
988
|
+
)
|
|
989
|
+
"""
|
|
990
|
+
Free Fluid Test Angle e.g. 0 or 45 degrees
|
|
991
|
+
"""
|
|
992
|
+
FluidLossPressure: float | None = Field(
|
|
993
|
+
None, examples=['1000 psi'], title='Fluid Loss Pressure'
|
|
994
|
+
)
|
|
995
|
+
"""
|
|
996
|
+
Fluid loss pressure
|
|
997
|
+
"""
|
|
998
|
+
FluidLossTemperature: float | None = Field(
|
|
999
|
+
None, examples=['60 degF'], title='Fluid Loss Temperature'
|
|
1000
|
+
)
|
|
1001
|
+
"""
|
|
1002
|
+
Fluid loss temperature
|
|
1003
|
+
"""
|
|
1004
|
+
FluidLossElapsedTime: float | None = Field(
|
|
1005
|
+
None, examples=['30 min'], title='Fluid Loss Elapsed Time'
|
|
1006
|
+
)
|
|
1007
|
+
"""
|
|
1008
|
+
Fluid loss dehydrating test period, used to compute the API fluid loss.
|
|
1009
|
+
"""
|
|
1010
|
+
FluidLossVolume: float | None = Field(
|
|
1011
|
+
None, examples=['64 cm3'], title='Fluid Loss Volume'
|
|
1012
|
+
)
|
|
1013
|
+
"""
|
|
1014
|
+
Fluid loss volume
|
|
1015
|
+
"""
|
|
1016
|
+
APIFluidLossRate: float | None = Field(
|
|
1017
|
+
None, examples=['128 1/30 cm3/min'], title='API Fluid Loss Rate'
|
|
1018
|
+
)
|
|
1019
|
+
"""
|
|
1020
|
+
API fluid loss = 2 * volTestFluidLoss * SQRT(30/timeFluidLoss).
|
|
1021
|
+
"""
|
|
1022
|
+
APIFluidLoss30Min: float | None = Field(
|
|
1023
|
+
None, examples=['128 cm3'], title='API Fluid Loss @ 30 Min'
|
|
1024
|
+
)
|
|
1025
|
+
"""
|
|
1026
|
+
API Fluid Loss @ 30 Min
|
|
1027
|
+
"""
|
|
1028
|
+
SolidVolumeFraction: float | None = Field(
|
|
1029
|
+
None, title='Solid Volume Per Volume Measure'
|
|
1030
|
+
)
|
|
1031
|
+
"""
|
|
1032
|
+
Solid Volume Per Volume Measure
|
|
1033
|
+
"""
|
|
1034
|
+
SourceWaterDescription: str | None = Field(
|
|
1035
|
+
None, examples=['Field (Fresh) Water'], title='Water Source Description'
|
|
1036
|
+
)
|
|
1037
|
+
"""
|
|
1038
|
+
Water source description
|
|
1039
|
+
"""
|
|
1040
|
+
SourceWaterTemperature: float | None = Field(None, title='Source Water Temperature')
|
|
1041
|
+
"""
|
|
1042
|
+
Source Water Temperature
|
|
1043
|
+
"""
|
|
1044
|
+
SourceWaterpH: float | None = Field(None, title='Source Water pH')
|
|
1045
|
+
"""
|
|
1046
|
+
Source Water pH
|
|
1047
|
+
"""
|
|
1048
|
+
SourceWaterpHTemperature: float | None = Field(
|
|
1049
|
+
None, title='Source Water pH Temperature'
|
|
1050
|
+
)
|
|
1051
|
+
"""
|
|
1052
|
+
Source Water pH Temperature
|
|
1053
|
+
"""
|
|
1054
|
+
SourceWaterChlorides: float | None = Field(
|
|
1055
|
+
None, examples=['31 ppm'], title='Source Water Chlorides'
|
|
1056
|
+
)
|
|
1057
|
+
"""
|
|
1058
|
+
Source Water Chlorides
|
|
1059
|
+
"""
|
|
1060
|
+
MixabilityRating: int | None = Field(None, examples=[4], title='Mixability Rating')
|
|
1061
|
+
"""
|
|
1062
|
+
Mixability (0 - 5) - 0 is not mixable
|
|
1063
|
+
"""
|
|
1064
|
+
CementAdditives: list[CementAdditive] | None = Field(None, title='Cement Additives')
|
|
1065
|
+
"""
|
|
1066
|
+
Cement Additives list. Additives can be added in slurry but also in spacers, washes, mud.
|
|
1067
|
+
"""
|
|
1068
|
+
CementPumpSchedules: list[CementPumpSchedule] | None = Field(
|
|
1069
|
+
None, title='Cement Pump Schedules'
|
|
1070
|
+
)
|
|
1071
|
+
"""
|
|
1072
|
+
Set of (Time / Rate / Back Pressure).
|
|
1073
|
+
"""
|
|
1074
|
+
CementTestLabID: str | None = Field(
|
|
1075
|
+
None, examples=[638808.1], title='Cement Test Lab ID'
|
|
1076
|
+
)
|
|
1077
|
+
"""
|
|
1078
|
+
Cement Test Lab ID Number
|
|
1079
|
+
"""
|
|
1080
|
+
CementFluidRemark: str | None = Field(None, title='Remarks')
|
|
1081
|
+
"""
|
|
1082
|
+
Comments or Remarks
|
|
1083
|
+
"""
|
|
1084
|
+
|
|
1085
|
+
|
|
1086
|
+
class HesitationSqueezeItem(BaseModel):
|
|
1087
|
+
"""
|
|
1088
|
+
Hesitation Squeeze History
|
|
1089
|
+
"""
|
|
1090
|
+
|
|
1091
|
+
model_config = ConfigDict(
|
|
1092
|
+
extra='allow',
|
|
1093
|
+
)
|
|
1094
|
+
SequenceNo: int | None = Field(None, title='Sequence Number')
|
|
1095
|
+
"""
|
|
1096
|
+
Sequence Number
|
|
1097
|
+
"""
|
|
1098
|
+
InitialPressure: float | None = Field(None, title='Initial Pressure')
|
|
1099
|
+
"""
|
|
1100
|
+
Initial Pressure
|
|
1101
|
+
"""
|
|
1102
|
+
FinalPressure: float | None = Field(None, title='Final Pressure')
|
|
1103
|
+
"""
|
|
1104
|
+
Final Pressure
|
|
1105
|
+
"""
|
|
1106
|
+
Volume: float | None = Field(None, title='Volume Pumped')
|
|
1107
|
+
"""
|
|
1108
|
+
Volume Pumped
|
|
1109
|
+
"""
|
|
1110
|
+
HesitationTime: float | None = Field(None, title='Hesitation Time')
|
|
1111
|
+
"""
|
|
1112
|
+
Duration between pumping stages
|
|
1113
|
+
"""
|
|
1114
|
+
Remarks: str | None = Field(None, title='Remarks')
|
|
1115
|
+
"""
|
|
1116
|
+
Remarks
|
|
1117
|
+
"""
|
|
1118
|
+
|
|
1119
|
+
|
|
1120
|
+
class CementStage(BaseModel):
|
|
1121
|
+
"""
|
|
1122
|
+
A single cement stage performed within a Job.
|
|
1123
|
+
"""
|
|
1124
|
+
|
|
1125
|
+
model_config = ConfigDict(
|
|
1126
|
+
extra='allow',
|
|
1127
|
+
)
|
|
1128
|
+
StageNumber: float = Field(..., examples=[1], title='Stage Number')
|
|
1129
|
+
"""
|
|
1130
|
+
Stage number.
|
|
1131
|
+
"""
|
|
1132
|
+
StageTypeID: constr(
|
|
1133
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementStageType:[\w\-\.\:\%]+:[0-9]*$'
|
|
1134
|
+
) = Field(
|
|
1135
|
+
...,
|
|
1136
|
+
examples=['namespace:reference-data--CementStageType:Casing:'],
|
|
1137
|
+
title='Stage Type',
|
|
1138
|
+
)
|
|
1139
|
+
"""
|
|
1140
|
+
Stage type.
|
|
1141
|
+
"""
|
|
1142
|
+
IntervalTopMeasuredDepth: float | None = Field(
|
|
1143
|
+
None, examples=[11007], title='Interval Top Measured Depth'
|
|
1144
|
+
)
|
|
1145
|
+
"""
|
|
1146
|
+
Final placement measured depth at top of interval.
|
|
1147
|
+
"""
|
|
1148
|
+
IntervalBaseMeasuredDepth: float | None = Field(
|
|
1149
|
+
None, examples=[11162], title='Interval Base Measured Depth'
|
|
1150
|
+
)
|
|
1151
|
+
"""
|
|
1152
|
+
Final placement measured depth of base of interval.
|
|
1153
|
+
"""
|
|
1154
|
+
IntervalTopTrueVerticalDepth: float | None = Field(
|
|
1155
|
+
None, title='Interval Top True Vertical Depth'
|
|
1156
|
+
)
|
|
1157
|
+
"""
|
|
1158
|
+
Final placement True Vertical depth at top of interval.
|
|
1159
|
+
"""
|
|
1160
|
+
IntervalBaseTrueVerticalDepth: float | None = Field(
|
|
1161
|
+
None, title='Interval Base True Vertical Depth'
|
|
1162
|
+
)
|
|
1163
|
+
"""
|
|
1164
|
+
Final placement True Vertical depth of base of interval.
|
|
1165
|
+
"""
|
|
1166
|
+
StageIntervalLength: float | None = Field(
|
|
1167
|
+
None, examples=[11007], title='Stage Interval Length'
|
|
1168
|
+
)
|
|
1169
|
+
"""
|
|
1170
|
+
Measured depth interval for the cement stage (Base MD - Top MD).
|
|
1171
|
+
"""
|
|
1172
|
+
MixStartDate: str | None = Field(
|
|
1173
|
+
None, examples=['2020-04-20T06:30:00+0000'], title='Mix Start Date/time'
|
|
1174
|
+
)
|
|
1175
|
+
"""
|
|
1176
|
+
Date/time when mixing of cement started.
|
|
1177
|
+
"""
|
|
1178
|
+
PumpStartDate: str | None = Field(
|
|
1179
|
+
None, examples=['2020-04-20T08:15:00+0000'], title='Pump Start Date/time'
|
|
1180
|
+
)
|
|
1181
|
+
"""
|
|
1182
|
+
Date/time when pumping cement started.
|
|
1183
|
+
"""
|
|
1184
|
+
PumpEndDate: str | None = Field(
|
|
1185
|
+
None, examples=['2020-04-20T11:15:00+0000'], title='Pump End Date/time'
|
|
1186
|
+
)
|
|
1187
|
+
"""
|
|
1188
|
+
Date/time when pumping cement ended.
|
|
1189
|
+
"""
|
|
1190
|
+
DisplaceStartDate: str | None = Field(
|
|
1191
|
+
None,
|
|
1192
|
+
examples=['2020-04-20T11:15:00+0000'],
|
|
1193
|
+
title='Displacement Start Date/time',
|
|
1194
|
+
)
|
|
1195
|
+
"""
|
|
1196
|
+
Date/time when displacing of cement started.
|
|
1197
|
+
"""
|
|
1198
|
+
MudCirculationElapsedTime: float | None = Field(
|
|
1199
|
+
None, examples=['54 min'], title='Mud Circulation Elapsed Time'
|
|
1200
|
+
)
|
|
1201
|
+
"""
|
|
1202
|
+
Mud Circulation Elapsed Time
|
|
1203
|
+
"""
|
|
1204
|
+
DisplacementFluidName: str | None = Field(
|
|
1205
|
+
None, examples=['SBM'], title='Displacement Fluid Name'
|
|
1206
|
+
)
|
|
1207
|
+
"""
|
|
1208
|
+
Displacement fluid name.
|
|
1209
|
+
"""
|
|
1210
|
+
DisplacementFluidDensity: float | None = Field(
|
|
1211
|
+
None, examples=['9.4 lbm/gal[US]'], title='Displacement Fluid Density'
|
|
1212
|
+
)
|
|
1213
|
+
"""
|
|
1214
|
+
Density of displacement fluid.
|
|
1215
|
+
"""
|
|
1216
|
+
DisplacementFluidVolume: float | None = Field(
|
|
1217
|
+
None, examples=['50 bbl'], title='Displacement Fluid volume'
|
|
1218
|
+
)
|
|
1219
|
+
"""
|
|
1220
|
+
Volume of displacement fluid.
|
|
1221
|
+
"""
|
|
1222
|
+
DisplacementFlowrateAvg: float | None = Field(
|
|
1223
|
+
None, examples=['2 bbl/min'], title='Displacement Flowrate Average'
|
|
1224
|
+
)
|
|
1225
|
+
"""
|
|
1226
|
+
Average (or actual) displacement rate
|
|
1227
|
+
"""
|
|
1228
|
+
DisplacementFlowrateMax: float | None = Field(
|
|
1229
|
+
None, examples=['2 bbl/min'], title='Displacement Flowrate Maximum'
|
|
1230
|
+
)
|
|
1231
|
+
"""
|
|
1232
|
+
Maximum displacement rate
|
|
1233
|
+
"""
|
|
1234
|
+
DisplacementFlowrateFinal: float | None = Field(
|
|
1235
|
+
None, examples=['2 bbl/min'], title='Final Displacement Flowrate'
|
|
1236
|
+
)
|
|
1237
|
+
"""
|
|
1238
|
+
Final displacement rate
|
|
1239
|
+
"""
|
|
1240
|
+
DisplacementPressureFinal: float | None = Field(
|
|
1241
|
+
None, examples=['230 psi'], title='Final Displacement Pressure'
|
|
1242
|
+
)
|
|
1243
|
+
"""
|
|
1244
|
+
Final displacement pressure
|
|
1245
|
+
"""
|
|
1246
|
+
MudCirculationFlowRate: float | None = Field(
|
|
1247
|
+
None, examples=['2.38 bbl/min'], title='Mud Circulation Flowrate'
|
|
1248
|
+
)
|
|
1249
|
+
"""
|
|
1250
|
+
Mud Circulation Flowrate during the job
|
|
1251
|
+
"""
|
|
1252
|
+
MudCirculationPressure: float | None = Field(
|
|
1253
|
+
None, examples=['300 psi'], title='Mud Circulation Pressure'
|
|
1254
|
+
)
|
|
1255
|
+
"""
|
|
1256
|
+
Mud circulation pressure
|
|
1257
|
+
"""
|
|
1258
|
+
CementingFluid: list[CementingFluidItem] | None = Field(
|
|
1259
|
+
None, title='Cementing Fluid'
|
|
1260
|
+
)
|
|
1261
|
+
"""
|
|
1262
|
+
Array of fluids worked in the stage - displaced mud, washers and spacers, cement (lead & tail)
|
|
1263
|
+
"""
|
|
1264
|
+
StringMeasuredDepth: float | None = Field(None, title='String Measured Depth')
|
|
1265
|
+
"""
|
|
1266
|
+
Bottom measured depth in primary cement job (multi-stage cement job).
|
|
1267
|
+
"""
|
|
1268
|
+
StageToolMeasuredDepth: float | None = Field(
|
|
1269
|
+
None, title='Stage Tool Measured Depth'
|
|
1270
|
+
)
|
|
1271
|
+
"""
|
|
1272
|
+
Mid measured depth of stage tool (multi-stage cement job) e.g. circulation port.
|
|
1273
|
+
"""
|
|
1274
|
+
StageToolTrueVerticalDepth: float | None = Field(
|
|
1275
|
+
None, title='Stage Tool True Vertical Depth'
|
|
1276
|
+
)
|
|
1277
|
+
"""
|
|
1278
|
+
Mid true vertical depth of stage tool (multi-stage cement job) e.g. circulation port.
|
|
1279
|
+
"""
|
|
1280
|
+
CoilTubingMeasuredDepth: float | None = Field(
|
|
1281
|
+
None, title='Coil Tubing Measured Depth'
|
|
1282
|
+
)
|
|
1283
|
+
"""
|
|
1284
|
+
Bottom Measured depth of Coiled Tubing
|
|
1285
|
+
"""
|
|
1286
|
+
InsideCasingVolume: float | None = Field(
|
|
1287
|
+
None, examples=['218 bbl'], title='Inside Casing Volume'
|
|
1288
|
+
)
|
|
1289
|
+
"""
|
|
1290
|
+
Estimated volume inside casing
|
|
1291
|
+
"""
|
|
1292
|
+
OutsideCasingVolume: float | None = Field(
|
|
1293
|
+
None, examples=['112 bbl'], title='Outside Casing Volume'
|
|
1294
|
+
)
|
|
1295
|
+
"""
|
|
1296
|
+
Estimated volume outside casing for this stage placement
|
|
1297
|
+
"""
|
|
1298
|
+
OriginalMudTypeID: (
|
|
1299
|
+
constr(
|
|
1300
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-MudBaseType:[\w\-\.\:\%]+:[0-9]*$'
|
|
1301
|
+
)
|
|
1302
|
+
| None
|
|
1303
|
+
) = Field(
|
|
1304
|
+
None,
|
|
1305
|
+
examples=['namespace:reference-data--MudBaseType:Synthetic:'],
|
|
1306
|
+
title='Type Original Mud',
|
|
1307
|
+
)
|
|
1308
|
+
"""
|
|
1309
|
+
Type of mud in hole
|
|
1310
|
+
"""
|
|
1311
|
+
PriorCirculatingVolume: float | None = Field(
|
|
1312
|
+
None, examples=['40 bbl'], title='Prior Circulating Volume'
|
|
1313
|
+
)
|
|
1314
|
+
"""
|
|
1315
|
+
Volume of mud circulated prior to cement job
|
|
1316
|
+
"""
|
|
1317
|
+
MudDensity: float | None = Field(
|
|
1318
|
+
None, examples=['9.2 lbm/gal[US]'], title='Mud Density'
|
|
1319
|
+
)
|
|
1320
|
+
"""
|
|
1321
|
+
Mud density (weight)
|
|
1322
|
+
"""
|
|
1323
|
+
MudFunnelViscosity: float | None = Field(
|
|
1324
|
+
None, examples=[42], title='Mud Funnel Viscosity'
|
|
1325
|
+
)
|
|
1326
|
+
"""
|
|
1327
|
+
Marsh funnel viscosity measured in a conical-shaped funnel
|
|
1328
|
+
"""
|
|
1329
|
+
MudPlasticViscosity: float | None = Field(
|
|
1330
|
+
None, examples=[20], title='Mud Plastic Viscosity'
|
|
1331
|
+
)
|
|
1332
|
+
"""
|
|
1333
|
+
Plastic viscosity (in hole at start of job).
|
|
1334
|
+
"""
|
|
1335
|
+
MudYieldPoint: float | None = Field(None, examples=[19], title='Mud Yield Point')
|
|
1336
|
+
"""
|
|
1337
|
+
Yield point (in hole at start of job).
|
|
1338
|
+
"""
|
|
1339
|
+
MudGel10Sec: float | None = Field(None, title='Mud Gel10 Sec')
|
|
1340
|
+
"""
|
|
1341
|
+
Gels-10Sec (in hole at start of job).
|
|
1342
|
+
"""
|
|
1343
|
+
MudGel10Min: float | None = Field(None, title='Mud Gel10 Min')
|
|
1344
|
+
"""
|
|
1345
|
+
Gels-10Min (in hole at start of job).
|
|
1346
|
+
"""
|
|
1347
|
+
IsAnnularFlowAfter: bool | None = Field(
|
|
1348
|
+
None, examples=[False], title='Annular Flow After'
|
|
1349
|
+
)
|
|
1350
|
+
"""
|
|
1351
|
+
Annular flow (back flow) present after the stage was completed?
|
|
1352
|
+
"""
|
|
1353
|
+
IsAnnularPressureHeld: bool | None = Field(
|
|
1354
|
+
None, examples=[True], title='Annular Pressure Held'
|
|
1355
|
+
)
|
|
1356
|
+
"""
|
|
1357
|
+
Annular Pressure Held after job?
|
|
1358
|
+
"""
|
|
1359
|
+
IsFloatHeld: bool | None = Field(None, examples=[True], title='Float Held')
|
|
1360
|
+
"""
|
|
1361
|
+
Float Held?
|
|
1362
|
+
"""
|
|
1363
|
+
IsTopPlugUsed: bool | None = Field(None, examples=[True], title='Top Plug Used')
|
|
1364
|
+
"""
|
|
1365
|
+
Top plug used?
|
|
1366
|
+
"""
|
|
1367
|
+
IsBottomPlugUsed: bool | None = Field(
|
|
1368
|
+
None, examples=[True], title='Bottom Plug Used'
|
|
1369
|
+
)
|
|
1370
|
+
"""
|
|
1371
|
+
Bottom plug used?
|
|
1372
|
+
"""
|
|
1373
|
+
BottomPlugNumber: int | None = Field(
|
|
1374
|
+
None, examples=[1], title='Number of Bottom Plugs'
|
|
1375
|
+
)
|
|
1376
|
+
"""
|
|
1377
|
+
Number of Bottom Plugs
|
|
1378
|
+
"""
|
|
1379
|
+
IsPlugBumped: bool | None = Field(None, examples=[True], title='Is Plug Bumped')
|
|
1380
|
+
"""
|
|
1381
|
+
Is Plug Bumped?
|
|
1382
|
+
"""
|
|
1383
|
+
BumpPlugPressure: float | None = Field(
|
|
1384
|
+
None, examples=['2400 psi'], title='Bump Plug Pressure'
|
|
1385
|
+
)
|
|
1386
|
+
"""
|
|
1387
|
+
Bump Plug Pressure
|
|
1388
|
+
"""
|
|
1389
|
+
MixMethod: (
|
|
1390
|
+
constr(
|
|
1391
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementSlurryMixMethod:[\w\-\.\:\%]+:[0-9]*$'
|
|
1392
|
+
)
|
|
1393
|
+
| None
|
|
1394
|
+
) = Field(
|
|
1395
|
+
None,
|
|
1396
|
+
examples=['namespace:reference-data--CementSlurryMixMethod:Batch:'],
|
|
1397
|
+
title='Mix Method',
|
|
1398
|
+
)
|
|
1399
|
+
"""
|
|
1400
|
+
Mix Method
|
|
1401
|
+
"""
|
|
1402
|
+
IsPillBelowPlug: bool | None = Field(
|
|
1403
|
+
None, examples=[False], title='Pill Below Plug'
|
|
1404
|
+
)
|
|
1405
|
+
"""
|
|
1406
|
+
Pill below cement plug?
|
|
1407
|
+
"""
|
|
1408
|
+
IsPlugCatcher: bool | None = Field(None, examples=[True], title='Plug Catcher')
|
|
1409
|
+
"""
|
|
1410
|
+
Plug or Dart catcher?
|
|
1411
|
+
"""
|
|
1412
|
+
IsHesitation: bool | None = Field(None, title='Hesitation')
|
|
1413
|
+
"""
|
|
1414
|
+
Hesitation when squeezing?
|
|
1415
|
+
"""
|
|
1416
|
+
HesitationReason: str | None = Field(None, title='Hesitation Reason')
|
|
1417
|
+
"""
|
|
1418
|
+
Hesitation Reason during operation
|
|
1419
|
+
"""
|
|
1420
|
+
HesitationSqueeze: list[HesitationSqueezeItem] | None = Field(
|
|
1421
|
+
None, title='Hesitation Squeeze'
|
|
1422
|
+
)
|
|
1423
|
+
"""
|
|
1424
|
+
Hesitation Squeeze array
|
|
1425
|
+
"""
|
|
1426
|
+
PlugManufacturer: (
|
|
1427
|
+
constr(pattern=r'^[\w\-\.]+:master-data\-\-Organisation:[\w\-\.\:\%]+:[0-9]*$')
|
|
1428
|
+
| None
|
|
1429
|
+
) = Field(
|
|
1430
|
+
None,
|
|
1431
|
+
examples=['namespace:master-data--Organisation:Weatherford:'],
|
|
1432
|
+
title='Plug Manufacturer',
|
|
1433
|
+
)
|
|
1434
|
+
"""
|
|
1435
|
+
Plug Manufacturer
|
|
1436
|
+
"""
|
|
1437
|
+
BottomDartLandVolume: float | None = Field(None, title='Bottom Dart Landed Volume')
|
|
1438
|
+
"""
|
|
1439
|
+
Volume pumped to landing Bottom Dart
|
|
1440
|
+
"""
|
|
1441
|
+
TopDartLandVolume: float | None = Field(None, title='Top Dart Landed Volume')
|
|
1442
|
+
"""
|
|
1443
|
+
Volume pumped to landing Top Dart
|
|
1444
|
+
"""
|
|
1445
|
+
TopDartShearPressure: float | None = Field(
|
|
1446
|
+
None, examples=['2140 psi'], title='Top Dart Shear Pressure'
|
|
1447
|
+
)
|
|
1448
|
+
"""
|
|
1449
|
+
Top Dart Shear Pressure
|
|
1450
|
+
"""
|
|
1451
|
+
BottomDartShearPressure: float | None = Field(
|
|
1452
|
+
None, examples=['464 psi'], title='Bottom Dart Shear Pressure'
|
|
1453
|
+
)
|
|
1454
|
+
"""
|
|
1455
|
+
Bottom Dart Shear Pressure
|
|
1456
|
+
"""
|
|
1457
|
+
BackPressure: float | None = Field(None, title='Surface Back Pressure')
|
|
1458
|
+
"""
|
|
1459
|
+
Constant back pressure applied at surface while pumping the job (can be superseded by a back pressure per pumping stage).
|
|
1460
|
+
"""
|
|
1461
|
+
HeldPressure: float | None = Field(
|
|
1462
|
+
None, examples=['5000 psi'], title='Held Pressure'
|
|
1463
|
+
)
|
|
1464
|
+
"""
|
|
1465
|
+
Pressure held to.
|
|
1466
|
+
"""
|
|
1467
|
+
PressureHeldTime: float | None = Field(
|
|
1468
|
+
None, examples=['30 min'], title='Pressure Held Time'
|
|
1469
|
+
)
|
|
1470
|
+
"""
|
|
1471
|
+
Pressure Held time at end of stage
|
|
1472
|
+
"""
|
|
1473
|
+
InitialCasingPressure: float | None = Field(None, title='Initial Casing Pressure')
|
|
1474
|
+
"""
|
|
1475
|
+
Initial Casing Pressure
|
|
1476
|
+
"""
|
|
1477
|
+
FinalCasingPressure: float | None = Field(None, title='Final Casing Pressure')
|
|
1478
|
+
"""
|
|
1479
|
+
Final Casing Pressure
|
|
1480
|
+
"""
|
|
1481
|
+
InitialTubingPressure: float | None = Field(None, title='Initial Tubing Pressure')
|
|
1482
|
+
"""
|
|
1483
|
+
Tubing Start Pressure (not CT)
|
|
1484
|
+
"""
|
|
1485
|
+
FinalTubingPressure: float | None = Field(None, title='Final Tubing Pressure')
|
|
1486
|
+
"""
|
|
1487
|
+
Tubing End Pressure (not CT)
|
|
1488
|
+
"""
|
|
1489
|
+
InitialCoilTubingPressure: float | None = Field(
|
|
1490
|
+
None, title='Initial Coiled Tubing Pressure'
|
|
1491
|
+
)
|
|
1492
|
+
"""
|
|
1493
|
+
Initial Coiled Tubing Pressure
|
|
1494
|
+
"""
|
|
1495
|
+
FinalCoilTubingPressure: float | None = Field(
|
|
1496
|
+
None, title='Final Coiled Tubing Pressure'
|
|
1497
|
+
)
|
|
1498
|
+
"""
|
|
1499
|
+
Final Coiled Tubing Pressure
|
|
1500
|
+
"""
|
|
1501
|
+
BreakdownPressure: float | None = Field(None, title='Breakdown Pressure')
|
|
1502
|
+
"""
|
|
1503
|
+
Breakdown Pressure
|
|
1504
|
+
"""
|
|
1505
|
+
BreakdownFlowRate: float | None = Field(None, title='Breakdown Flow Rate')
|
|
1506
|
+
"""
|
|
1507
|
+
Breakdown Flow Rate
|
|
1508
|
+
"""
|
|
1509
|
+
PumpPressureAverage: float | None = Field(
|
|
1510
|
+
None, examples=['162 psi'], title='Average Pumping Pressure'
|
|
1511
|
+
)
|
|
1512
|
+
"""
|
|
1513
|
+
Average Pump Pressure
|
|
1514
|
+
"""
|
|
1515
|
+
InitialPumpRate: float | None = Field(
|
|
1516
|
+
None, examples=['3.62 bbl/min'], title='Initial Pump Rate'
|
|
1517
|
+
)
|
|
1518
|
+
"""
|
|
1519
|
+
Initial Pump Rate
|
|
1520
|
+
"""
|
|
1521
|
+
FinalPumpRate: float | None = Field(
|
|
1522
|
+
None, examples=['3.62 bbl/min'], title='Final Pump Rate'
|
|
1523
|
+
)
|
|
1524
|
+
"""
|
|
1525
|
+
Final Pump Rate
|
|
1526
|
+
"""
|
|
1527
|
+
PumpRateMax: float | None = Field(
|
|
1528
|
+
None, examples=['3.62 bbl/min'], title='Pump Rate Max'
|
|
1529
|
+
)
|
|
1530
|
+
"""
|
|
1531
|
+
Pump Rate Maximum
|
|
1532
|
+
"""
|
|
1533
|
+
ReturnsVolume: float | None = Field(
|
|
1534
|
+
None, examples=['5 bbls'], title='Returns Volume'
|
|
1535
|
+
)
|
|
1536
|
+
"""
|
|
1537
|
+
Volume of mud returned
|
|
1538
|
+
"""
|
|
1539
|
+
LostVolume: float | None = Field(None, examples=['0 bbls'], title='Lost Volume')
|
|
1540
|
+
"""
|
|
1541
|
+
Volume of mud lost
|
|
1542
|
+
"""
|
|
1543
|
+
ExcessVolume: float | None = Field(None, title='Excess Volume')
|
|
1544
|
+
"""
|
|
1545
|
+
Excess Volume used
|
|
1546
|
+
"""
|
|
1547
|
+
ExcessVolumeCalcMethodID: (
|
|
1548
|
+
constr(
|
|
1549
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementExcessVolCalcMethod:[\w\-\.\:\%]+:[0-9]*$'
|
|
1550
|
+
)
|
|
1551
|
+
| None
|
|
1552
|
+
) = Field(None, title='Excess Volume Calculation Method')
|
|
1553
|
+
"""
|
|
1554
|
+
Excess Volume Calculation Method
|
|
1555
|
+
"""
|
|
1556
|
+
CirculateOutMeasuredDepth: float | None = Field(
|
|
1557
|
+
None, title='Circulate Out Measured Depth.'
|
|
1558
|
+
)
|
|
1559
|
+
"""
|
|
1560
|
+
Circulate out measured depth from top of cement plug
|
|
1561
|
+
"""
|
|
1562
|
+
BHCT: float | None = Field(
|
|
1563
|
+
None, examples=['60 degF'], title='Bottomhole Circulating Temperature'
|
|
1564
|
+
)
|
|
1565
|
+
"""
|
|
1566
|
+
Circulating Bottomhole temperature
|
|
1567
|
+
"""
|
|
1568
|
+
BHST: float | None = Field(
|
|
1569
|
+
None, examples=['82 degF'], title='Bottomhole Static Temperature'
|
|
1570
|
+
)
|
|
1571
|
+
"""
|
|
1572
|
+
Static Bottomhole temperature
|
|
1573
|
+
"""
|
|
1574
|
+
IsTailPipeUsed: bool | None = Field(None, title='Is Tail Pipe Used')
|
|
1575
|
+
"""
|
|
1576
|
+
Tail pipe/stinger used for setting a plug?
|
|
1577
|
+
"""
|
|
1578
|
+
TailPipeDiameter: float | None = Field(None, title='Diameter of Tail Pipe')
|
|
1579
|
+
"""
|
|
1580
|
+
Tailpipe/stinger size (diameter).
|
|
1581
|
+
"""
|
|
1582
|
+
IsTailPipePerforated: bool | None = Field(None, title='Is Tail Pipe Perforated')
|
|
1583
|
+
"""
|
|
1584
|
+
Tailpipe/stringer perforated?
|
|
1585
|
+
"""
|
|
1586
|
+
WorkstringMeasuredDepth: float | None = Field(
|
|
1587
|
+
None, title='Workstring Measured Depth'
|
|
1588
|
+
)
|
|
1589
|
+
"""
|
|
1590
|
+
Workstring Bottom Measured Depth during displacement for Plugs & Squeezes
|
|
1591
|
+
"""
|
|
1592
|
+
WorkstringTrueVerticalDepth: float | None = Field(
|
|
1593
|
+
None, title='Workstring True Vertical Depth'
|
|
1594
|
+
)
|
|
1595
|
+
"""
|
|
1596
|
+
Workstring Bottom True Vertical Depth during displacement for Plugs & Squeezes
|
|
1597
|
+
"""
|
|
1598
|
+
ReciprocationOverpull: float | None = Field(
|
|
1599
|
+
None, examples=['10 tons'], title='ReciprocationOverpull'
|
|
1600
|
+
)
|
|
1601
|
+
"""
|
|
1602
|
+
Maximum overpull applied during reciprocating
|
|
1603
|
+
"""
|
|
1604
|
+
ReciprocationSlackoff: float | None = Field(
|
|
1605
|
+
None, examples=['10 tons'], title='ReciprocationSlackoff'
|
|
1606
|
+
)
|
|
1607
|
+
"""
|
|
1608
|
+
Maximum slackoff applied during reciprocating
|
|
1609
|
+
"""
|
|
1610
|
+
SqueezeObjective: (
|
|
1611
|
+
constr(
|
|
1612
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementSqueezeObjective:[\w\-\.\:\%]+:[0-9]*$'
|
|
1613
|
+
)
|
|
1614
|
+
| None
|
|
1615
|
+
) = Field(None, title='Squeeze Objective')
|
|
1616
|
+
"""
|
|
1617
|
+
Squeeze objective
|
|
1618
|
+
"""
|
|
1619
|
+
SqueezeToolMeasuredDepth: float | None = Field(
|
|
1620
|
+
None, title='Squeeze Tool Measured Depth'
|
|
1621
|
+
)
|
|
1622
|
+
"""
|
|
1623
|
+
Squeeze Tool Measured Depth e.g. Packer or Retainer
|
|
1624
|
+
"""
|
|
1625
|
+
SqueezeToolTrueVerticalDepth: float | None = Field(
|
|
1626
|
+
None, title='Squeeze Tool True Vertical Depth'
|
|
1627
|
+
)
|
|
1628
|
+
"""
|
|
1629
|
+
Squeeze Tool True Vertical Depth e.g. Packer or Retainer
|
|
1630
|
+
"""
|
|
1631
|
+
SqueezeInCasingVolume: float | None = Field(None, title='Squeeze In Casing Volume')
|
|
1632
|
+
"""
|
|
1633
|
+
Squeezed cement volume left inside casing
|
|
1634
|
+
"""
|
|
1635
|
+
SqueezeOutCasingVolume: float | None = Field(
|
|
1636
|
+
None, title='Squeeze Out Casing Volume'
|
|
1637
|
+
)
|
|
1638
|
+
"""
|
|
1639
|
+
Squeezed cement volume outside/behind
|
|
1640
|
+
"""
|
|
1641
|
+
SqueezeReverseVolume: float | None = Field(None, title='Squeeze Reverse Volume')
|
|
1642
|
+
"""
|
|
1643
|
+
Volume of cement that was returned to surface during squeeze operation
|
|
1644
|
+
"""
|
|
1645
|
+
SqueezeFlowRateAverage: float | None = Field(
|
|
1646
|
+
None, title='Squeeze Flow Rate Average'
|
|
1647
|
+
)
|
|
1648
|
+
"""
|
|
1649
|
+
Squeeze average flowrate
|
|
1650
|
+
"""
|
|
1651
|
+
SqueezeFlowRateMax: float | None = Field(None, title='Squeeze Flow Rate Maximum')
|
|
1652
|
+
"""
|
|
1653
|
+
Squeeze maximum flowrate
|
|
1654
|
+
"""
|
|
1655
|
+
SqueezePressureInitial: float | None = Field(None, title='Squeeze Pressure Initial')
|
|
1656
|
+
"""
|
|
1657
|
+
Squeeze Pressure Initial
|
|
1658
|
+
"""
|
|
1659
|
+
SqueezePressureAverage: float | None = Field(None, title='Squeeze Pressure Average')
|
|
1660
|
+
"""
|
|
1661
|
+
Squeeze Pressure Average
|
|
1662
|
+
"""
|
|
1663
|
+
SqueezePressureFinal: float | None = Field(None, title='Squeeze Pressure Final')
|
|
1664
|
+
"""
|
|
1665
|
+
Squeeze Pressure Final
|
|
1666
|
+
"""
|
|
1667
|
+
SqueezeHeldPressure: float | None = Field(None, title='Squeeze Held Pressure')
|
|
1668
|
+
"""
|
|
1669
|
+
Squeeze pressure left (held) on pipe while waiting on cement.
|
|
1670
|
+
"""
|
|
1671
|
+
SqueezeHeldPressureDuration: float | None = Field(
|
|
1672
|
+
None, title='Squeeze Held Pressure Duration'
|
|
1673
|
+
)
|
|
1674
|
+
"""
|
|
1675
|
+
Squeeze Held Pressure Elapsed Time
|
|
1676
|
+
"""
|
|
1677
|
+
IsSqueezeObtained: bool | None = Field(None, title='Squeeze Obtained')
|
|
1678
|
+
"""
|
|
1679
|
+
Is Squeeze Obtained/Successful?
|
|
1680
|
+
"""
|
|
1681
|
+
SqueezeRemarks: str | None = Field(None, title='Squeeze Remarks')
|
|
1682
|
+
"""
|
|
1683
|
+
Squeeze Remarks
|
|
1684
|
+
"""
|
|
1685
|
+
ShoeTrackLength: float | None = Field(
|
|
1686
|
+
None, examples=['100 ft'], title='Shoe Track Length'
|
|
1687
|
+
)
|
|
1688
|
+
"""
|
|
1689
|
+
Shoe Track Length
|
|
1690
|
+
"""
|
|
1691
|
+
ShoeTrackVolume: float | None = Field(
|
|
1692
|
+
None, examples=['7.2 bbl'], title='Shoe Track Volume'
|
|
1693
|
+
)
|
|
1694
|
+
"""
|
|
1695
|
+
Shoe Track Volume
|
|
1696
|
+
"""
|
|
1697
|
+
FluidTemperatureIn: float | None = Field(None, title='Fluid Temperature In')
|
|
1698
|
+
"""
|
|
1699
|
+
Pre-circulation Fluid Temperature In (Pit)
|
|
1700
|
+
"""
|
|
1701
|
+
FluidTemperatureOut: float | None = Field(None, title='Fluid Temperature Out')
|
|
1702
|
+
"""
|
|
1703
|
+
Pre-circulation Fluid Temperature Out (Return Line)
|
|
1704
|
+
"""
|
|
1705
|
+
TotalOperatingTime: float | None = Field(None, title='Total Operating Time')
|
|
1706
|
+
"""
|
|
1707
|
+
Total operating hours from at depth ready for cement job. Included but not limited to: Pre-circulation, NPT, rig up/down, line-up and pumping operations.
|
|
1708
|
+
"""
|
|
1709
|
+
TotalPumpingTime: float | None = Field(
|
|
1710
|
+
None, examples=['569.22 min'], title='Total Pumping Time'
|
|
1711
|
+
)
|
|
1712
|
+
"""
|
|
1713
|
+
Total pumping hours from at depth ready for cement job. Included but not limited to: Pre-circulation, washing, spacer, cement and displacement.
|
|
1714
|
+
"""
|
|
1715
|
+
UnderDisplacementVolumePlanned: float | None = Field(
|
|
1716
|
+
None, title='Under Displacement Volume Planned'
|
|
1717
|
+
)
|
|
1718
|
+
"""
|
|
1719
|
+
Under Displacement Volume Planned
|
|
1720
|
+
"""
|
|
1721
|
+
UnderDisplacementVolumeActual: float | None = Field(
|
|
1722
|
+
None, title='Under Displacement Volume Actual'
|
|
1723
|
+
)
|
|
1724
|
+
"""
|
|
1725
|
+
Under Displacement Volume Actual
|
|
1726
|
+
"""
|
|
1727
|
+
BehindCementSpacerVolume: float | None = Field(
|
|
1728
|
+
None, title='Behind Cement Spacer Volume'
|
|
1729
|
+
)
|
|
1730
|
+
"""
|
|
1731
|
+
Behind Cement Spacer Volume
|
|
1732
|
+
"""
|
|
1733
|
+
MinWOCTimeBeforeTagging: float | None = Field(
|
|
1734
|
+
None, title='Min WOC Time Before Tagging'
|
|
1735
|
+
)
|
|
1736
|
+
"""
|
|
1737
|
+
Min WOC Time Before Tagging/Testing
|
|
1738
|
+
"""
|
|
1739
|
+
MinWOCTimeBeforeLogging: float | None = Field(
|
|
1740
|
+
None, title='Min WOC Time Before Logging'
|
|
1741
|
+
)
|
|
1742
|
+
"""
|
|
1743
|
+
Min WOC Time Before Logging
|
|
1744
|
+
"""
|
|
1745
|
+
MaxStaticTimeSurface: float | None = Field(None, title='Max Static Time Surface')
|
|
1746
|
+
"""
|
|
1747
|
+
Max Static Time Surface - cement unit and surface lines
|
|
1748
|
+
"""
|
|
1749
|
+
MaxStaticTimeDuringPlacement: float | None = Field(
|
|
1750
|
+
None, title='Max Static Time During Placement'
|
|
1751
|
+
)
|
|
1752
|
+
"""
|
|
1753
|
+
Max Static Time During Placement
|
|
1754
|
+
"""
|
|
1755
|
+
MaxStaticTimeAfterDisplacement: float | None = Field(
|
|
1756
|
+
None, title='Max Static Time After Displacement'
|
|
1757
|
+
)
|
|
1758
|
+
"""
|
|
1759
|
+
Max Static Time After Displacement
|
|
1760
|
+
"""
|
|
1761
|
+
StageRemarks: str | None = Field(
|
|
1762
|
+
None,
|
|
1763
|
+
examples=[
|
|
1764
|
+
'Circulating rates were established prior to the start of the cement job. Controlled Mud Level was \nmaintained at a Downhole Mud Weight of 9.2 ppg for the entire circulation and cement job.'
|
|
1765
|
+
],
|
|
1766
|
+
title='Stage Remarks',
|
|
1767
|
+
)
|
|
1768
|
+
"""
|
|
1769
|
+
Remarks
|
|
1770
|
+
"""
|
|
1771
|
+
|
|
1772
|
+
|
|
1773
|
+
class CasingPressureTest(BaseModel):
|
|
1774
|
+
"""
|
|
1775
|
+
Casing Pressure Test
|
|
1776
|
+
"""
|
|
1777
|
+
|
|
1778
|
+
model_config = ConfigDict(
|
|
1779
|
+
extra='allow',
|
|
1780
|
+
)
|
|
1781
|
+
CasingTestDate: str | None = Field(
|
|
1782
|
+
None, examples=['2020-04-21T17:30:00+0000'], title='Test Date'
|
|
1783
|
+
)
|
|
1784
|
+
"""
|
|
1785
|
+
Test Date/time
|
|
1786
|
+
"""
|
|
1787
|
+
CasingTestElapsedTime: float | None = Field(
|
|
1788
|
+
None, examples=['12 hours'], title='Casing Test Elapsed Time'
|
|
1789
|
+
)
|
|
1790
|
+
"""
|
|
1791
|
+
Casing Test Elapsed Time following end of cement job
|
|
1792
|
+
"""
|
|
1793
|
+
CasingTestPressure: float | None = Field(
|
|
1794
|
+
None, examples=['9000 psi'], title='Test Pressure'
|
|
1795
|
+
)
|
|
1796
|
+
"""
|
|
1797
|
+
Test Pressure
|
|
1798
|
+
"""
|
|
1799
|
+
CasingTestStableRate: float | None = Field(None, title='Casing Test Stable Rate')
|
|
1800
|
+
"""
|
|
1801
|
+
Casing Test Stable Flow Rate
|
|
1802
|
+
"""
|
|
1803
|
+
CasingTestDuration: float | None = Field(
|
|
1804
|
+
None, examples=['5 min'], title='Test Duration'
|
|
1805
|
+
)
|
|
1806
|
+
"""
|
|
1807
|
+
Test Duration
|
|
1808
|
+
"""
|
|
1809
|
+
MaintainPressurePercent: float | None = Field(
|
|
1810
|
+
None, examples=['90 %'], title='Maintained Pressure Percent'
|
|
1811
|
+
)
|
|
1812
|
+
"""
|
|
1813
|
+
Maintained Pressure % of Initial Test Pressure
|
|
1814
|
+
"""
|
|
1815
|
+
PressureChangePerTime: float | None = Field(None, title='Pressure Change/Time')
|
|
1816
|
+
"""
|
|
1817
|
+
Incremental Pressure Over Defined Time Interval
|
|
1818
|
+
"""
|
|
1819
|
+
PackerMeasuredDepth: float | None = Field(None, title='Packer Measured Depth')
|
|
1820
|
+
"""
|
|
1821
|
+
Packer Depth
|
|
1822
|
+
"""
|
|
1823
|
+
FluidDensity: float | None = Field(
|
|
1824
|
+
None, examples=['9.2 lbm/gal[US]'], title='Fluid Density'
|
|
1825
|
+
)
|
|
1826
|
+
"""
|
|
1827
|
+
Fluid Density
|
|
1828
|
+
"""
|
|
1829
|
+
FloatMeasuredDepth: float | None = Field(None, title='Float Measured Depth')
|
|
1830
|
+
"""
|
|
1831
|
+
Float Depth
|
|
1832
|
+
"""
|
|
1833
|
+
PumpedVolume: float | None = Field(None, title='Pumped Volume')
|
|
1834
|
+
"""
|
|
1835
|
+
Pumped Volume
|
|
1836
|
+
"""
|
|
1837
|
+
BledBackVolume: float | None = Field(None, title='BledBackVolume')
|
|
1838
|
+
"""
|
|
1839
|
+
Bled Back Volume
|
|
1840
|
+
"""
|
|
1841
|
+
TestCriteria: str | None = Field(None, title='Test Criteria')
|
|
1842
|
+
"""
|
|
1843
|
+
Test Criteria
|
|
1844
|
+
"""
|
|
1845
|
+
Remarks: str | None = Field(
|
|
1846
|
+
None,
|
|
1847
|
+
examples=[
|
|
1848
|
+
'Set the seal assembly as per FMC direction. Closed the MPR and apply 9,000 psi to set seal assembly. Held for 5 minutes to verify the seal integrity. Bled pressure off and open the MPR. tank.'
|
|
1849
|
+
],
|
|
1850
|
+
title='Remarks',
|
|
1851
|
+
)
|
|
1852
|
+
"""
|
|
1853
|
+
Comments or Remarks
|
|
1854
|
+
"""
|
|
1855
|
+
|
|
1856
|
+
|
|
1857
|
+
class LogEvaluationDepth(BaseModel):
|
|
1858
|
+
"""
|
|
1859
|
+
Log Evaluation Depth
|
|
1860
|
+
"""
|
|
1861
|
+
|
|
1862
|
+
model_config = ConfigDict(
|
|
1863
|
+
extra='allow',
|
|
1864
|
+
)
|
|
1865
|
+
EvaluatedIntervalMeasuredDepthTop: float | None = Field(
|
|
1866
|
+
None, title='Evaluated Interval Top Measured Depth'
|
|
1867
|
+
)
|
|
1868
|
+
"""
|
|
1869
|
+
Evaluated Interval Top Measured Depth
|
|
1870
|
+
"""
|
|
1871
|
+
EvaluatedIntervalMeasuredDepthBase: float | None = Field(
|
|
1872
|
+
None, title='Evaluated Interval Base Measured Depth'
|
|
1873
|
+
)
|
|
1874
|
+
"""
|
|
1875
|
+
Evaluated Interval Base Measured Depth
|
|
1876
|
+
"""
|
|
1877
|
+
IsIsolated: bool | None = Field(None, title='Is Isolated')
|
|
1878
|
+
"""
|
|
1879
|
+
Is Isolated
|
|
1880
|
+
"""
|
|
1881
|
+
Remarks: str | None = Field(None, title='Remarks')
|
|
1882
|
+
"""
|
|
1883
|
+
Remarks
|
|
1884
|
+
"""
|
|
1885
|
+
|
|
1886
|
+
|
|
1887
|
+
class LogEvaluationItem(BaseModel):
|
|
1888
|
+
"""
|
|
1889
|
+
Log Evaluation parameters
|
|
1890
|
+
"""
|
|
1891
|
+
|
|
1892
|
+
model_config = ConfigDict(
|
|
1893
|
+
extra='allow',
|
|
1894
|
+
)
|
|
1895
|
+
EvaluationDate: str | None = Field(None, title='Evaluation Date')
|
|
1896
|
+
"""
|
|
1897
|
+
Evaluation Date/time
|
|
1898
|
+
"""
|
|
1899
|
+
LogType: (
|
|
1900
|
+
constr(
|
|
1901
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementEvalLogType:[\w\-\.\:\%]+:[0-9]*$'
|
|
1902
|
+
)
|
|
1903
|
+
| None
|
|
1904
|
+
) = Field(None, title='Log Type')
|
|
1905
|
+
"""
|
|
1906
|
+
Log type
|
|
1907
|
+
"""
|
|
1908
|
+
IsBHTRun: bool | None = Field(None, title='Is BHT Run')
|
|
1909
|
+
"""
|
|
1910
|
+
Bottom Hole Temperature Log Run?
|
|
1911
|
+
"""
|
|
1912
|
+
IsCETRun: bool | None = Field(None, title='Is CET Run')
|
|
1913
|
+
"""
|
|
1914
|
+
Cement Evaluation Tool Run?
|
|
1915
|
+
"""
|
|
1916
|
+
IsCBLRun: bool | None = Field(None, title='Is CBL Run')
|
|
1917
|
+
"""
|
|
1918
|
+
Cement Bond Log tool run?
|
|
1919
|
+
"""
|
|
1920
|
+
CBLPressure: float | None = Field(None, title='CBL Pressure')
|
|
1921
|
+
"""
|
|
1922
|
+
Cement Bond Log Pressure
|
|
1923
|
+
"""
|
|
1924
|
+
CBLLogQuality: str | None = Field(None, title='CBL Log Quality')
|
|
1925
|
+
"""
|
|
1926
|
+
Cement bond log quality description.
|
|
1927
|
+
"""
|
|
1928
|
+
BeforeLogElapsedTime: float | None = Field(None, title='Elapsed Time Before Log')
|
|
1929
|
+
"""
|
|
1930
|
+
Elapsed Time Before Log from end of Cement Job
|
|
1931
|
+
"""
|
|
1932
|
+
LogID: (
|
|
1933
|
+
constr(
|
|
1934
|
+
pattern=r'^[\w\-\.]+:work-product-component\-\-WellLog:[\w\-\.\:\%]+:[0-9]*$'
|
|
1935
|
+
)
|
|
1936
|
+
| None
|
|
1937
|
+
) = Field(None, title='Log ID')
|
|
1938
|
+
"""
|
|
1939
|
+
ID to evaluation Log
|
|
1940
|
+
"""
|
|
1941
|
+
LogEvaluationDepths: list[LogEvaluationDepth] | None = Field(
|
|
1942
|
+
None, title='Log Evaluation Depths'
|
|
1943
|
+
)
|
|
1944
|
+
"""
|
|
1945
|
+
Log Evaluation Depths
|
|
1946
|
+
"""
|
|
1947
|
+
IsCementFoundOnTool: bool | None = Field(None, title='Cement Found On Tool')
|
|
1948
|
+
"""
|
|
1949
|
+
Cement Found On Tool during Evaluation Log run
|
|
1950
|
+
"""
|
|
1951
|
+
IsCementFoundBetweenShoeCollar: bool | None = Field(
|
|
1952
|
+
None, title='Cement Found Between Shoe Collar'
|
|
1953
|
+
)
|
|
1954
|
+
"""
|
|
1955
|
+
Cement Found Between Shoe Collar during Evaluation Log run
|
|
1956
|
+
"""
|
|
1957
|
+
LogEvaluationResults: str | None = Field(None, title='Log Evaluation Results')
|
|
1958
|
+
"""
|
|
1959
|
+
Log Evaluation Results
|
|
1960
|
+
"""
|
|
1961
|
+
|
|
1962
|
+
|
|
1963
|
+
class ShoeTest(BaseModel):
|
|
1964
|
+
"""
|
|
1965
|
+
Shoe Test
|
|
1966
|
+
"""
|
|
1967
|
+
|
|
1968
|
+
model_config = ConfigDict(
|
|
1969
|
+
extra='allow',
|
|
1970
|
+
)
|
|
1971
|
+
ShoeTestEquivalentMudWeight: float | None = Field(
|
|
1972
|
+
None, examples=['9.39 lbm/gal[US]'], title='Shoe Test Equivalent Mud Weight'
|
|
1973
|
+
)
|
|
1974
|
+
"""
|
|
1975
|
+
Shoe Test Equivalent Mud Weight
|
|
1976
|
+
"""
|
|
1977
|
+
OpenHoleLength: float | None = Field(
|
|
1978
|
+
None, examples=['10 ft'], title='Open Hole Length'
|
|
1979
|
+
)
|
|
1980
|
+
"""
|
|
1981
|
+
Open Hole Length
|
|
1982
|
+
"""
|
|
1983
|
+
IsShoeTestToolUsed: bool | None = Field(
|
|
1984
|
+
None, examples=[True], title='Shoe Test Tool Used'
|
|
1985
|
+
)
|
|
1986
|
+
"""
|
|
1987
|
+
Shoe Test Tool Used
|
|
1988
|
+
"""
|
|
1989
|
+
ShoeTestElapsedTime: float | None = Field(
|
|
1990
|
+
None, examples=['72 h'], title='Elapsed Time Before Shoe Test'
|
|
1991
|
+
)
|
|
1992
|
+
"""
|
|
1993
|
+
Elapsed Time Before Shoe Test following end of cement job
|
|
1994
|
+
"""
|
|
1995
|
+
ShoeTestTypeID: (
|
|
1996
|
+
constr(
|
|
1997
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementShoeTestType:[\w\-\.\:\%]+:[0-9]*$'
|
|
1998
|
+
)
|
|
1999
|
+
| None
|
|
2000
|
+
) = Field(
|
|
2001
|
+
None,
|
|
2002
|
+
examples=['namespace:reference-data--CementShoeTestType:FIT:'],
|
|
2003
|
+
title='Shoe Test Type',
|
|
2004
|
+
)
|
|
2005
|
+
"""
|
|
2006
|
+
Shoe Test Type
|
|
2007
|
+
"""
|
|
2008
|
+
ShoeTestComments: str | None = Field(
|
|
2009
|
+
None,
|
|
2010
|
+
examples=[
|
|
2011
|
+
'Perform FIT on 9 5/8” casing shoe. Shoe depth, 11,141’ MD/ 10,219’ TVD. XACT downhole static MW was 9.39 ppg. Cement unit began pumping at .5 bbl/min and pumped a total of .9 bbls. Wellhead pressure increased from 390 psi to 490 psi (100 psi Increase) and pump was stopped. Xact ECD recorded a maximum of 9.58 EMW (45 second delay). Pressure was bled off .9 bbls back. FIT result = 9.39 ppg 100 psi applied at 10,219’ TVD. PWD pumped up 9.62 EMW.'
|
|
2012
|
+
],
|
|
2013
|
+
title='Shoe Test Remarks',
|
|
2014
|
+
)
|
|
2015
|
+
"""
|
|
2016
|
+
Comments or Remarks
|
|
2017
|
+
"""
|
|
2018
|
+
|
|
2019
|
+
|
|
2020
|
+
class TOCInterpretation(BaseModel):
|
|
2021
|
+
"""
|
|
2022
|
+
TOC Interpretation
|
|
2023
|
+
"""
|
|
2024
|
+
|
|
2025
|
+
model_config = ConfigDict(
|
|
2026
|
+
extra='allow',
|
|
2027
|
+
)
|
|
2028
|
+
TopOfCementMeasuredDepth: float | None = Field(
|
|
2029
|
+
None, title='Top of Cement Measured Depth'
|
|
2030
|
+
)
|
|
2031
|
+
"""
|
|
2032
|
+
Top of Cement (TOC) Measured Depth
|
|
2033
|
+
"""
|
|
2034
|
+
PlannedTopMeasuredDepth: float | None = Field(
|
|
2035
|
+
None, title='Planned Top of Cement Measured Depth'
|
|
2036
|
+
)
|
|
2037
|
+
"""
|
|
2038
|
+
Planned Top of Cement (TOC) Measured Depth
|
|
2039
|
+
"""
|
|
2040
|
+
TopOfCementTrueVerticalDepth: float | None = Field(
|
|
2041
|
+
None, title='Top of Cement True Vertical Depth'
|
|
2042
|
+
)
|
|
2043
|
+
"""
|
|
2044
|
+
Top of Cement (TOC) True Vertical Depth
|
|
2045
|
+
"""
|
|
2046
|
+
IsTopOfCementSufficient: bool | None = Field(None, title='Top of Cement Sufficient')
|
|
2047
|
+
"""
|
|
2048
|
+
TOC Sufficient?
|
|
2049
|
+
"""
|
|
2050
|
+
IsRemedialCementRequired: bool | None = Field(
|
|
2051
|
+
None, title='Remedial Cement Required'
|
|
2052
|
+
)
|
|
2053
|
+
"""
|
|
2054
|
+
Remedial Cement Required?
|
|
2055
|
+
"""
|
|
2056
|
+
NumberOfRemedial: int | None = Field(None, title='# Remedial')
|
|
2057
|
+
"""
|
|
2058
|
+
Number of remedial Squeezes required
|
|
2059
|
+
"""
|
|
2060
|
+
RemedialType: str | None = Field(None, title='Remedial Type')
|
|
2061
|
+
"""
|
|
2062
|
+
Remedial Type
|
|
2063
|
+
"""
|
|
2064
|
+
TopOfCementLocateMethodID: (
|
|
2065
|
+
constr(
|
|
2066
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementTOCLocateMethod:[\w\-\.\:\%]+:[0-9]*$'
|
|
2067
|
+
)
|
|
2068
|
+
| None
|
|
2069
|
+
) = Field(None, title='Top of Cement Locate Method')
|
|
2070
|
+
"""
|
|
2071
|
+
Top of Cement Locate Method
|
|
2072
|
+
"""
|
|
2073
|
+
Interpreter: str | None = Field(None, title='Interpreter')
|
|
2074
|
+
"""
|
|
2075
|
+
Interpreter
|
|
2076
|
+
"""
|
|
2077
|
+
Interpretation: str | None = Field(None, title='Interpretation')
|
|
2078
|
+
"""
|
|
2079
|
+
TOC Interpretation
|
|
2080
|
+
"""
|
|
2081
|
+
InterpretationRemarks: str | None = Field(None, title='Remarks')
|
|
2082
|
+
"""
|
|
2083
|
+
Comments or Remarks of the TOC Interpretation
|
|
2084
|
+
"""
|
|
2085
|
+
|
|
2086
|
+
|
|
2087
|
+
class LinerTopTest(BaseModel):
|
|
2088
|
+
"""
|
|
2089
|
+
Liner Top Test
|
|
2090
|
+
"""
|
|
2091
|
+
|
|
2092
|
+
model_config = ConfigDict(
|
|
2093
|
+
extra='allow',
|
|
2094
|
+
)
|
|
2095
|
+
TestTopMeasuredDepth: float | None = Field(None, title='Test Top Measured Depth')
|
|
2096
|
+
"""
|
|
2097
|
+
Test Top Measured Depth
|
|
2098
|
+
"""
|
|
2099
|
+
TestTopTrueVerticalDepth: float | None = Field(
|
|
2100
|
+
None, title='Test Top True Vertical Depth'
|
|
2101
|
+
)
|
|
2102
|
+
"""
|
|
2103
|
+
Test Top True Vertical Depth
|
|
2104
|
+
"""
|
|
2105
|
+
TestBaseMeasuredDepth: float | None = Field(None, title='Test Base Measured Depth')
|
|
2106
|
+
"""
|
|
2107
|
+
Test Base Measured Depth
|
|
2108
|
+
"""
|
|
2109
|
+
TestBaseTrueVerticalDepth: float | None = Field(
|
|
2110
|
+
None, title='Test Base True Vertical Depth'
|
|
2111
|
+
)
|
|
2112
|
+
"""
|
|
2113
|
+
Test Base True Vertical Depth
|
|
2114
|
+
"""
|
|
2115
|
+
LinerOverlap: float | None = Field(None, title='Liner Overlap')
|
|
2116
|
+
"""
|
|
2117
|
+
Liner Overlap
|
|
2118
|
+
"""
|
|
2119
|
+
LinerTopTestElapsedTime: float | None = Field(
|
|
2120
|
+
None, title='Elapsed Time Before Test'
|
|
2121
|
+
)
|
|
2122
|
+
"""
|
|
2123
|
+
Elapsed Time Before Test following end of cement job
|
|
2124
|
+
"""
|
|
2125
|
+
LinerNegativeTestTool: str | None = Field(None, title='Liner Negative Test Tool')
|
|
2126
|
+
"""
|
|
2127
|
+
Liner Negative Test Tool
|
|
2128
|
+
"""
|
|
2129
|
+
NegativeTestEquivalentMudWeight: float | None = Field(
|
|
2130
|
+
None, title='Liner Negative Test Equivalent Mud Weight'
|
|
2131
|
+
)
|
|
2132
|
+
"""
|
|
2133
|
+
Liner Negative Test Equivalent Mud Weight
|
|
2134
|
+
"""
|
|
2135
|
+
LinerPositiveTestTool: str | None = Field(None, title='Liner Positive Test Tool')
|
|
2136
|
+
"""
|
|
2137
|
+
Liner Positive Test Tool
|
|
2138
|
+
"""
|
|
2139
|
+
PositiveTestEquivalentMudWeight: float | None = Field(
|
|
2140
|
+
None, title='Liner Positive Test Equivalent Mud Weight'
|
|
2141
|
+
)
|
|
2142
|
+
"""
|
|
2143
|
+
Liner Positive Test Equivalent Mud Weight
|
|
2144
|
+
"""
|
|
2145
|
+
IsCementFoundOnTool: bool | None = Field(None, title='Cement Found On Tool')
|
|
2146
|
+
"""
|
|
2147
|
+
Cement Found On Tool?
|
|
2148
|
+
"""
|
|
2149
|
+
LinerTopTestRemarks: str | None = Field(None, title='Remarks')
|
|
2150
|
+
"""
|
|
2151
|
+
Comments or Remarks
|
|
2152
|
+
"""
|
|
2153
|
+
|
|
2154
|
+
|
|
2155
|
+
class ShoetrackCement(BaseModel):
|
|
2156
|
+
"""
|
|
2157
|
+
Shoetrack Cement
|
|
2158
|
+
"""
|
|
2159
|
+
|
|
2160
|
+
model_config = ConfigDict(
|
|
2161
|
+
extra='allow',
|
|
2162
|
+
)
|
|
2163
|
+
ShoetrackMeasuredDepth: float | None = Field(
|
|
2164
|
+
None, examples=['11121 ft'], title='Shoetrack Measured Depth'
|
|
2165
|
+
)
|
|
2166
|
+
"""
|
|
2167
|
+
Shoetrack Measured Depth
|
|
2168
|
+
"""
|
|
2169
|
+
ShoetrackTrueVerticalDepth: float | None = Field(
|
|
2170
|
+
None, title='Shoetrack True Vertical Depth'
|
|
2171
|
+
)
|
|
2172
|
+
"""
|
|
2173
|
+
Shoetrack True Vertical Depth
|
|
2174
|
+
"""
|
|
2175
|
+
ShoetrackLength: float | None = Field(
|
|
2176
|
+
None, examples=['20 ft'], title='Shoetrack Length'
|
|
2177
|
+
)
|
|
2178
|
+
"""
|
|
2179
|
+
Shoetrack Length
|
|
2180
|
+
"""
|
|
2181
|
+
IsHardCement: bool | None = Field(None, examples=[True], title='Is Hard Cement')
|
|
2182
|
+
"""
|
|
2183
|
+
Is Hard Cement?
|
|
2184
|
+
"""
|
|
2185
|
+
ShoetrackDrillDate: str | None = Field(
|
|
2186
|
+
None, examples=['2020-04-26T21:30:00+0000'], title='Shoetrack Drill Date'
|
|
2187
|
+
)
|
|
2188
|
+
"""
|
|
2189
|
+
Shoetrack Drill Date
|
|
2190
|
+
"""
|
|
2191
|
+
ShoetrackDrillMeasuredDepth: float | None = Field(
|
|
2192
|
+
None, examples=['11121 ft'], title='Shoetrack Drill Measured Depth'
|
|
2193
|
+
)
|
|
2194
|
+
"""
|
|
2195
|
+
Shoetrack Drill Measured Depth
|
|
2196
|
+
"""
|
|
2197
|
+
ShoetrackDrillTrueVerticalDepth: float | None = Field(
|
|
2198
|
+
None, title='Shoetrack Drill True Vertical Depth'
|
|
2199
|
+
)
|
|
2200
|
+
"""
|
|
2201
|
+
Shoetrack Drill True Vertical Depth
|
|
2202
|
+
"""
|
|
2203
|
+
ShoetrackCementTestRemarks: str | None = Field(
|
|
2204
|
+
None,
|
|
2205
|
+
examples=[
|
|
2206
|
+
'Drill cement and shoe track F/ 11,121’ T/ 11,141’. Circulated 9.2ppg SMW DIF at 500gpm, 1,200psi. Rotated 50rpm, 9-11k torque. 15-20k WOB. P/U-515k S/O-470k. Boosted riser with 400gpm, 250psi. Top Fill pump at 160gpm.'
|
|
2207
|
+
],
|
|
2208
|
+
title='Shoetrack Cement Test Remarks',
|
|
2209
|
+
)
|
|
2210
|
+
"""
|
|
2211
|
+
Comments or Remarks
|
|
2212
|
+
"""
|
|
2213
|
+
|
|
2214
|
+
|
|
2215
|
+
class Data(BaseModel):
|
|
2216
|
+
"""
|
|
2217
|
+
Generic reference object containing the universal properties of a Work Product Component for inclusion in data type specific Work Product Component objects
|
|
2218
|
+
"""
|
|
2219
|
+
|
|
2220
|
+
model_config = ConfigDict(
|
|
2221
|
+
extra='allow',
|
|
2222
|
+
)
|
|
2223
|
+
ResourceHomeRegionID: (
|
|
2224
|
+
constr(pattern=r'^[\w\-\.]+:reference-data\-\-OSDURegion:[\w\-\.\:\%]+:[0-9]*$')
|
|
2225
|
+
| None
|
|
2226
|
+
) = Field(None, title='Resource Home Region ID')
|
|
2227
|
+
"""
|
|
2228
|
+
The name of the home [cloud environment] region for this OSDU resource object.
|
|
2229
|
+
"""
|
|
2230
|
+
ResourceHostRegionIDs: (
|
|
2231
|
+
list[
|
|
2232
|
+
constr(
|
|
2233
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-OSDURegion:[\w\-\.\:\%]+:[0-9]*$'
|
|
2234
|
+
)
|
|
2235
|
+
]
|
|
2236
|
+
| None
|
|
2237
|
+
) = Field(None, title='Resource Host Region ID')
|
|
2238
|
+
"""
|
|
2239
|
+
The name of the host [cloud environment] region(s) for this OSDU resource object.
|
|
2240
|
+
"""
|
|
2241
|
+
ResourceCurationStatus: (
|
|
2242
|
+
constr(
|
|
2243
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-ResourceCurationStatus:[\w\-\.\:\%]+:[0-9]*$'
|
|
2244
|
+
)
|
|
2245
|
+
| None
|
|
2246
|
+
) = Field(None, title='Resource Curation Status')
|
|
2247
|
+
"""
|
|
2248
|
+
Describes the current Curation status.
|
|
2249
|
+
"""
|
|
2250
|
+
ResourceLifecycleStatus: (
|
|
2251
|
+
constr(
|
|
2252
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-ResourceLifecycleStatus:[\w\-\.\:\%]+:[0-9]*$'
|
|
2253
|
+
)
|
|
2254
|
+
| None
|
|
2255
|
+
) = Field(None, title='Resource Lifecycle Status')
|
|
2256
|
+
"""
|
|
2257
|
+
Describes the current Resource Lifecycle status.
|
|
2258
|
+
"""
|
|
2259
|
+
ResourceSecurityClassification: (
|
|
2260
|
+
constr(
|
|
2261
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-ResourceSecurityClassification:[\w\-\.\:\%]+:[0-9]*$'
|
|
2262
|
+
)
|
|
2263
|
+
| None
|
|
2264
|
+
) = Field(None, title='Resource Security Classification')
|
|
2265
|
+
"""
|
|
2266
|
+
Classifies the security level of the resource.
|
|
2267
|
+
"""
|
|
2268
|
+
Source: str | None = Field(None, title='Data Source')
|
|
2269
|
+
"""
|
|
2270
|
+
The entity that produced the record, or from which it is received; could be an organization, agency, system, internal team, or individual. For informational purposes only, the list of sources is not governed.
|
|
2271
|
+
"""
|
|
2272
|
+
ExistenceKind: (
|
|
2273
|
+
constr(
|
|
2274
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-ExistenceKind:[\w\-\.\:\%]+:[0-9]*$'
|
|
2275
|
+
)
|
|
2276
|
+
| None
|
|
2277
|
+
) = Field(None, title='Existence Kind')
|
|
2278
|
+
"""
|
|
2279
|
+
Where does this data resource sit in the cradle-to-grave span of its existence?
|
|
2280
|
+
"""
|
|
2281
|
+
TechnicalAssuranceID: (
|
|
2282
|
+
constr(
|
|
2283
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-TechnicalAssuranceType:[\w\-\.\:\%]+:[0-9]*$'
|
|
2284
|
+
)
|
|
2285
|
+
| None
|
|
2286
|
+
) = Field(None, title='Technical Assurance ID')
|
|
2287
|
+
"""
|
|
2288
|
+
DEPRECATED: Describes a record's overall suitability for general business consumption based on data quality. Clarifications: Since Certified is the highest classification of suitable quality, any further change or versioning of a Certified record should be carefully considered and justified. If a Technical Assurance value is not populated then one can assume the data has not been evaluated or its quality is unknown (=Unevaluated). Technical Assurance values are not intended to be used for the identification of a single "preferred" or "definitive" record by comparison with other records.
|
|
2289
|
+
"""
|
|
2290
|
+
Datasets: (
|
|
2291
|
+
list[constr(pattern=r'^[\w\-\.]+:dataset\-\-[\w\-\.]+:[\w\-\.\:\%]+:[0-9]*$')]
|
|
2292
|
+
| None
|
|
2293
|
+
) = None
|
|
2294
|
+
"""
|
|
2295
|
+
The record id, which identifies this OSDU File or dataset resource.
|
|
2296
|
+
"""
|
|
2297
|
+
DDMSDatasets: (
|
|
2298
|
+
list[
|
|
2299
|
+
constr(
|
|
2300
|
+
pattern=r'^(([^:/?#]+):)(\/\/([^/?#]+))(\/[^?#]+)(\?([^#]*))?(#(.*))?'
|
|
2301
|
+
)
|
|
2302
|
+
]
|
|
2303
|
+
| None
|
|
2304
|
+
) = Field(
|
|
2305
|
+
None,
|
|
2306
|
+
examples=[
|
|
2307
|
+
[
|
|
2308
|
+
'urn://wddms-3/uuid:20840361-adc0-4842-999b-5639bd07bb38',
|
|
2309
|
+
"eml://rddms-1/dataspace('demo/Volve')/resqml20.obj_ContinuousProperty(1615d8d2-2a2d-482c-885e-14225b89e90c)",
|
|
2310
|
+
]
|
|
2311
|
+
],
|
|
2312
|
+
title='DDMS Datasets',
|
|
2313
|
+
)
|
|
2314
|
+
"""
|
|
2315
|
+
An array of references to content in Domain Data Management Services represented by this work-product-component. The references are formed as URI following https://www.rfc-editor.org/rfc/rfc3986#page-16. This property is exclusively populated by DDMSs. If a work-product-component is represented in more than one DDMS, DDMSs are obliged to find the specific reference by inspecting the URI's authority values matching the DDMS id.
|
|
2316
|
+
"""
|
|
2317
|
+
Artefacts: list[Artefact] | None = None
|
|
2318
|
+
"""
|
|
2319
|
+
An array of Artefacts - each artefact has a Role, Resource tuple. An artefact is distinct from the file, in the sense certain valuable information is generated during loading process (Artefact generation process). Examples include retrieving location data, performing an OCR which may result in the generation of artefacts which need to be preserved distinctly
|
|
2320
|
+
"""
|
|
2321
|
+
IsExtendedLoad: bool | None = None
|
|
2322
|
+
"""
|
|
2323
|
+
A flag that indicates if the work product component is undergoing an extended load. It reflects the fact that the work product component is in an early stage and may be updated before finalization.
|
|
2324
|
+
"""
|
|
2325
|
+
IsDiscoverable: bool | None = None
|
|
2326
|
+
"""
|
|
2327
|
+
A flag that indicates if the work product component is searchable, which means covered in the search index.
|
|
2328
|
+
"""
|
|
2329
|
+
TechnicalAssurances: list[v1_2_0.AbstractTechnicalAssurance] | None = Field(
|
|
2330
|
+
None, title='Technical Assurances'
|
|
2331
|
+
)
|
|
2332
|
+
"""
|
|
2333
|
+
Describes a record's overall suitability for general business consumption based on data quality. Clarifications: Since Certified is the highest classification of suitable quality, any further change or versioning of a Certified record should be carefully considered and justified. If a Technical Assurance value is not populated then one can assume the data has not been evaluated or its quality is unknown (=Unevaluated). Technical Assurance values are not intended to be used for the identification of a single "preferred" or "definitive" record by comparison with other records.
|
|
2334
|
+
"""
|
|
2335
|
+
NameAliases: list[v1_0_0.AbstractAliasNames] | None = None
|
|
2336
|
+
"""
|
|
2337
|
+
Alternative names, including historical, by which this work-product-component is/has been known (it should include all the identifiers).
|
|
2338
|
+
"""
|
|
2339
|
+
Name: str = Field(
|
|
2340
|
+
..., examples=['9-5/8" Production Casing Cement Job'], title='Name'
|
|
2341
|
+
)
|
|
2342
|
+
"""
|
|
2343
|
+
Name of the cement job.
|
|
2344
|
+
"""
|
|
2345
|
+
Description: str | None = None
|
|
2346
|
+
"""
|
|
2347
|
+
Description. Summary of the work product component. Not the same as Remark which captures thoughts of creator about the wpc.
|
|
2348
|
+
"""
|
|
2349
|
+
CreationDateTime: str | None = None
|
|
2350
|
+
"""
|
|
2351
|
+
Date that a resource (work product component here) is formed outside of OSDU before loading (e.g. publication date).
|
|
2352
|
+
"""
|
|
2353
|
+
Tags: list[str] | None = None
|
|
2354
|
+
"""
|
|
2355
|
+
Array of key words to identify the work product, especially to help in search.
|
|
2356
|
+
"""
|
|
2357
|
+
SpatialPoint: v1_1_0.AbstractSpatialLocation | None = None
|
|
2358
|
+
"""
|
|
2359
|
+
A centroid point that reflects the locale of the content of the work product component (location of the subject matter).
|
|
2360
|
+
"""
|
|
2361
|
+
SpatialArea: v1_1_0.AbstractSpatialLocation | None = None
|
|
2362
|
+
"""
|
|
2363
|
+
A polygon boundary that reflects the locale of the content of the work product component (location of the subject matter).
|
|
2364
|
+
"""
|
|
2365
|
+
GeoContexts: list[v1_0_0_1.AbstractGeoContext] | None = None
|
|
2366
|
+
"""
|
|
2367
|
+
List of geographic entities which provide context to the WPC. This may include multiple types or multiple values of the same type.
|
|
2368
|
+
"""
|
|
2369
|
+
SubmitterName: str | None = None
|
|
2370
|
+
"""
|
|
2371
|
+
Name of the person that first submitted the work product component to OSDU.
|
|
2372
|
+
"""
|
|
2373
|
+
BusinessActivities: list[str] | None = None
|
|
2374
|
+
"""
|
|
2375
|
+
Array of business processes/workflows that the work product component has been through (ex. well planning, exploration).
|
|
2376
|
+
"""
|
|
2377
|
+
AuthorIDs: list[str] | None = Field(None, title='Author IDs')
|
|
2378
|
+
"""
|
|
2379
|
+
Array of Authors' names of the work product component. Could be a person or company entity.
|
|
2380
|
+
"""
|
|
2381
|
+
LineageAssertions: list[LineageAssertion] | None = None
|
|
2382
|
+
"""
|
|
2383
|
+
Defines relationships with other objects (any kind of Resource) upon which this work product component depends. The assertion is directed only from the asserting WPC to ancestor objects, not children. It should not be used to refer to files or artefacts within the WPC -- the association within the WPC is sufficient and Artefacts are actually children of the main WPC file. They should be recorded in the data.Artefacts[] array.
|
|
2384
|
+
"""
|
|
2385
|
+
WellboreID: constr(
|
|
2386
|
+
pattern=r'^[\w\-\.]+:master-data\-\-Wellbore:[\w\-\.\:\%]+:[0-9]*$'
|
|
2387
|
+
) = Field(
|
|
2388
|
+
...,
|
|
2389
|
+
examples=['namespace:master-data--Wellbore:11000091175501:'],
|
|
2390
|
+
title='Wellbore ID',
|
|
2391
|
+
)
|
|
2392
|
+
"""
|
|
2393
|
+
Reference to the parent Wellbore. Cemented TubularAssembly would be installed to same Wellbore.
|
|
2394
|
+
"""
|
|
2395
|
+
WellActivityID: constr(
|
|
2396
|
+
pattern=r'^[\w\-\.]+:master-data\-\-WellActivity:[\w\-\.\:\%]+:[0-9]*$'
|
|
2397
|
+
) = Field(
|
|
2398
|
+
...,
|
|
2399
|
+
examples=['namespace:master-data--WellActivity:110000911755.DRO:'],
|
|
2400
|
+
title='Well Activity',
|
|
2401
|
+
)
|
|
2402
|
+
"""
|
|
2403
|
+
Identifier of the parent Well Activity in which the Cement Job was performed
|
|
2404
|
+
"""
|
|
2405
|
+
VerticalMeasurement: v1_0_0_2.AbstractFacilityVerticalMeasurement = Field(
|
|
2406
|
+
...,
|
|
2407
|
+
examples=[
|
|
2408
|
+
{
|
|
2409
|
+
'VerticalReferenceEntityID': 'namespace:master-data--Wellbore:11000091175501:',
|
|
2410
|
+
'VerticalReferenceID': 'DFE',
|
|
2411
|
+
}
|
|
2412
|
+
],
|
|
2413
|
+
title='Depth Reference Elevation',
|
|
2414
|
+
)
|
|
2415
|
+
"""
|
|
2416
|
+
ID to the Zero Depth Point Vertical Measure elevation for depths contained in the Cement Job, Stages and Pumping Schedule, depth correction used to correlate MDs to original drilling rig MD. References an entry in the Vertical Measurement array for the Well parented by the wellbore via WellboreID.
|
|
2417
|
+
"""
|
|
2418
|
+
WellboreTubularID: (
|
|
2419
|
+
constr(
|
|
2420
|
+
pattern=r'^[\w\-\.]+:work-product-component\-\-TubularAssembly:[\w\-\.\:\%]+:[0-9]*$'
|
|
2421
|
+
)
|
|
2422
|
+
| None
|
|
2423
|
+
) = Field(
|
|
2424
|
+
None,
|
|
2425
|
+
examples=['namespace:work-product-component--TubularAssembly:9_58ProdCasing:'],
|
|
2426
|
+
title='Cemented Tubular Assembly',
|
|
2427
|
+
)
|
|
2428
|
+
"""
|
|
2429
|
+
Installed Casing/Liner or other Tubular Assembly on which the Cement Job is performed. Not entered for Plug jobs in open hole.
|
|
2430
|
+
"""
|
|
2431
|
+
HoleSectionID: (
|
|
2432
|
+
constr(pattern=r'^[\w\-\.]+:master-data\-\-HoleSection:[\w\-\.\:\%]+:[0-9]*$')
|
|
2433
|
+
| None
|
|
2434
|
+
) = Field(
|
|
2435
|
+
None,
|
|
2436
|
+
examples=['namespace:master-data--HoleSection:11000091175501.12_14HoleSect:'],
|
|
2437
|
+
title='Hole Section Identifier',
|
|
2438
|
+
)
|
|
2439
|
+
"""
|
|
2440
|
+
Hole Section Assembly installed in and cement job performed in
|
|
2441
|
+
"""
|
|
2442
|
+
WorkStringID: (
|
|
2443
|
+
constr(
|
|
2444
|
+
pattern=r'^[\w\-\.]+:work-product-component\-\-TubularAssembly:[\w\-\.\:\%]+:[0-9]*$'
|
|
2445
|
+
)
|
|
2446
|
+
| None
|
|
2447
|
+
) = Field(None, title='Work String ID')
|
|
2448
|
+
"""
|
|
2449
|
+
Identifier of the TubularAssembly that describes the cement work string
|
|
2450
|
+
"""
|
|
2451
|
+
JobTypeID: constr(
|
|
2452
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementJobType:[\w\-\.\:\%]+:[0-9]*$'
|
|
2453
|
+
) = Field(
|
|
2454
|
+
...,
|
|
2455
|
+
examples=['namespace:reference-data--CementJobType:Primary:'],
|
|
2456
|
+
title='Job Type ID',
|
|
2457
|
+
)
|
|
2458
|
+
"""
|
|
2459
|
+
Type of cement job
|
|
2460
|
+
"""
|
|
2461
|
+
JobStartDatetime: str | None = Field(
|
|
2462
|
+
None, examples=['2020-04-20T08:00:00+0000'], title='Job Start Date/time'
|
|
2463
|
+
)
|
|
2464
|
+
"""
|
|
2465
|
+
Job Start Date/time
|
|
2466
|
+
"""
|
|
2467
|
+
JobEndDatetime: str | None = Field(
|
|
2468
|
+
None, examples=['2020-04-20T12:30:00+0000'], title='Job End Date/time'
|
|
2469
|
+
)
|
|
2470
|
+
"""
|
|
2471
|
+
Job End Date/time
|
|
2472
|
+
"""
|
|
2473
|
+
JobConfiguration: str | None = Field(None, title='Job Configuration')
|
|
2474
|
+
"""
|
|
2475
|
+
Job configuration/description
|
|
2476
|
+
"""
|
|
2477
|
+
PlannedCementJobID: (
|
|
2478
|
+
constr(
|
|
2479
|
+
pattern=r'^[\w\-\.]+:master-data\-\-PlannedCementJob:[\w\-\.\:\%]+:[0-9]*$'
|
|
2480
|
+
)
|
|
2481
|
+
| None
|
|
2482
|
+
) = Field(None, title='Planned Cement Job ID')
|
|
2483
|
+
"""
|
|
2484
|
+
Association to Planned Cement Job
|
|
2485
|
+
"""
|
|
2486
|
+
PumpThroughEquipmentID: (
|
|
2487
|
+
constr(
|
|
2488
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementPumpThroughEquipmentType:[\w\-\.\:\%]+:[0-9]*$'
|
|
2489
|
+
)
|
|
2490
|
+
| None
|
|
2491
|
+
) = Field(
|
|
2492
|
+
None,
|
|
2493
|
+
examples=[
|
|
2494
|
+
'namespace:reference-data--CementPumpThroughEquipmentType:CementHead:'
|
|
2495
|
+
],
|
|
2496
|
+
title='Pump Through Equipment',
|
|
2497
|
+
)
|
|
2498
|
+
"""
|
|
2499
|
+
Pump Through Equipment
|
|
2500
|
+
"""
|
|
2501
|
+
ContractorID: (
|
|
2502
|
+
constr(pattern=r'^[\w\-\.]+:master-data\-\-Organisation:[\w\-\.\:\%]+:[0-9]*$')
|
|
2503
|
+
| None
|
|
2504
|
+
) = Field(
|
|
2505
|
+
None,
|
|
2506
|
+
examples=['namespace:master-data--Organisation:Halliburton:'],
|
|
2507
|
+
title='Contractor ID',
|
|
2508
|
+
)
|
|
2509
|
+
"""
|
|
2510
|
+
Identifier of cementing contractor.
|
|
2511
|
+
"""
|
|
2512
|
+
LeadCementerName: str | None = Field(
|
|
2513
|
+
None, examples=['Joe Bloggs'], title='Lead Cementer Name'
|
|
2514
|
+
)
|
|
2515
|
+
"""
|
|
2516
|
+
Name of lead cementer
|
|
2517
|
+
"""
|
|
2518
|
+
OperatorRepresentative: str | None = Field(
|
|
2519
|
+
None, examples=['Jane Bloggs'], title='Operator Representative'
|
|
2520
|
+
)
|
|
2521
|
+
"""
|
|
2522
|
+
Name of Operator Representative/Supervisor
|
|
2523
|
+
"""
|
|
2524
|
+
ContractorJobID: str | None = Field(
|
|
2525
|
+
None, examples=['H099999'], title='Contractor Job ID'
|
|
2526
|
+
)
|
|
2527
|
+
"""
|
|
2528
|
+
Contractor Job ID
|
|
2529
|
+
"""
|
|
2530
|
+
OperatorRepresentativeRemarks: str | None = Field(
|
|
2531
|
+
None,
|
|
2532
|
+
examples=[
|
|
2533
|
+
'Performed 9 5/8” cement job as per Halliburton Procedure: Total Spacer: 60 bbls of 9.2 ppg tuned spacer lll. Cement recipe as follows; 177 sks at 1.59 cuft/sk for 281 cu/ft (50 bbls) of 15.6 ppg Class A cement. 0.07% EZ-FLO II, 2.3 lb/sk KCl, 0.12 gps Halad 344, 0.01 gps SA-640L, 0.14 gps HR-6L, 35% SS-200. Water requirement-6.42 gps, total mix fluid-6.69 gps. Total cement volume-50 bbls, 281 cu/ft. Shoe depth: 11,141’ MD, 10,219’ TVD. CML maintaining 9.2 ppg DHMW throughout cement job.'
|
|
2534
|
+
],
|
|
2535
|
+
title='Operator Representative Remarks',
|
|
2536
|
+
)
|
|
2537
|
+
"""
|
|
2538
|
+
Operator Representative Remarks
|
|
2539
|
+
"""
|
|
2540
|
+
IsReturnsToSeabed: bool | None = Field(
|
|
2541
|
+
None, examples=[False], title='Is Returns To Seabed'
|
|
2542
|
+
)
|
|
2543
|
+
"""
|
|
2544
|
+
Were fluid circulated/returned to seabed. Values are "true" (or "1") and "false" (or "0").
|
|
2545
|
+
"""
|
|
2546
|
+
IsReciprocating: bool | None = Field(
|
|
2547
|
+
None, examples=[False], title='Is Reciprocating'
|
|
2548
|
+
)
|
|
2549
|
+
"""
|
|
2550
|
+
Pipe being reciprocated. Values are "true" (or "1") and "false" (or "0").
|
|
2551
|
+
"""
|
|
2552
|
+
IsRotating: bool | None = Field(None, examples=[False], title='Is Rotating')
|
|
2553
|
+
"""
|
|
2554
|
+
Is pipe rotated during job. Values are "true" (or "1") and "false" (or "0").
|
|
2555
|
+
"""
|
|
2556
|
+
WaitOnCementDuration: float | None = Field(
|
|
2557
|
+
None, examples=['180 min'], title='Waiting On Cement time'
|
|
2558
|
+
)
|
|
2559
|
+
"""
|
|
2560
|
+
Duration from cement placement and left
|
|
2561
|
+
undisturbed until disturbed again.
|
|
2562
|
+
"""
|
|
2563
|
+
HoleMeasuredDepth: float | None = Field(
|
|
2564
|
+
None, examples=['11162 ft'], title='Hole Measured Depth'
|
|
2565
|
+
)
|
|
2566
|
+
"""
|
|
2567
|
+
Measured depth at bottom of hole.
|
|
2568
|
+
"""
|
|
2569
|
+
StringSetMeasuredDepth: float | None = Field(
|
|
2570
|
+
None, examples=['11141 ft'], title='String Set Measured Depth'
|
|
2571
|
+
)
|
|
2572
|
+
"""
|
|
2573
|
+
Measured depth of cemented string casing/liner shoe.
|
|
2574
|
+
"""
|
|
2575
|
+
StringSetTrueVerticalDepth: float | None = Field(
|
|
2576
|
+
None, examples=['10200 ft'], title='String Set True Vertical Depth'
|
|
2577
|
+
)
|
|
2578
|
+
"""
|
|
2579
|
+
True vertical depth of cement string shoe.
|
|
2580
|
+
"""
|
|
2581
|
+
StageCollarMeasuredDepth: float | None = Field(
|
|
2582
|
+
None, examples=['9802.50 ft'], title='StageCollarMeasuredDepth'
|
|
2583
|
+
)
|
|
2584
|
+
"""
|
|
2585
|
+
Measured depth of the stage collar
|
|
2586
|
+
"""
|
|
2587
|
+
LandingFloatCollarMeasuredDepth: float | None = Field(
|
|
2588
|
+
None, examples=['11041.5 ft'], title='LandingCollarMeasuredDepth'
|
|
2589
|
+
)
|
|
2590
|
+
"""
|
|
2591
|
+
Measured depth of the landing/float collar
|
|
2592
|
+
"""
|
|
2593
|
+
RatholeLength: float | None = Field(
|
|
2594
|
+
None, examples=['21 ft'], title='Rathole Length'
|
|
2595
|
+
)
|
|
2596
|
+
"""
|
|
2597
|
+
Distance from shoe to hole section bottom depth (Rathole)
|
|
2598
|
+
"""
|
|
2599
|
+
PreviousShoeMeasuredDepth: float | None = Field(
|
|
2600
|
+
None, examples=['10120 ft'], title='Previous Shoe Measured Depth'
|
|
2601
|
+
)
|
|
2602
|
+
"""
|
|
2603
|
+
Measured depth of the previous casing/liner shoe.
|
|
2604
|
+
"""
|
|
2605
|
+
PreviousShoeTrueVerticalDepth: float | None = Field(
|
|
2606
|
+
None, examples=['9916.40 ft'], title='Previous Shoe True Vertical Depth'
|
|
2607
|
+
)
|
|
2608
|
+
"""
|
|
2609
|
+
Estimated True Vertical Depth of previous casing/liner shoe.
|
|
2610
|
+
"""
|
|
2611
|
+
PlugTopMeasuredDepth: float | None = Field(None, title='Plug Top Measured Depth')
|
|
2612
|
+
"""
|
|
2613
|
+
If Plug, measured depth of top of plug
|
|
2614
|
+
"""
|
|
2615
|
+
PlugTopTrueVerticalDepth: float | None = Field(
|
|
2616
|
+
None, title='Plug Top True Vertical Depth'
|
|
2617
|
+
)
|
|
2618
|
+
"""
|
|
2619
|
+
If Plug, true vertical depth of top of plug. TVDs needed for estimating hydrostatic pressure and temperature.
|
|
2620
|
+
"""
|
|
2621
|
+
PlugBaseMeasuredDepth: float | None = Field(None, title='Plug Base Measured Depth')
|
|
2622
|
+
"""
|
|
2623
|
+
If Plug, measured depth of bottom of plug.
|
|
2624
|
+
"""
|
|
2625
|
+
PlugBaseTrueVerticalDepth: float | None = Field(
|
|
2626
|
+
None, title='Plug Base True Vertical Depth'
|
|
2627
|
+
)
|
|
2628
|
+
"""
|
|
2629
|
+
If Plug, true vertical depth of bottom of plug.
|
|
2630
|
+
"""
|
|
2631
|
+
PlugInclinationAverage: float | None = Field(
|
|
2632
|
+
None, examples=['86 dega'], title='Plug Inclination Average'
|
|
2633
|
+
)
|
|
2634
|
+
"""
|
|
2635
|
+
If Plug, average inclination of wellbore across plug depth calculated from directional survey
|
|
2636
|
+
"""
|
|
2637
|
+
PlugInclinationMaximum: float | None = Field(None, title='Plug Inclination Maximum')
|
|
2638
|
+
"""
|
|
2639
|
+
If Plug, maximum inclination of wellbore across plug depth calculated from directional survey
|
|
2640
|
+
"""
|
|
2641
|
+
PlugTaggedMeasuredDepth: float | None = Field(
|
|
2642
|
+
None, title='Plug Tagged Measured Depth'
|
|
2643
|
+
)
|
|
2644
|
+
"""
|
|
2645
|
+
Plug tagged MD
|
|
2646
|
+
"""
|
|
2647
|
+
PlugTaggedWeight: float | None = Field(None, title='Plug Tagged Weight')
|
|
2648
|
+
"""
|
|
2649
|
+
Plug tagged weight
|
|
2650
|
+
"""
|
|
2651
|
+
PlugPositiveTestPressure: float | None = Field(
|
|
2652
|
+
None, title='Plug Positive Test Pressure'
|
|
2653
|
+
)
|
|
2654
|
+
"""
|
|
2655
|
+
Plug Positive Test Pressure
|
|
2656
|
+
"""
|
|
2657
|
+
PlugNegativeTestPressure: float | None = Field(
|
|
2658
|
+
None, title='Plug Negative Test Pressure'
|
|
2659
|
+
)
|
|
2660
|
+
"""
|
|
2661
|
+
Plug negative test pressure
|
|
2662
|
+
"""
|
|
2663
|
+
PlugTypeID: (
|
|
2664
|
+
constr(
|
|
2665
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementPlugType:[\w\-\.\:\%]+:[0-9]*$'
|
|
2666
|
+
)
|
|
2667
|
+
| None
|
|
2668
|
+
) = Field(None, title='Plug Type ID')
|
|
2669
|
+
"""
|
|
2670
|
+
Cement plug type.
|
|
2671
|
+
"""
|
|
2672
|
+
IsPlugDrilledOut: bool | None = Field(None, title='Plug Drilled Out')
|
|
2673
|
+
"""
|
|
2674
|
+
Plug fully drilled out
|
|
2675
|
+
"""
|
|
2676
|
+
PlugDrillOutDate: str | None = Field(None, title='Plug Drill Out Date')
|
|
2677
|
+
"""
|
|
2678
|
+
Date when Cement Plug fully drilled out (not partial drill out).
|
|
2679
|
+
"""
|
|
2680
|
+
PlugBaseSupportTypeID: (
|
|
2681
|
+
constr(
|
|
2682
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementPlugBaseSupportType:[\w\-\.\:\%]+:[0-9]*$'
|
|
2683
|
+
)
|
|
2684
|
+
| None
|
|
2685
|
+
) = Field(None, title='Plug Base Support Type')
|
|
2686
|
+
"""
|
|
2687
|
+
Cement Plug Support Base Type
|
|
2688
|
+
"""
|
|
2689
|
+
CementPlugStates: list[CementPlugState] | None = Field(
|
|
2690
|
+
None, title='Cement Plug States'
|
|
2691
|
+
)
|
|
2692
|
+
"""
|
|
2693
|
+
Cement Plug Status History
|
|
2694
|
+
"""
|
|
2695
|
+
SqueezeTypeID: (
|
|
2696
|
+
constr(
|
|
2697
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementSqueezeType:[\w\-\.\:\%]+:[0-9]*$'
|
|
2698
|
+
)
|
|
2699
|
+
| None
|
|
2700
|
+
) = Field(None, title='Squeeze Type')
|
|
2701
|
+
"""
|
|
2702
|
+
Type of squeeze.
|
|
2703
|
+
"""
|
|
2704
|
+
SqueezeMethodID: (
|
|
2705
|
+
constr(
|
|
2706
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementSqueezeMethod:[\w\-\.\:\%]+:[0-9]*$'
|
|
2707
|
+
)
|
|
2708
|
+
| None
|
|
2709
|
+
) = Field(None, title='Squeeze method')
|
|
2710
|
+
"""
|
|
2711
|
+
Method used to perform squeeze
|
|
2712
|
+
"""
|
|
2713
|
+
SqueezeTopMeasuredDepth: float | None = Field(
|
|
2714
|
+
None, title='Squeeze Top Measured Depth'
|
|
2715
|
+
)
|
|
2716
|
+
"""
|
|
2717
|
+
Top Measured depth of squeeze e.g. long perforated interval. Single depth when specific point squeezed (top & base are same).
|
|
2718
|
+
"""
|
|
2719
|
+
SqueezeWellboreOpeningID: (
|
|
2720
|
+
list[
|
|
2721
|
+
constr(
|
|
2722
|
+
pattern=r'^[\w\-\.]+:master-data\-\-WellboreOpening:[\w\-\.\:\%]+:[0-9]*$'
|
|
2723
|
+
)
|
|
2724
|
+
]
|
|
2725
|
+
| None
|
|
2726
|
+
) = Field(None, title='Wellbore Opening')
|
|
2727
|
+
"""
|
|
2728
|
+
ID of Wellbore Opening(s) through which Cement Squeezed
|
|
2729
|
+
"""
|
|
2730
|
+
IsCoilTubing: bool | None = Field(None, examples=[False], title='Is Coil Tubing')
|
|
2731
|
+
"""
|
|
2732
|
+
Coiled Tubing Used in the job (true=CTU used). Values are "true" (or "1") and "false" (or "0").
|
|
2733
|
+
"""
|
|
2734
|
+
EstimatedCementTopMeasuredDepth: float | None = Field(
|
|
2735
|
+
None, examples=['11000 ft'], title='Estimated Cement Top Measured Depth'
|
|
2736
|
+
)
|
|
2737
|
+
"""
|
|
2738
|
+
The estimated Measured depth of the Top of Cement (TOC) based on volume pumped.
|
|
2739
|
+
"""
|
|
2740
|
+
CementToolTubularComponentID: (
|
|
2741
|
+
constr(
|
|
2742
|
+
pattern=r'^[\w\-\.]+:work-product-component\-\-TubularComponent:[\w\-\.\:\%]+:[0-9]*$'
|
|
2743
|
+
)
|
|
2744
|
+
| None
|
|
2745
|
+
) = Field(None, title='Cement Tool Tubular Component ID')
|
|
2746
|
+
"""
|
|
2747
|
+
The identifier of the TubularComponent within the Cemented String TubularAssembly used for Cementing the wellbore
|
|
2748
|
+
"""
|
|
2749
|
+
IsPipePulledWet: bool | None = Field(
|
|
2750
|
+
None, examples=[False], title='Pipe Pulled Wet'
|
|
2751
|
+
)
|
|
2752
|
+
"""
|
|
2753
|
+
Is the pipe pulled wet (or dry) from cementing operation depth to surface for Plugs
|
|
2754
|
+
"""
|
|
2755
|
+
PipePulledRate: Literal['ft/min not std/min'] | None = Field(
|
|
2756
|
+
None, title='Pipe Pulled Rate'
|
|
2757
|
+
)
|
|
2758
|
+
"""
|
|
2759
|
+
Rate pulled from cementing operation depth to surface
|
|
2760
|
+
"""
|
|
2761
|
+
IsViscousPillUsed: bool | None = Field(
|
|
2762
|
+
None, examples=[False], title='Viscous Pilled Used'
|
|
2763
|
+
)
|
|
2764
|
+
"""
|
|
2765
|
+
Is Viscous Pilled Used
|
|
2766
|
+
"""
|
|
2767
|
+
PackerStingerMeasuredDepth: Literal['?? In SLB PlannedCementJob?'] | None = Field(
|
|
2768
|
+
None, title='Packer Stinger Measured Depth'
|
|
2769
|
+
)
|
|
2770
|
+
"""
|
|
2771
|
+
Packer or Stinger Measured Depth
|
|
2772
|
+
"""
|
|
2773
|
+
CementToolTypeID: (
|
|
2774
|
+
constr(
|
|
2775
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementToolType:[\w\-\.\:\%]+:[0-9]*$'
|
|
2776
|
+
)
|
|
2777
|
+
| None
|
|
2778
|
+
) = Field(
|
|
2779
|
+
None,
|
|
2780
|
+
examples=['nmespace:reference-data--CementToolType:Retainer:'],
|
|
2781
|
+
title='Cement Tool Type',
|
|
2782
|
+
)
|
|
2783
|
+
"""
|
|
2784
|
+
Cement Tool Type
|
|
2785
|
+
"""
|
|
2786
|
+
CementStages: list[CementStage] | None = Field(None, title='Cement Stages')
|
|
2787
|
+
"""
|
|
2788
|
+
Set of stages for the job (usually 1 or 2).
|
|
2789
|
+
"""
|
|
2790
|
+
CasingPressureTest_1: CasingPressureTest | None = Field(
|
|
2791
|
+
None, alias='CasingPressureTest', title='Casing Pressure Test'
|
|
2792
|
+
)
|
|
2793
|
+
"""
|
|
2794
|
+
Casing Pressure Test
|
|
2795
|
+
"""
|
|
2796
|
+
LogEvaluation: list[LogEvaluationItem] | None = Field(None, title='Log Evaluation')
|
|
2797
|
+
"""
|
|
2798
|
+
Log Evaluation
|
|
2799
|
+
"""
|
|
2800
|
+
ShoeTest_1: ShoeTest | None = Field(None, alias='ShoeTest', title='Shoe Test')
|
|
2801
|
+
"""
|
|
2802
|
+
Shoe Test
|
|
2803
|
+
"""
|
|
2804
|
+
TOCInterpretation_1: TOCInterpretation | None = Field(
|
|
2805
|
+
None, alias='TOCInterpretation', title='TOC Interpretation'
|
|
2806
|
+
)
|
|
2807
|
+
"""
|
|
2808
|
+
TOC Interpretation
|
|
2809
|
+
"""
|
|
2810
|
+
LinerTopTest_1: LinerTopTest | None = Field(
|
|
2811
|
+
None, alias='LinerTopTest', title='Liner Top Test'
|
|
2812
|
+
)
|
|
2813
|
+
"""
|
|
2814
|
+
Liner Top Test
|
|
2815
|
+
"""
|
|
2816
|
+
ShoetrackCement_1: ShoetrackCement | None = Field(
|
|
2817
|
+
None, alias='ShoetrackCement', title='Shoetrack Cement'
|
|
2818
|
+
)
|
|
2819
|
+
"""
|
|
2820
|
+
Shoetrack Cement
|
|
2821
|
+
"""
|
|
2822
|
+
CementJobRating: (
|
|
2823
|
+
constr(
|
|
2824
|
+
pattern=r'^[\w\-\.]+:reference-data\-\-CementJobQuality:[\w\-\.\:\%]+:[0-9]*$'
|
|
2825
|
+
)
|
|
2826
|
+
| None
|
|
2827
|
+
) = Field(
|
|
2828
|
+
None,
|
|
2829
|
+
examples=['namespace:reference-data--CementJobQuality:Good:'],
|
|
2830
|
+
title='Cement Job Rating',
|
|
2831
|
+
)
|
|
2832
|
+
"""
|
|
2833
|
+
Cement Job Rating
|
|
2834
|
+
"""
|
|
2835
|
+
PhROVMeasured: float | None = Field(None, examples=[6], title='ROV Measured pH')
|
|
2836
|
+
"""
|
|
2837
|
+
ROV Measured pH at Seabed
|
|
2838
|
+
"""
|
|
2839
|
+
CementFluidLineConfiguration: str | None = Field(
|
|
2840
|
+
None, title='Cement Fluid Line Configuration'
|
|
2841
|
+
)
|
|
2842
|
+
"""
|
|
2843
|
+
Cement Fluid Line Configuration
|
|
2844
|
+
"""
|
|
2845
|
+
Remarks: str | None = Field(
|
|
2846
|
+
None,
|
|
2847
|
+
examples=[
|
|
2848
|
+
'Halliburton displaced cement with 364 bbls of 9.2 ppg SBM SMW followed by 50 bbls of 6.8 ppg base oil at 4 bpm, 130-240 psi. Full returns observed during job. CML maintaining 9.2 ppg DHMW throughout cement job. Cement in place at 0115 hours, bled back 5 bbls, Floats holding.'
|
|
2849
|
+
],
|
|
2850
|
+
title='Remarks',
|
|
2851
|
+
)
|
|
2852
|
+
"""
|
|
2853
|
+
Remarks
|
|
2854
|
+
"""
|
|
2855
|
+
ExtensionProperties: dict[str, Any] | None = None
|