[Search.Phase 2] Implement search of rock samples by formation of the wellbore
Context
The user story covers the search capabilities, which include a mix of data sources: OSDU catalog(WKE) and RAFS bulk data.
The functionality will allow to manage the following use cases:
I need a rock sample analysis data from the specified basin with a TOC value > 2%
1 - Filter SampleID by basin id
2 - Check Sample.SampleType whether Rock/Fluid
3 - Filter Samples on having analysis with requested attribute
4 - Filter by value range for a specified attributeExpected output:
- Bulk data (parquet or JSON) for the
/{analysis_type}/search/data
endpoint- SampleAnalysis WPC ids (JSON) for the
/{analysis_type}/search
endpoint
Give me all compositional analysis done in Well ABC
1 - Check all Samples and retrieve the WellboreID from them
2 - From all wellbores retrieve the WellID
3 - Search for a specified Well Name
4 - Retrieve corresponding samplesExpected output:
- Bulk data (parquet or JSON) for the
/{analysis_type}/search/data
endpoint- SampleAnalysis WPC ids (JSON) for the
/{analysis_type}/search
endpoint
Search for porosity values measured with a specified tool or method
Expected output:
- Bulk data (parquet or JSON) for the
/{analysis_type}/search/data
endpoint- SampleAnalysis WPC ids (JSON) for the
/{analysis_type}/search
endpoint
Note: only if a Wellbore DDMS connection is not required
1 - Find WellboreMarkerSets that contains the specified formation name
2 - Check the top/bottom depth of the identified formation
3 - Retrieve the WellboreID
4 - Check the depth of all Samples with reference to identified WellboreID in RAFS DDMS
5 - Cross-check the formation top/bottom depth against the sample depthExpected output:
- Bulk data (parquet or JSON) for the
/{analysis_type}/search/data
endpoint- SampleAnalysis WPC ids (JSON) for the
/{analysis_type}/search
endpoint
Constraints
- Search within one type of analysis per request:
Due to schema versioning, some overlay (overwriting) of the values can occur for the properties from different content schemas but with the same name.
- Search for only one content schema version
Due to the absence of a final decision about backward compatibility, the service will support requests for only one schema version.
- Search by only a limited set of WKE properties, e.g., Basin, Field, WellID, WellName, WellboreName...
To ensure the service's performance, all WKE-related entities must be indexed in the cache. Each property requires its specific logic for indexing.
- There is no interconnection with other DDMSs.