POSC Specifications: Epicentre Version 3.0 | Logical Data Model |
Add the Field Bank Potential Field model.
CHANGE ERP2_add_potential_field (*<REMARK>CHANGE ERP2_add_potential_field *) (*<DESC> Move seismic_facility to be a subtype of general_facility and drop redundant behavior. Allow geometry segments to represent either acquisition or processing (1D or 2D) subsets. Rename most generic seismic entities to be geophysical entities. Do not rename seismic_facility_track, seismic_traverse, seismic_geometry_set, seismic_feature, seismic_header, seismic_data_set, binset_grid/variant, seismic_feature_class, seismic_pick, seismic_pick_classification, seismic_receiver_facility, seismic_source_facility, seismograph_facility, seismograph_platform and seismograph_recording. Do not rename new seismic-to-seismic (m-m) associations. Add new abstract geophysical supertypes (and potential field subtypes) for seismic_geometry_set, seismic_data_set and binset_grid. Rename attributes, as appropriate, to remove seismic connotation. Add new potential field entities: potential_field_data_set, potential_field_geometry_set, potential_field_processing_grid, potential_field_platform, potential_field_recorder and potential_field_sensor_facility. *) (*<REMARK>========================= MOVE SEISMIC FACILILTY ==================*) ALTER ENTITY seismic_facility AS geophysical_facility DROP SUBTYPE OF (facility) ADD SUBTYPE OF (general_facility); (*<DESC>The utilization of equipment during geophysical acquisition activities.*) DROP identifying_facility (*<CHANGE>Redundant to General_facility.identifying_facility.*); ALTER identifying_context ALTER TYPE AS geophysical_geometry_set; INVERSE DROP identified_seismic_facility (*<CHANGE>Redundant to facility.identified_facility.*); DROP seismic_parts (*<CHANGE>Redundant to General_facility.composed_of_facility.*); DROP part_of_seismic (*<CHANGE>Redundant to facility.part_of_facility.*); ALTER seismic_facility_uid AS facility_uid; ALTER seismic_geometry_set AS geometry_set; END_ENTITY; DROP ENTITY seismic_facility_assembly (*<CHANGE>Redundant to Facility_assembly.*); ALTER ENTITY position_sensor_facility; INVERSE DROP part_of_seismic (*<CHANGE>Redundant to facility.part_of_facility.*); END_ENTITY; ALTER ENTITY seismic_facility_spectral_description AS geophysical_facility_spectral_desc; ALTER seismic_facility AS described_facility; END_ENTITY; ALTER ENTITY wavelet_or_filter; INVERSE ALTER seismic_facility AS geophysical_facility; END_ENTITY; ALTER ENTITY other_seismic_facility AS other_geophysical_facility; (*<DESC>The other usages of equipment during geophysical acquisition (e.g., towed buoy, time break sensor, water break sensor, spread, positioning network, uphole sensor, sweep sensor, navigation system, navigation processing system, depth controller, geophone fly, etc.).*) END_ENTITY; ADD ENTITY potential_field_platform SUBTYPE OF (seismic_facility) (*<REMARK>Note that seismic_facility has been renamed.*); (*<DESC>The use of an aircraft, satellite, ship or truck as a platform for potential field acquisition activities.*) INVERSE pty_sea_state : SET[0:?] OF pty_sea_state FOR potential_field_platform (*<DESC>The transient sea state associated with this platform.*) (*<VERB>have a property of*); pty_wind_state : SET[0:?] OF pty_wind_state FOR potential_field_platform (*<DESC>The transient wind state associated with this platform.*) (*<VERB>have a property of*); UNIQUE si: ref_existence_kind, identifier, identifying_context, identifying_facility; END_ENTITY; ADD ENTITY potential_field_sensor_facility SUBTYPE OF (seismic_facility) (*<REMARK>Note that seismic_facility has been renamed.*); (*<DESC>The utilization of a device which senses potential field information.*) sensor_facility_uid : OPTIONAL ndt_user_unique_identifier (*<DESC>The user assigned unique identifier of the facility. There is no semantic meaning implied by the value other than uniqueness within the context of the geometry sets which used the facility. This value can be used within "arrays" of information as an implied relationship to this facility.*); UNIQUE si: ref_existence_kind, identifier, identifying_context, identifying_facility; END_ENTITY; ADD ENTITY potential_field_recorder SUBTYPE OF (seismic_facility) (*<REMARK>Note that seismic_facility has been renamed.*); (*<DESC>The use of equipment for the purpose of recording potential field data.*) UNIQUE si: ref_existence_kind, identifier, identifying_context, identifying_facility; END_ENTITY; ALTER ENTITY seismic_facility_uid_usage AS geophysical_facility_uid_usage; (*<DESC>This association asserts that an attribute within a geometry set contains an implied relationship to a facility.*) ALTER seismic_facility AS facility (*<DESC>This is a facility which has implied usage by the geometry set. The value of attribute facility uid in the referenced facility may be used within an attribute value in the geometry set.*); ALTER seismic_geometry_set AS geometry_set ALTER TYPE AS geophysical_geometry_set; END_ENTITY; (*<REMARK>========================= GEOMETRY SEGMENTS ==================*) ADD ENTITY geophysical_point ABSTRACT SUPERTYPE OF (ONEOF( geophysical_acquisition_point, geophysical_processing_point )) SUBTYPE OF ( earth_feature ); (*<DESC>This refers to a node in a geophysical data array or grid. A node may represent a boundary of a geophysical geometry segments. It also allows, for example, the semantics of a particular note which is represented by a vertex to be used as the origin for a coordinate system. This entity is not intended to substitute for the array attributes (e.g., location) in the geophysical processing grid or the geometry set. *) INVERSE end_of_segment : SET[0:?] OF geophysical_geometry_segment FOR end_point (*<DESC>The segment for which this point defines the ending.*) (*<VERB>be the end of*); start_of_segment : SET[0:?] OF geophysical_geometry_segment FOR begin_point (*<DESC>The segment for which this point defines the beginning.*) (*<VERB>be the start of*); END_ENTITY; ALTER ENTITY seismic_acquisition_point AS geophysical_acquisition_point DROP SUBTYPE OF (earth_feature) ADD SUBTYPE OF (geophysical_point); (*<DESC>This refers to a node in a geophysical acquisition array. This entity is not intended to substitute for the arrays in Geophysical Geometry Set. If the detailed acquisition arrays are defined (i.e., a uid does exist) then the node uid should be specified. Any spatial objects which represent this point feature should specify a location which is consistent with the detailed acquisition arrays.*) ALTER seismic_geometry_set AS geometry_set ALTER TYPE AS geophysical_geometry_set; ALTER node_uid (*<DESC>Defines the uid value of the node that this point represents. This value must match a value in the corresponding attribute of the geometry set. The corresponding attribute is implied by attribute kind.*); END_ENTITY; ADD ENTITY geophysical_processing_point SUBTYPE OF (geophysical_point); (*<DESC>This refers to a node in a geophysical processing grid. This entity is not intended to substitute for the array attributes (e.g., location) in the processing grid.*) processing_grid : geophysical_processing_grid (*<DESC>Specifies the processing grid which contains the node which is being referenced by this instance. The grid point index and grid line index values must be defined index values in the associated processing grid.*) (*<VERB>represent a node in*); grid_point_index : ndt_int4 (*<DESC>The "point index" value on the processing grid of the node that this point represents.*); grid_line_index : OPTIONAL ndt_int4 (*<DESC>The "line index" value on the processing grid of the node that this point represents.*); UNIQUE si: processing_grid, grid_point_index, grid_line_index; END_ENTITY; ALTER ENTITY seismic_line_segment AS geophysical_geometry_segment; (*<DESC>Defines a segment within an acquisition or processing geometry set. The segment may represent a line or area depending on the indexes of the points which are referenced.*) ADD end_point : OPTIONAL geophysical_point (*<DESC>The point at the end of the segment.*) (*<VERB>end at*); ADD begin_point : OPTIONAL geophysical_point (*<DESC>The point at the beginning of the segment.*) (*<VERB>begin at*); ALTER seismic_geometry_set AS geometry_set ALTER TYPE AS geophysical_geometry_set; DROP begin_station_uid (*<CHANGE>Redundant to attributes in subtypes of Geophysical_point.*); DROP end_station_uid (*<CHANGE>Redundant to attributes in subtypes of Geophysical_point.*); INVERSE ALTER seismic_data_set ALTER FOR AS geometry_segment; ALTER seismic_display AS display; END_ENTITY; (*<REMARK>========================= RENAME ==================*) ALTER ENTITY seismic_offline_data AS geophysical_offline_data; (*<DESC>Report (or data) produced as a result of acquiring or processing geophysical data and stored offline from the data store, for example, observers report, surveyors report, drillers report, navigation report, field data, navigation data, etc. The report may be rendered with a format of SEGY, UKOOA, etc. The information on the report may or may not have been additionally stored in the data store.*) ALTER seismic_data_set AS data_set ALTER TYPE AS geophysical_data_set; ALTER seismic_geometry_set AS geometry_set ALTER TYPE AS geophysical_geometry_set; WHERE ALTER mse: EXISTS(geometry_set) XOR EXISTS(data_set) (*<DESC>Each GEOPHYSICAL OFFLINE DATA must be defined for one of DATA SET or GEOMETRY SET.*); END_ENTITY; ALTER ENTITY seismic_display AS geophysical_display; (*<DESC>The specification of a display of geophysical data.*) ALTER seismic_data_set AS data_set ALTER TYPE AS geophysical_data_set; ALTER x_scale (*<DESC>The scalar quantity used to transform the real world, x coordinates of the data into the normalized coordinates of graphical elements.*); ALTER y_scale (*<DESC>The scalar quantity used to transform the real world y coordinates of the data into the normalized coordinates of graphical elements.*); ALTER y_max (*<DESC>The largest "vertical" value (e.g.seismic time or depth) represented in a seismic display.*); ALTER y_min (*<DESC>The smallest "vertical" value (e.g., seismic time or depth) represented in a seismic display.*); ALTER ref_seismic_display_mode (*<DESC>The display mode of a seismic section. For example, wiggle trace, variable area, variable density, clipped or a combination of modes.*); ALTER ref_seismic_polarity (*<DESC>The polarity of displayed seismic data relative to the SEG polarity standard.*); ALTER seismic_line_segment AS geometry_segment (*<DESC>Defines the geometry segment that this display represents.*); WHERE ALTER ose: (EXISTS(seismic_traverse) XOR EXISTS(geometry_segment)) XOR (NOT (EXISTS(seismic_traverse) OR EXISTS(geometry_segment))) (*<DESC>Each instance may either represent a GEOMETRY SEGMENT or represent a SEISMIC TRAVERSE but not both.*); END_ENTITY; ALTER ENTITY seismic_traverse; INVERSE ALTER seismic_display AS geophysical_display; END_ENTITY; (*<REMARK>========================= GEOMETRY SET ==================*) ALTER ENTITY earth_surface_feature; INVERSE ADD geophysical_geometry_set : SET[0:?] OF geophysical_geometry_set FOR acquisition_area (*<DESC>Defines the geometry sets which are identified by this area.*) (*<VERB>identify*); END_ENTITY; ALTER ENTITY geophysical_acquisition_area; INVERSE DROP seismic_geometry_set (*<CHANGE>Moved to supertype as geophysical_geometry_set.*); END_ENTITY; ADD ENTITY geophysical_geometry_set ABSTRACT SUPERTYPE OF (ONEOF(seismic_geometry_set, potential_field_geometry_set)) SUBTYPE OF (earth_feature); (*<DESC>Defines geometry associated with geophysical acquisition (e.g., seismic, gravity or magnetics). This may represent a composition of lines (survey, line composed of segments) or a line composed of points (line). There is no predefined intent on composition except for the identity of the components. For example, a survey can be composed of multiple lines if that is the most accurate description of the acquisition, or a line can be uniquely identified without association with a survey. A geometry set (e.g., a survey) can be may be composed of both seismic and potential field geometries.*) acquisition_area : OPTIONAL earth_surface_feature (*<DESC>Defines the area which identifies this geometry set. If the area does not identify the geometry set then a topological relationship should be used to associate the geometry set with the area.*) (*<VERB>occur within*); part_of : OPTIONAL geophysical_geometry_set (*<DESC>Defines the geometry set of which this geometry set is a part.*) (*<VERB>be part of*); INVERSE composition : SET[0:?] OF geophysical_geometry_set FOR part_of (*<DESC>Defines the geometry sets which compose this geometry set.*) (*<VERB>be composed of*); data_set : SET[0:?] OF geophysical_data_set FOR geometry_set (*<DESC>The versions of data associated with this geometry. This may be raw recorded data, processed data or ancillary data such as velocities.*) (*<VERB>be represented by*); data_grid_use : SET[0:?] OF geophysical_data_set FOR utilized_uid_grid (*<DESC>Defines the set of data sets which use a "uid" grid defined by this geometry set.*) (*<VERB>have grid utilized by*); offline_data : SET[0:?] OF geophysical_offline_data FOR geometry_set (*<DESC>Defines the information related to this geometry which has been stored offline. This may refer to documents such as recorders logs or it may refer to field data on tape.*) (*<VERB>be characterized by*); processing_grid : SET[0:?] OF geophysical_processing_grid FOR geometry_set (*<DESC>Defines the processing grids which represent this acquisition geometry.*) (*<VERB>be represented by*); derived_from : SET[0:?] OF geophysical_geometry_derivation FOR used_by (*<DESC>Defines the geometry that was used to derive this geometry. For example, a "2.5D survey" is derived from a set of "2D lines". Note that the new geometry set may not define any new acquisition geometry but rather the data associated with it may reference the original acquisition geometry and a new processing geometry.*) (*<VERB>be derived from*); used_by : SET[0:?] OF geophysical_geometry_derivation FOR derived_from (*<DESC>Defines the geometry sets which were derived from this set.*) (*<VERB>be used by*); utilized_facility : SET[0:?] OF geophysical_facility_uid_usage FOR geometry_set (*<DESC>Defines the set of facilities which are utilized by this geometry set.*) (*<VERB>utilize*); acquisition_point : SET[0:?] OF geophysical_acquisition_point FOR geometry_set (*<DESC>Specifies the points which represent nodes in acquisition arrays (e.g., station uid).*) (*<VERB>have a node referenced by*); geometry_segment : SET[0:?] OF geophysical_geometry_segment FOR geometry_set (*<DESC>Defines the set of geometry segments associated with this geometry set.*) (*<VERB>be represented by*); identified_facilities : SET[0:?] OF geophysical_facility FOR identifying_context (*<DESC>The facilities whose existence is defined within the context of this geometry set.*) (*<VERB>provide the scope of existence for*); uid_definition : SET[0:?] OF seismic_geometry_uid_usage FOR uid_usage (*<DESC>Defines the set of geometries which have implied usage by this geometry set. The value of attribute seismic geometry set uid in the referenced geometry sets must be used in at least attribute of this instance. In seismic geometry set the attributes are: channel connection, receiver station or source station. In potential field geometry set the attribute is measurement seismic station.*) (*<VERB>have uid defined *); END_ENTITY; ALTER ENTITY seismic_geometry_derivation AS geophysical_geometry_derivation; ALTER derived_from ALTER TYPE AS geophysical_geometry_set; ALTER used_by ALTER TYPE AS geophysical_geometry_set; END_ENTITY; ALTER ENTITY seismic_facility_uid_usage AS geophysical_facility_uid_usage; (*<DESC>This association asserts that an attribute within a geometry set contains an implied relationship to a facility.*) ALTER seismic_facility AS facility (*<DESC>This is a facility which has implied usage by the geometry set. The value of attribute facility_uid in the referenced facility may be used within an attribute value in the geometry set*); ALTER seismic_geometry_set AS geometry_set ALTER TYPE AS geophysical_geometry_set; END_ENTITY; ADD ENTITY potential_field_geometry_set SUBTYPE OF (geophysical_geometry_set); (*<DESC>Identifies geometry associated with potential field acquisition (e.g., gravity or magnetics).*) line_index : OPTIONAL ndt_real4 (*<DESC>Asserts that all measurement uids or station uids have the same line index associated with them within this geometry set. This is the index which varies in the "crossline" direction. If this attribute is specified, then measurement index or station index should not specify a value for "acquisition line index".*); measurement_time_origin : OPTIONAL ndt_date_tod (*<DESC>The time reference for times in measurement time.*); measurement_uid : OPTIONAL grid_1d_equal (*<DESC>Defines a grid and a "measurement uid" value at each node of that grid. Each node represents a point where a measurement was taken. There is no semantic meaning implied by the "uid" value other than uniqueness within the context of the grid. The same grid can be used by many other attributes which assign information to a measurement.*) (*<VERB>have measurement uid defined by*); measurement_time : OPTIONAL ndt_time_array (*<DESC>Defines the time of each measurement relative to measurement time origin. The grid used must match the grid defined by measurement uid.*); measurement_index : OPTIONAL ndt_acquisition_index_array (*<DESC>Defines "acquisition line index" and/or "acquisition point index" values at each node defined by measurement uid. The values imply a relative spatial ordering of the measurements within the acquisition survey (i.e., 1 is next to 2, 2 is next to 3, etc.).*); measurement_name : OPTIONAL ndt_name_array (*<DESC>The name associated with measurement. The grid used must match the grid used by measurement uid. The names should be unique within the array. *); measurement_seismic_station : OPTIONAL ndt_uid_array (*<DESC>Defines the "seismic station uid" value at each node of the grid defined by measurement uid. This asserts the "nearest" seismic station to each node. A pair of values including "seismic geometry set uid" may be defined when "seismic station uid" values from many seismic geometry sets are specified.*); station_uid : OPTIONAL grid_1d_equal (*<DESC>Defines a 1D grid which specified a "potential field station uid" value at each node. Each node represents a surveyed station (e.g., land). There is no semantic meaning implied by the "uid" value.*) (*<VERB>have station uid defined by*); station_name : OPTIONAL ndt_name_array (*<DESC>The name associated with each potential field station. The grid used must match the grid used by station uid. The names should be unique within the array.*); station_index : OPTIONAL ndt_acquisition_index_array (*<DESC>Defines "acquisition line index" and/or "acquisition point index" values at each node defined by attribute station uid. The values imply a relative spatial ordering of the stations within the acquisition survey (i.e., 1 is next to 2, 2 is next to 3, etc.).*); measurement_station : OPTIONAL ndt_uid_array (*<DESC>Defines a "potential field station uid" value at each measurement. The grid used must match the grid used by attribute measurement uid. This asserts the potential field station at which each measurement occurred. If this attribute is populated, then each measurement must occur at one and only one station but each station may have zero, one or many measurements occur there.*); measurement_sensor_facility : OPTIONAL ndt_uid_array (*<DESC>Captures the sensor facility used for each measurement by specifying a "user unique identifier" value at each node of the grid defined by attribute measurement uid. The grid used must match the grid defined by attribute measurement uid. Each "user unique identifier" value must match the value of attribute sensor facility uid in one of the sensor facilities referenced in attribute utilized facility. This enables the use of different or multiple sensors within the acquisition of a geometry set.*); INVERSE measurement_vertical_location : SET[0:?] OF pty_vertical_location_array FOR potential_field_measurement_definition (*<DESC>Defines the vertical location of each measurement. The grid used must match the grid defined by measurement uid.*) (*<VERB>have a property of*); measurement_location : SET[0:?] OF pty_location_array FOR potential_field_measurement_definition (*<DESC>Defines the horizontal 2D location of each node in the array specified by measurement uid. This will be used when the acquisition grid is one dimensional.*) (*<VERB>have a property of*); measurement_water_depth : SET[0:?] OF pty_water_depth_array FOR potential_field_geometry_set (*<DESC>Defines a water depth at each node of the grid specified by measurement uid*) (*<VERB>have a property of*); geometry_summary : SET[0:?] OF pty_potential_field_geometry_summary FOR potential_field_geometry_set (*<DESC>Defines the nominal summaries of this geometry set.*) (*<VERB>have a property of*); measurement_inflection : SET[0:?] OF pty_logical_array FOR potential_field_measurement_inflection (*<DESC>Defines a logical flag for each measurement indicating whether the measurement point is an inflection point (=true) or not (=false) or of unknown status. The grid used must match the grid defined by attribute measurement uid.*) (*<VERB>have a property of*); station_inflection : SET[0:?] OF pty_logical_array FOR potential_field_station_inflection (*<DESC>Defines a logical flag for each station indicating whether the station is an inflection point (=true) or not (=false) or of unknown status. The grid used must match the grid defined by attribute station uid.*) (*<VERB>have a property of*); station_vertical_location : SET[0:?] OF pty_vertical_location_array FOR potential_field_station_definition (*<DESC>Defines the vertical location of the surface at each potential field station. The grid used must match the grid defined by attribute station uid.*) (*<VERB>have a property of*); station_location : pty_location_array FOR potential_field_station_definition (*<DESC>Defines the location of each node in the array specified by attribute station uid. *) (*<VERB>have a property of*); UNIQUE si: identifier, acquisition_area, part_of; WHERE val1 : (exists(measurement_uid) and (exists(measurement_name) or exists(measurement_time) or exists(measurement_index) or exists(measurement_water_depth) or exists(measurement_location) or exists(measurement_inflection) or exists(measurement_station) or exists(measurement_sensor_facility) or exists(measurement_vertical_location) or exists(measurement_seismic_station) ) ) or not (exists(measurement_name) or exists(measurement_time) or exists(measurement_index) or exists(measurement_water_depth) or exists(measurement_location) or exists(measurement_inflection) or exists(measurement_station) or exists(measurement_sensor_facility) or exists(measurement_vertical_location) or exists(measurement_seismic_station) ) (*<DESC>For each instance, MEASUREMENT UID must be defined if any of the following are defined: MEASUREMENT TIME, MEASUREMENT INDEX, MEASUREMENT NAME, MEASUREMENT WATER DEPTH, MEASUREMENT LOCATION, MEASUREMENT VERTICAL LOCATION, MEASUREMENT SEISMIC STATION, MEASUREMENT INFLECTION, MEASUREMENT FACILITY, MEASUREMENT SENSOR FACILITY.*) (*<RULETYPE>VAL*); val2 : (exists(measurement_seismic_station) and exists(seismic_geometry_set)) or not (exists(measurement_seismic_station) or exists(seismic_geometry_set)) (*<DESC>For each instance, if either SEISMIC GEOMETRY SET or MEASUREMENT SEISMIC STATION is defined then both must be defined.*) (*<RULETYPE>VAL*); val3 : (exists(measurement_time_origin) and (exists(measurement_time)) ) or not (exists(measurement_time)) (*<DESC>For each instance, if MEASUREMENT TIME is defined then MEASUREMENT TIME ORIGIN must be defined*) (*<RULETYPE>VAL*); val4 : (exists(data_grid_use) and (exists(measurement_uid) or exists(station_uid)) ) or not (exists(data_grid_use)) (*<DESC>For each instance, if DATA GRID USE is defined then either MEASUREMENT UID or STATION UID must be defined.*) (*<RULETYPE>VAL*); val5 : (not exists(measurement_station)) or (exists(measurement_station) and not (exists(measurement_location) or (exists(measurement_vertical_location) or (exists(measurement_index) or (exists(measurement_inflection) or exists(measurement_water_depth) )))) ) (*<DESC>For each instance, if MEASUREMENT STATION is specified then MEASUREMENT LOCATION, MEASUREMENT VERTICAL LOCATION, MEASUREMENT INDEX, MEASUREMENT INFLECTION and MEASUREMENT WATER DEPTH cannot be specified.*) (*<RULETYPE>VAL*); val6 : (exists(station_uid) and (exists(station_name) or exists(station_index) or exists(station_location) or exists(station_inflection) or exists(station_vertical_location) ) ) or not (exists(station_name) or exists(station_index) or exists(station_location) or exists(station_inflection) or exists(station_vertical_location) ) (*<DESC>For each instance, STATION UID must be defined if any of the following are defined: STATION INDEX, STATION NAME, STATION LOCATION, STATION VERTICAL LOCATION, STATION INFLECTION.*) (*<RULETYPE>VAL*); END_ENTITY; ALTER ENTITY seismic_geometry_set DROP SUBTYPE OF (earth_feature); (*<DESC>Defines geometry associated with seismic acquisition. The acquisition may have occurred in an area or in a wellbore. A geometry set may reference information from other geometry sets. For example, the channel setup may be defined for a marine survey and then be used by each swath in the survey.*) DROP geophysical_acquisition_area (*<CHANGE>Moved to supertype.*); DROP part_of (*<CHANGE>Moved to supertype.*); INVERSE DROP composition (*<CHANGE>Moved to supertype.*); DROP data_grid_use (*<CHANGE>Moved to supertype.*); DROP seismic_offline_data (*<CHANGE>Moved to supertype as offline_data.*); DROP binset_grid (*<CHANGE>Moved to supertype as processing_grid.*); DROP derived_from (*<CHANGE>Moved to supertype.*); DROP used_by (*<CHANGE>Moved to supertype.*); DROP uid_definition (*<CHANGE>Moved to supertype.*); DROP seismic_acquisition_vertex (*<CHANGE>Moved to supertype as acquisition_point.*); DROP seismic_data_set (*<CHANGE>Moved to supertype as data_set.*); DROP seismic_line_segment (*<CHANGE>Moved to supertype as geometry_segment.*); DROP identified_facilities (*<CHANGE>Moved to supertype.*); UNIQUE ALTER si DROP geophysical_acquisition_area ADD acquisition_area LAST; END_ENTITY; ALTER ENTITY seismic_geometry_uid_usage; (*<DESC>This association asserts that an attribute within a geophysical geometry set contains an implied relationship to an attribute value within a seismic geometry set.*) ALTER uid_usage ALTER TYPE AS geophysical_geometry_set; END_ENTITY; (*<REMARK>========================= DATA SET ==================*) ADD ENTITY geophysical_data_set ABSTRACT SUPERTYPE OF (ONEOF(seismic_data_set, potential_field_data_set)) SUBTYPE OF (business_object); (*<DESC>Identifies the collection of geophysical data that exists at a particular state of the processing. Processing that changes the data will normally create a new data set.*) identifier : ndt_identifier (*<DESC>The identifying name of the data set.*); description : OPTIONAL ndt_comment (*<DESC>Comment about this data set.*); naming_system : OPTIONAL naming_system (*<DESC>Defines the naming system associated with the name of this set. This might refer to the naming system of a corporation or to a personal naming system. This will prevent name conflicts between companies, sites and/or persons.*) (*<VERB>be named according to*); derived_from : OPTIONAL geophysical_data_set (*<DESC>This defines the data set from which this data set was derived. This excludes secondary data (e.g., velocities, statics) which influenced the algorithm that modified the data.*) (*<VERB>be derived from*); geometry_set : geophysical_geometry_set (*<DESC>The acquisition geometry that this data represents.*) (*<VERB>represent*); utilized_uid_grid : OPTIONAL geophysical_geometry_set (*<DESC>Defines the geometry set which specified the uid grid used in the data.*) (*<VERB>utilize grid from*); utilized_processing_grid : OPTIONAL geophysical_processing_grid (*<DESC>Defines the processing grid used for the grid of the data.*) (*<VERB>utilize grid from*); data_value : OPTIONAL ndt_property_element (*<DESC>The data values associated with the grid.*); INVERSE processing_indicator : SET[0:?] OF geophysical_processing_indicator FOR data_set (*<DESC>This defines the list of "high level" indicators of the processing steps which have occurred in the processing history of this set of data. The ordering attribute allows the same type of processing to occur more than once . In general, this list should match the processing of the "parent" data except that new steps may be added.*) (*<VERB>have processing steps of*); applied_data : SET[0:?] OF geophysical_data_association FOR applied_to (*<DESC>Defines the sets of data which have been applied directly to this data set.*) (*<VERB>have had applied*); applied_to : SET[0:?] OF geophysical_data_association FOR applied_data (*<DESC>This defines the data sets that this data has been applied to. This should not also point to the children of the data set unless this data was also directly applied to the child.*) (*<VERB>have been applied to*); derived_data : SET[0:?] OF geophysical_data_set FOR derived_from (*<DESC>This defines the set of data sets that are created as a direct result of modifying or analyzing this data set. This does not include children-of-children but does include secondary data such as residual statics or velocities which were derived from the parent.*) (*<VERB>be source of*); offline_data : SET[0:?] OF geophysical_offline_data FOR data_set (*<DESC>Defines the offline data which is represented by this data set.*) (*<VERB>may be characterized by*); pty_geometry_1d_edge : SET[0:?] OF pty_geometry_1d_edge FOR geophysical_data_set (*<DESC>Defines the spatial location of the nodes on the grid utilized by attribute data value. The grid used must be the same as the grid used by data value. If the geometry is defined using processing index values then the spatial locations may be found on the utilized processing grid. If the geometry is defined using acquisition index values then the spatial locations may be found on the utilized measurement grid.*) (*<VERB>have a property of*); pty_geometry_2d_edge : SET[0:?] OF pty_geometry_2d_edge FOR geophysical_data_set (*<DESC>May have a property of pty geometry 2d edge. Defines the spatial location of the nodes on the grid utilized by attribute data value. The grid used must be the same as the grid used by data value.*) (*<VERB>have a property of*); pty_geometry_2d_face : SET[0:?] OF pty_geometry_2d_face FOR geophysical_data_set (*<DESC>May have a property of pty geometry 2d face. Defines the spatial location of the nodes on the grid utilized by attribute data value. The grid used must be the same as the grid used by data value. If the geometry is defined using processing index values then the spatial locations may be found on the utilized processing grid. If the geometry is defined using acquisition index values then the spatial locations may be found on the utilized measurement grid.*) (*<VERB>have a property of*); WHERE dri1 : NOT (derived_from IN derived_data) (*<DESC>The entity instance defined by the derived_from data set must not be included in the set defined by the derived_data data set. An entity instance must not be derived from itself.*) (*<RULETYPE>DRI*); END_ENTITY; ALTER ENTITY seismic_data_association AS geophysical_data_association; (*<DESC>This association asserts that one data set has been applied to another data set.*) ALTER applied_data ALTER TYPE AS geophysical_data_set; ALTER applied_to ALTER TYPE AS geophysical_data_set; END_ENTITY; ALTER ENTITY seismic_processing_indicator AS geophysical_processing_indicator; (*<DESC>This association asserts that a data set had a type of processing applied to in a particular relative order. The same type can be applied at different points in the processing.*) ALTER seismic_data_set AS data_set ALTER TYPE AS geophysical_data_set; END_ENTITY; ALTER ENTITY ref_processing_indicator; INVERSE ALTER seismic_data_set AS geophysical_data_set; END_ENTITY; ALTER ENTITY seismic_data_set DROP SUBTYPE OF (process_data); DROP acquisition_grid (*<CHANGE>Moved to supertype as utilized_uid_grid.*); DROP binset (*<CHANGE>Moved to supertype as utilized_processing_grid.*); DROP data_value (*<CHANGE>Moved to supertype.*); DROP derived_from (*<CHANGE>Moved to supertype.*); DROP description (*<CHANGE>Moved to supertype.*); DROP identifier (*<CHANGE>Moved to supertype.*); DROP naming_system (*<CHANGE>Moved to supertype.*); DROP seismic_geometry_set (*<CHANGE>Moved to supertype as geometry_set.*); ALTER seismic_line_segment AS geometry_segment (*<DESC>The geometry segment represented by the data in this set.*); INVERSE DROP derived_data (*<CHANGE>Moved to supertype.*); DROP applied_data (*<CHANGE>Moved to supertype.*); DROP applied_to (*<CHANGE>Moved to supertype.*); DROP pty_geometry_2d_face (*<CHANGE>Moved to supertype.*); DROP seismic_offline_data (*<CHANGE>Moved to supertype as offline_data.*); DROP pty_geometry_1d_edge (*<CHANGE>Moved to supertype.*); DROP ref_processing_indicator (*<CHANGE>Moved to supertype as processing_indicator.*); DROP seismic_display (*<CHANGE>Moved to supertype as display.*); UNIQUE ALTER si DROP seismic_geometry_set ADD geometry_set LAST; END_ENTITY; ALTER ENTITY naming_system; INVERSE ALTER seismic_data_set AS geophysical_data_set ALTER TYPE AS geophysical_data_set; END_ENTITY; ADD ENTITY potential_field_data_set SUBTYPE OF (geophysical_data_set); (*<DESC>Identifies the collection of potential field data that exists at a particular state of the processing. Processing that changes the data will normally create a new data set.*) UNIQUE si: identifier, naming_system, geometry_set; END_ENTITY; (*<REMARK>========================= PROCESSING GRID ==================*) ALTER ENTITY binset AS geophysical_processing_grid; (*<DESC>Defines a grid which is regular in a geophysical index coordinate system but may be irregular in a spatial coordinate system.*) ADD geometry_set : geophysical_geometry_set (*<DESC>Defines the primary acquisition geometry which this grid represents. This will typically point to the top of the composition hierarchy.*) (*<VERB>represent*); DROP binset_uid (*<CHANGE>Moved to subtype.*); ALTER grid_structured AS node_index (*<DESC>Defines index values at each node of a 1D or a 2D grid. The axis values will be geophysical index values.*) (*<VERB>have grid defined by*); INVERSE DROP pty_water_depth_array (*<CHANGE>Moved to the "non-variant" subtypes. Not needed by the grid variant since the information is the same.*); DROP pty_nominal_fold (*<CHANGE>Moved to Binset_grid.*); DROP pty_trace_count (*<CHANGE>Moved to Binset_grid.*); DROP bin_index_use (*<CHANGE>Moved to Binset_grid. Not needed by the grid variant since the information is the same.*); ALTER seismic_data_set AS utilizing_data_set ALTER TYPE AS geophysical_data_set ALTER FOR AS utilized_processing_grid (*<DESC>Defines the data which utilizes this grid, either directly or as part of another grid.*) (*<VERB>have grid utilized by*); ADD processing_point : SET[0:?] OF geophysical_processing_point FOR processing_grid (*<DESC>Specifies the points which represent nodes in this processing grid.*) (*<VERB>have a node referenced by*); END_ENTITY; ALTER ENTITY grid_structured; INVERSE ALTER binset AS geophysical_processing_grid (*<DESC>The processing grids whose grid indexing geometry is defined by this grid.*) (*<VERB>define the geometry of*); END_ENTITY; ADD ENTITY potential_field_processing_grid SUBTYPE OF (binset) (*<REMARK>Note that binset has been renamed.*); (*<DESC>Defines a grid which is specified using equal increments of "grid point index" and/or "grid line index". The grid is by definition regular in the index coordinate system but may be irregular in a spatial coordinate system.*) node_name : OPTIONAL ndt_name_array (*<DESC>Defines a name at each node of the grid defined by attribute node index. This represents the annotation values to be associated with each node if the "measurement" information is not used for annotation.*); SELF\geophysical_processing_grid.node_index : grid_structured (*<DESC>Defines index values at each node of a 1D or a 2D grid. The axis values will be "grid line index" and/or "grid point index".*) (*<VERB>have grid defined by*); INVERSE pty_water_depth_array : SET[0:?] OF pty_water_depth_array FOR potential_field_processing_grid (*<DESC>Defines the water depth at each node of the grid utilized by node index. This must use the same grid as is used by attribute node_index.*) (*<VERB>have a property of*); UNIQUE si: identifier, geometry_set; END_ENTITY; ALTER ENTITY binset_grid; DROP seismic_geometry_set (*<CHANGE>Moved to supertype as geometry_set.*); ADD binset_uid : OPTIONAL ndt_user_unique_identifier (*<DESC>A user assigned unique numeric identifier of the binset. There is no semantic meaning implied by the value other than uniqueness within usages by other entities. This value can be used within "arrays" of information in other entities as an implied relationship to this binset.*); ADD SELF\geophysical_processing_grid.node_index : grid_structured (*<DESC>Defines index values at each node of a 1D or a 2D grid. The axis values will be "bin line index" and/or "bin point index".*) (*<VERB>have grid defined by*); INVERSE ADD pty_water_depth_array : SET[0:?] OF pty_water_depth_array FOR binset_grid (*<DESC>Defines the water depth at each node of the grid utilized by node index. This must use the same grid as is used by attribute node_index.*) (*<VERB>have a property of*); ADD pty_nominal_fold : SET [0:?] OF pty_nominal_fold FOR binset (*<VERB>have a property of*); ADD pty_trace_count : SET [0:?] OF pty_trace_count FOR binset (*<DESC>Defines the maximum number of traces assigned to any individual bin node.*) (*<VERB>have a property of*); ADD bin_index_use : SET [0:?] OF header_bin_index_utilization FOR binset (*<DESC>Defines the headers which use "bin point index" and/or "bin line index" values from this binset.*) (*<VERB>have bin index used by*); UNIQUE ALTER si DROP seismic_geometry_set ADD geometry_set LAST; END_ENTITY; ALTER ENTITY header_bin_index_utilization; ALTER binset ALTER TYPE AS binset_grid; END_ENTITY; ALTER ENTITY binset_grid_variant; ADD binset_uid : OPTIONAL ndt_user_unique_identifier (*<DESC>A user assigned unique numeric identifier of the binset. There is no semantic meaning implied by the value other than uniqueness within usages by other entities. This value can be used within "arrays" of information in other entities as an implied relationship to this binset.*); ADD SELF\geophysical_processing_grid.node_index : grid_structured (*<DESC>Defines index values at each node of a 1D or a 2D grid. The axis values will be "bin line index" and/or "bin point index".*) (*<VERB>have grid defined by*); INVERSE ADD bin_index_use : SET[0:?] OF header_bin_index_variant_utilization FOR binset_variant (*<DESC>Defines the headers which use "bin point index" and/or "bin line index" values from this binset*) (*<VERB>have bin index used by*); END_ENTITY; ADD ENTITY header_bin_index_variant_utilization SUBTYPE OF (association); (*<DESC>This association asserts that the bin index values defined by a binset variant were utilized in a seismic header.*) binset_variant : binset_grid_variant (*<DESC>This is a binset which defined "bin point index" and/or "bin line index" values used in the seismic header.*) (*<VERB>use bin index definition from*); seismic_header : seismic_header (*<DESC>This is a header which uses "bin point index" and/or "bin line index" values from the binset.*) (*<VERB>have bin index used by*); UNIQUE si: binset_variant, seismic_header; END_ENTITY; ALTER ENTITY seismic_header; INVERSE ADD bin_index_variant_definition : SET [0:?] OF header_bin_index_variant_utilization FOR seismic_header (*<DESC>Defines the binset variants which defined the "bin point index" and/or "bin line index" values used in seismic data header. If only one is defined then all values are assumed to apply to the definition in the same binset. If more than one is defined then a "binset uid" value must be defined in the header to qualify each index value/pair. Each "binset uid" value must match the value of attribute binset uid in one of the referenced binsets.*) (*<VERB>use bin index definition in*); ALTER bin_index_definition (*<VERB>use bin index definition in*); END_ENTITY; (*<REMARK>========================= PTY ==================*) ALTER ENTITY pty_geometry_1d_edge; ALTER seismic_data_set AS geophysical_data_set ALTER TYPE AS geophysical_data_set; END_ENTITY; ALTER ENTITY pty_geometry_2d_edge; ADD geophysical_data_set : OPTIONAL geophysical_data_set (*<VERB>be a property of*); UNIQUE ALTER si ADD geophysical_data_set LAST; END_ENTITY; ALTER ENTITY pty_geometry_2d_face; ALTER seismic_data_set AS geophysical_data_set ALTER TYPE AS geophysical_data_set; END_ENTITY; ALTER ENTITY pty_location_array; ADD potential_field_measurement_definition : OPTIONAL potential_field_geometry_set (*<DESC>Data value defines the location of each measurement. The grid must be the same as was used by attribute measurement uid in potential field geometry set.*) (*<VERB>be a measurement property of*); ADD potential_field_station_definition : OPTIONAL potential_field_geometry_set (*<DESC>Data value defines the location of each station. The grid must be the same as was used by attribute station uid in potential field geometry set.*) (*<VERB>be a station property of*); UNIQUE ALTER si ADD potential_field_measurement_definition, potential_field_station_definition BEFORE activity; END_ENTITY; ALTER ENTITY pty_logical_array; ADD potential_field_measurement_inflection : OPTIONAL potential_field_geometry_set (*<DESC>Data value defines an "inflection point" flag for each measurement. The grid used by data value must be the same as was used by attribute measurement uid in the associated potential field geometry set.*) (*<VERB>be a measurement inflection property of*); ADD potential_field_station_inflection : OPTIONAL potential_field_geometry_set (*<DESC>Data value defines an "inflection point" flag for each station. The grid used by data value must be the same as was used by attribute station uid in the associated potential field geometry set.*) (*<VERB>be a station inflection property of*); UNIQUE ALTER si ADD potential_field_measurement_inflection, potential_field_station_inflection BEFORE activity; END_ENTITY; ADD ENTITY pty_potential_field_geometry_summary SUBTYPE OF (property); (*<DESC>Summarizes the acquisition geometry associated with the potential field geometry set.*) potential_field_geometry_set : potential_field_geometry_set (*<VERB>be a property of*); dip_line_count : OPTIONAL ndt_int4 (*<DESC>The number of dip lines.*); dip_line_spacing : OPTIONAL ndt_length (*<DESC>The nominal distance between dip lines.*); dip_line_point_count : OPTIONAL ndt_int4 (*<DESC>The maximum number of points on a dip line.*); dip_line_point_spacing : OPTIONAL ndt_length (*<DESC>The nominal distance between points on a dip line.*); tie_line_count : OPTIONAL ndt_int4 (*<DESC>The number of tie lines.*); tie_line_spacing : OPTIONAL ndt_length (*<DESC>The nominal distance between tie lines.*); tie_line_point_count : OPTIONAL ndt_int4 (*<DESC>The maximum number of points on a tie line.*); tie_line_point_spacing : OPTIONAL ndt_length (*<DESC>The nominal distance between points on a tie line.*); total_length : OPTIONAL ndt_length (*<DESC>The cumulative length of all lines in the geometry set.*); total_area : OPTIONAL ndt_area (*<DESC>The total surface area of the geometry set.*); nominal_sensor_elevation : OPTIONAL ndt_location_1d (*<DESC>The nominal elevation of the sensor.*); first_point : OPTIONAL ndt_name (*<DESC>The name of the first point on the line. *); last_point : OPTIONAL ndt_name (*<DESC>The name of the last point on the line.*); UNIQUE si: potential_field_geometry_set, activity; END_ENTITY; ALTER ENTITY pty_sea_state; ADD potential_field_platform : OPTIONAL potential_field_platform (*<VERB>be a property of*); UNIQUE ALTER si ADD potential_field_platform LAST; END_ENTITY; ALTER ENTITY pty_vertical_location_array; ADD potential_field_measurement_definition : OPTIONAL potential_field_geometry_set (*<DESC>Data value defines the vertical location of each measurement. The grid must be the same as was used by attribute measurement uid in potential field geometry set.*) (*<VERB>be a property of*); ADD potential_field_station_definition : OPTIONAL potential_field_geometry_set (*<DESC>Data value defines the vertical location of each station. The grid must be the same as was used by attribute measurement uid in potential field geometry set.*) (*<VERB>be a station property of*); UNIQUE ALTER si ADD potential_field_measurement_definition, potential_field_station_definition BEFORE activity; END_ENTITY; ALTER ENTITY pty_water_depth_array; ADD potential_field_geometry_set : OPTIONAL potential_field_geometry_set (*<VERB>be a property of*); ADD potential_field_processing_grid : OPTIONAL potential_field_processing_grid (*<DESC>The grid used by data value must be the same as was defined by attribute node index in the associated binset.*) (*<VERB>be a property of*); ALTER binset AS binset_grid ALTER TYPE AS binset_grid (*<DESC>The grid used by data value must be the same as was defined by attribute node index in the associated binset.*); UNIQUE ALTER si ADD potential_field_geometry_set, potential_field_processing_grid LAST; END_ENTITY; ALTER ENTITY pty_wind_state; ADD potential_field_platform : OPTIONAL potential_field_platform (*<VERB>be a property of*); UNIQUE ALTER si ADD potential_field_platform LAST; END_ENTITY; ALTER ENTITY grid_1d_equal; INVERSE ADD measurement_uid_defined_for : SET[0:?] OF potential_field_geometry_set FOR measurement_uid (*<DESC>These are the geometry sets which use this grid to define a set of measurement uid values.*) (*<VERB>define measurement uid for*); ADD station_uid_defined_for_pf : SET[0:?] OF potential_field_geometry_set FOR station_uid (*<DESC>These are the geometry sets which use this grid to define a set of station uid values.*) (*<VERB>define station uid for*); END_ENTITY; END_CHANGE;