Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O DDMS de Amostras de rocha e fluido (RAFS) permite gerenciar armazenamento, recuperação e associação de dados, análises e relatórios mestre de amostras de rocha e fluido. Este tutorial mostra um fluxo de trabalho passo a passo usando cURL para criar e interagir com essas entidades em sua instância do Azure Data Manager for Energy.
Neste tutorial, você aprenderá a usar uma API DDMS do RAFS para:
- Criar uma etiqueta legal
- Criar hierarquia de dados mestre
- Criar registros de dados mestre RAFS
- Criar relatório de análise de exemplo
- Criar análise de exemplo
Este tutorial mostra interações comuns end-to-end baseadas em cURL com endpoints RAFS DDMS API.
Pré-requisitos
- Uma assinatura do Azure
- Instância do Azure Data Manager for Energy (consulte [quickstart]](quickstart-create-microsoft-energy-data-services-instance.md))
- cURL instalado localmente
- Dados de referência padrão do OSDU carregados na sua instância
- Token de acesso válido (Consulte Como gerar token de autenticação)
Obtenha os detalhes da instância do Azure Data Manager for Energy
Para este tutorial, você precisa dos seguintes parâmetros:
| Parâmetro | Valor a utilizar | Example | Onde encontrar este valor |
|---|---|---|---|
DNS |
URI da instância do Azure Data Manager for Energy | <instance>.energy.azure.com |
Página de visão geral da instância do Azure Data Manager for Energy |
DATA_PARTITION_ID |
Identificador de partição de dados | <data-partition-id> |
Seção Partição de Dados na instância do Azure Data Manager for Energy |
ACCESS_TOKEN |
Token de acesso OAuth 2.0 (token Bearer) | 0.ATcA01-XWHdJ0ES-qDevC6r........... |
Gerar usando o guia Como gerar token de autenticação |
LEGAL_TAG |
Nome de uma nova etiqueta legal | opendes-demo-legal-tag |
Você define (veja abaixo) |
Siga o guia Gerenciar usuários para adicionar direitos apropriados para o usuário que está executando este tutorial.
Crie uma etiqueta legal
As etiquetas legais são essenciais para fins de conformidade e são utilizadas em registos subsequentes.
curl --request POST \
--url {{DNS}}/api/legal/v1/legaltags \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '{
"name": "{{LEGAL_TAG}}",
"description": "RAFS DDMS Demo legal tag",
"properties": {
"countryOfOrigin": [
"US"
],
"contractId": "A1234",
"expirationDate": "2099-01-25",
"originator": "Contoso",
"dataType": "Public Domain Data",
"securityClassification": "Public",
"personalData": "No Personal Data",
"exportClassification": "EAR99"
}
}'
Exemplo de resposta:
{
"name": "opendes-osdu-rafs-ddms-demo-legal-ta",
"description": "RAFS DDMS Demo legal tag",
"properties": {
"countryOfOrigin": ["US"],
"contractId": "A1234",
"expirationDate": "2099-01-25",
"originator": "Contoso",
"dataType": "Public Domain Data",
"securityClassification": "Public",
"personalData": "No Personal Data",
"exportClassification": "EAR99"
}
}
2. Criar hierarquia de dados mestre
As entidades devem ser criadas nesta sequência: Organização → Campo → Poço → Wellbore. Todas as solicitações usam o ponto de extremidade do Serviço de Armazenamento: /api/storage/v2/records.
2.1 Organização
Crie um registro da organização usando o seguinte comando cURL de exemplo.
curl --request PUT \
--url {{DNS}}/api/storage/v2/records \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--Organisation:CoreLabs-IN",
"kind": "{{AUTHORITY}}:{{SCHEMA_SOURCE}}:master-data--Organisation:1.2.0",
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"FR",
"US"
],
"status": "compliant"
},
"data": {
"OrganisationID": "CoreLabs India Identifier",
"OrganisationName": "CoreLabs India",
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"TerminationDateTime": "2030-02-13T09:13:15.55Z"
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIds": [
"opendes:master-data--Organisation:CoreLabs-IN"
],
"skippedRecordIds": [],
"recordIdVersions": [
"opendes:master-data--Organisation:CoreLabs-IN:1758005682610981"
]
}
2.2 Campo
curl --request PUT \
--url {{DNS}}/api/storage/v2/records \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--Field:RAFS-Field",
"kind": "{{AUTHORITY}}:{{SCHEMA_SOURCE}}:master-data--Field:1.0.0",
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"FR",
"US"
],
"status": "compliant"
},
"data": {
"FieldID": "RAFS Field Identifier",
"FieldName": "RAFS FieldName",
"FieldDescription": "RAFS FieldDescription",
"NameAliases": [
{
"AliasName": "RAFS AliasName",
"AliasNameTypeID": "{{DATA_PARTITION_ID}}:reference-data--AliasNameType:RegulatoryIdentifier:",
"DefinitionOrganisationID": "{{organisation_id}}:",
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"TerminationDateTime": "2030-02-13T09:13:15.55Z"
}
]
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIds": [
"opendes:master-data--Field:RAFS-Field"
],
"skippedRecordIds": [],
"recordIdVersions": [
"opendes:master-data--Field:RAFS-Field:1758005692653158"
]
}
2.3 Poço
curl --request PUT \
--url {{DNS}}/api/storage/v2/records \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--Well:RAFS-Well",
"kind": "{{AUTHORITY}}:{{SCHEMA_SOURCE}}:master-data--Well:1.4.0",
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"FR",
"US"
],
"status": "compliant"
},
"data": {
"FacilityID": "RAFS Facility Identifier",
"FacilityTypeID": "{{DATA_PARTITION_ID}}:reference-data--FacilityType:Well:",
"FacilityOperators": [
{
"FacilityOperatorID": "RAFS Facility Operator ID",
"FacilityOperatorOrganisationID": "{{organisation_id}}:",
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"TerminationDateTime": "2030-02-13T09:13:15.55Z",
"Remark": "Example Remark"
}
],
"GeoContexts": [
{
"FieldID": "{{field_id}}:",
"GeoTypeID": "Field"
}
]
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIds": [
"opendes:master-data--Well:RAFS-Well"
],
"skippedRecordIds": [],
"recordIdVersions": [
"opendes:master-data--Well:RAFS-Well:1758005701048535"
]
}
2.4 Poço
curl --request PUT \
--url {{DNS}}/api/storage/v2/records \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--Wellbore:RAFS-Wellbore",
"kind": "{{AUTHORITY}}:{{SCHEMA_SOURCE}}:master-data--Wellbore:1.5.1",
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"FR",
"US"
],
"status": "compliant"
},
"data": {
"FacilityID": "RAFS Facility Identifier",
"FacilityTypeID": "{{DATA_PARTITION_ID}}:reference-data--FacilityType:Well:",
"FacilityOperators": [
{
"FacilityOperatorID": "RAFS Facility Operator ID",
"FacilityOperatorOrganisationID": "{{organisation_id}}:",
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"TerminationDateTime": "2030-02-13T09:13:15.55Z",
"Remark": "Example Remark"
}
],
"GeoContexts": [
{
"FieldID": "{{field_id}}:",
"GeoTypeID": "Field"
}
],
"WellID": "{{well_id}}:"
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIds": [
"opendes:master-data--Wellbore:RAFS-Wellbore"
],
"skippedRecordIds": [],
"recordIdVersions": [
"opendes:master-data--Wellbore:RAFS-Wellbore:1758005709139052"
]
}
3. Importar dados mestre RAFS
Use a API DDMS RAFS /v2/masterdata para carregar os dados mestre de Instalação Genérica, Site Genérico, Trabalho de Aquisição de Amostras, Contêiner de Aquisição de Amostras, Amostra e Evento de Cadeia de Custódia de Amostras.
3.1 Mecanismo genérico
curl --request POST \
--url {{DNS}}/api/rafs-ddms/v2/masterdata \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--GenericFacility:CENTRAL-LAB-001",
"kind": "osdu:wks:master-data--GenericFacility:1.0.0",
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"data": {
"ResourceHomeRegionID": "{{DATA_PARTITION_ID}}:reference-data--OSDURegion:AWSEastUSA:",
"ResourceHostRegionIDs": [
"{{DATA_PARTITION_ID}}:reference-data--OSDURegion:AWSEastUSA:"
],
"ResourceCurationStatus": "{{DATA_PARTITION_ID}}:reference-data--ResourceCurationStatus:Created:",
"ResourceLifecycleStatus": "{{DATA_PARTITION_ID}}:reference-data--ResourceLifecycleStatus:Loading:",
"Source": "Example Data Source",
"ExistenceKind": "{{DATA_PARTITION_ID}}:reference-data--ExistenceKind:Prototype:",
"NameAliases": [
{
"AliasName": "Example AliasName",
"AliasNameTypeID": "{{DATA_PARTITION_ID}}:reference-data--AliasNameType:RegulatoryIdentifier:",
"DefinitionOrganisationID": "{{organisation_id}}:",
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"TerminationDateTime": "2020-02-13T09:13:15.55Z"
}
],
"GeoContexts": [
{
"FieldID": "{{field_id}}:",
"GeoTypeID": "Field"
}
],
"Name": "Chevron Central Core Lab",
"FacilityTypeID": "{{DATA_PARTITION_ID}}:reference-data--FacilityType:Wellbore:",
"ResourceHomeRegionID": "{{DATA_PARTITION_ID}}:reference-data--OSDURegion:AzureAustralia:",
"ResourceLifecycleStatus": "{{DATA_PARTITION_ID}}:reference-data--ResourceLifecycleStatus:ACCEPTED:",
"VersionCreationReason": "Example VersionCreationReason",
"FacilityID": "Example External Facility Identifier",
"FacilityTypeID": "{{DATA_PARTITION_ID}}:reference-data--FacilityType:Well:",
"FacilityOperators": [
{
"FacilityOperatorID": "Example Facility Operator ID",
"FacilityOperatorOrganisationID": "{{organisation_id}}:",
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"TerminationDateTime": "2020-02-13T09:13:15.55Z",
"Remark": "Example Remark"
}
],
"InitialOperatorID": "{{organisation_id}}:",
"CurrentOperatorID": "{{organisation_id}}:",
"DataSourceOrganisationID": "{{organisation_id}}:",
"OperatingEnvironmentID": "{{DATA_PARTITION_ID}}:reference-data--OperatingEnvironment:Onshore:",
"FacilityName": "Example FacilityName",
"FacilityDescription": "Example Facility Description",
"FacilityStates": [
{
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"TerminationDateTime": "2020-02-13T09:13:15.55Z",
"FacilityStateTypeID": "{{DATA_PARTITION_ID}}:reference-data--FacilityStateType:Closed:",
"Remark": "Example Remark"
}
],
"FacilityEvents": [
{
"FacilityEventTypeID": "{{DATA_PARTITION_ID}}:reference-data--FacilityEventType:Abandon:",
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"TerminationDateTime": "2020-02-13T09:13:15.55Z",
"Remark": "Example Remark"
}
],
"FacilitySpecifications": [
{
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"TerminationDateTime": "2020-02-13T09:13:15.55Z",
"FacilitySpecificationQuantity": 12345.6,
"FacilitySpecificationDateTime": "2020-02-13T09:13:15.55Z",
"FacilitySpecificationIndicator": true,
"FacilitySpecificationText": "Example FacilitySpecificationText",
"UnitOfMeasureID": "{{DATA_PARTITION_ID}}:reference-data--UnitOfMeasure:m:",
"ParameterTypeID": "{{DATA_PARTITION_ID}}:reference-data--ParameterType:SlotName:"
}
],
"ExtensionProperties": {}
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIdVersions": [
"opendes:master-data--GenericFacility:CENTRAL-LAB-001:1758005722706490"
],
"skippedRecordCount": 0
}
3.2 Site Genérico
curl --request POST \
--url {{DNS}}/api/rafs-ddms/v2/masterdata \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--GenericSite:KKS-ADIT-001",
"kind": "osdu:wks:master-data--GenericSite:1.0.0",
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"data": {
"Name": "Kentish Knock South-1 Adit",
"SiteTypeID": "{{DATA_PARTITION_ID}}:reference-data--SiteType:Adit:",
"ResourceHomeRegionID": "{{DATA_PARTITION_ID}}:reference-data--OSDURegion:AzureAustralia:",
"ResourceLifecycleStatus": "{{DATA_PARTITION_ID}}:reference-data--ResourceLifecycleStatus:ACCEPTED:",
"ExistenceKind": "{{DATA_PARTITION_ID}}:reference-data--ExistenceKind:Simulated:"
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIdVersions": [
"opendes:master-data--GenericSite:KKS-ADIT-001:1758005728156709"
],
"skippedRecordCount": 0
}
3.3 Trabalho de aquisição de amostra
curl --request POST \
--url {{DNS}}/api/rafs-ddms/v2/masterdata \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--SampleAcquisitionJob:KKS-CORE-20230304-001",
"kind": "osdu:wks:master-data--SampleAcquisitionJob:1.0.0",
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"data": {
"ContractorID": "{{organisation_id}}:",
"ProjectBeginDate": "2013-03-04T00:00:00Z",
"ProjectEndDate": "2013-03-07T00:00:00Z"
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIdVersions": [
"opendes:master-data--SampleAcquisitionJob:KKS-CORE-20230304-001:1758005733180422"
],
"skippedRecordCount": 0
}
3.4 Recipiente de aquisição de amostras
curl --request POST \
--url {{DNS}}/api/rafs-ddms/v2/masterdata \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--SampleContainer:COB-12A-001",
"kind": "osdu:wks:master-data--SampleContainer:1.0.0",
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"data": {
"SampleContainerTypeID": "{{DATA_PARTITION_ID}}:reference-data--SampleContainerType:Box:",
"Capacity": 10.0,
"ContainerIdentifier": "CORE-BOX-12A",
"OperatingConditionRating": {
"Pressure": 200,
"Temperature": 100
},
"SampleContainerServiceTypeIDs": [
"{{DATA_PARTITION_ID}}:reference-data--SampleContainerServiceType:Hydrocarbon.Sour:"
]
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIdVersions": [
"opendes:master-data--SampleContainer:COB-12A-001:1758005738846690"
],
"skippedRecordCount": 0
}
3.5 Amostra
curl --request POST \
--url {{DNS}}/api/rafs-ddms/v2/masterdata \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--Sample:KKS-CORE-PLUG-001",
"kind": "osdu:wks:master-data--Sample:2.1.0",
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"data": {
"SampleAcquisition": {
"SampleAcquisitionJobID": "{{sar_sample_acquisition_record_id}}:",
"SampleAcquisitionDetail": {
"VerticalMeasurement": {
"EffectiveDateTime": "2020-02-13T09:13:15.55Z",
"VerticalMeasurement": 12345.6,
"TerminationDateTime": "2020-02-13T09:13:15.55Z",
"VerticalMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--VerticalMeasurementType:ArbitraryPoint:",
"VerticalMeasurementPathID": "{{DATA_PARTITION_ID}}:reference-data--VerticalMeasurementPath:MD:",
"VerticalMeasurementSourceID": "{{DATA_PARTITION_ID}}:reference-data--VerticalMeasurementSource:DRL:",
"VerticalMeasurementUnitOfMeasureID": "{{DATA_PARTITION_ID}}:reference-data--UnitOfMeasure:m:",
"VerticalCRSID": "{{DATA_PARTITION_ID}}:reference-data--CoordinateReferenceSystem:BoundProjected:EPSG::32021_EPSG::15851:",
"VerticalReferenceID": "Example VerticalReferenceID",
"VerticalMeasurementDescription": "Example VerticalMeasurementDescription"
},
"TopDepth": 10000.0,
"BaseDepth": 20000.0,
"ToolKind": "Wireline Formation Tester",
"RunNumber": "22",
"WellboreID": "{{wellbore_id}}:",
"WellheadOperatingCondition": {
"Pressure": 1.0,
"Temperature": 15.0
},
"SeparatorOperatingCondition": {
"Pressure": 1.0,
"Temperature": 15.0
},
"SamplingPoint": {
"SamplingPointTypeID": "{{DATA_PARTITION_ID}}:reference-data--SamplingPointType:FlowPort:",
"SamplingPointName": "VALVE:1723RR-01"
},
"CorrectedOilRate": 12345.6,
"CorrectedGasRate": 12345.6,
"CorrectedWaterRate": 12345.6,
"MeasuredOilRate": 12345.6,
"MeasuredGasRate": 12345.6,
"MeasuredWaterRate": 12345.6,
"FormationCondition": {
"Pressure": 120,
"Temperature": 60
},
"CorrectionRemarks": {
"RemarkSequenceNumber": 1,
"Remark": "Example Remark",
"RemarkSource": "Example Remark Source",
"RemarkDate": "2020-02-13"
},
"SampleCarrierSlotName": "Example Sample Carrier Slot Name",
"ToolSectionName": "Example Tool Section Name",
"SampleContainerCushionPressure": 12345.6,
"GrossFluidKindID": "{{DATA_PARTITION_ID}}:reference-data--WellProductType:Gas:",
"FacilityEquipmentOperatingCondition": {
"Pressure": 1.0,
"Temperature": 15.0
},
"SiteID": "{{sar_generic_site_record_id}}:",
"SampleRecoveredLengthActual": 12345.6,
"PreservationTypeID": "{{DATA_PARTITION_ID}}:reference-data--CorePreservationType:ClingWrap:",
"SampleRecoveredLengthPlanned": 12345.6,
"AcquisitionCondition": {
"Pressure": 120,
"Temperature": 60
},
"AcquisitionGOR": 340.0,
"MudBaseTypeID": "{{DATA_PARTITION_ID}}:reference-data--MudBaseType:Brine:",
"MudTracerTypeID": "{{DATA_PARTITION_ID}}:reference-data--MudTracerType:ChemicalTracer:"
},
"SampleAcquisitionTypeID": "{{DATA_PARTITION_ID}}:reference-data--SampleAcquisitionType:DownholeSampleAcquisition:",
"SampleAcquisitionContainerID": "{{sar_sample_container_record_id}}:",
"AcquisitionStartDate": "2023-01-01T12:00:00Z",
"AcquisitionEndDate": "2023-01-01T12:00:00Z",
"Remarks": [
{
"RemarkSequenceNumber": 1,
"Remark": "Example Remark",
"RemarkSource": "Example Remark Source",
"RemarkDate": "2020-02-13"
}
],
"CollectionServiceCompanyID": "{{organisation_id}}:",
"HandlingServiceCompanyID": "{{organisation_id}}:"
}
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIdVersions": [
"opendes:master-data--Sample:KKS-CORE-PLUG-001:1758005744573136"
],
"skippedRecordCount": 0
}
3.6 Amostra de Evento da Cadeia de Custódia
curl --request POST \
--url {{DNS}}/api/rafs-ddms/v2/masterdata \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:master-data--SampleChainOfCustodyEvent:KKS-TRANSFER-001",
"kind": "osdu:wks:master-data--SampleChainOfCustodyEvent:1.0.0",
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"acl": {
"owners": [
"{{ACL_DATA_OWNERS}}"
],
"viewers": [
"{{ACL_DATA_VIEWERS}}"
]
},
"data": {
"Name": "Example Name",
"TransferCondition": {
"Pressure": 100,
"Temperature": 60
},
"OpeningCondition": {
"Pressure": 100,
"Temperature": 60
},
"ClosingCondition": {
"Pressure": 100,
"Temperature": 60
},
"CustodyDate": "2022-01-01T10:00:00",
"CustodyEventTypeID": "{{DATA_PARTITION_ID}}:reference-data--CustodyEventType:SampleTransfer:",
"Custodian": "Harris A.",
"PreviousStorageLocation": {
"StorageLocationDescription": "Example StorageLocationDescription",
"StorageOrganisationID": "{{organisation_id}}:",
"EffectiveDateTime": "2020-02-13",
"TerminationDateTime": "2020-02-13",
"SampleIdentifier": "Example SampleIdentifier"
},
"CurrentStorageLocation": {
"StorageLocationDescription": "Example StorageLocationDescription",
"StorageOrganisationID": "{{organisation_id}}:",
"EffectiveDateTime": "2020-02-13",
"TerminationDateTime": "2020-02-13",
"SampleIdentifier": "Example SampleIdentifier"
},
"CustodyEventLocationID": "{{organisation_id}}:",
"CurrentContainerID": "{{sar_sample_container_record_id}}:",
"Remarks": [
{
"Remark": "Transfer process resulted in lost volume.",
"RemarkSource": "Lab Analyst 1"
}
],
"SampleID": "{{sample_record_id}}:"
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIdVersions": [
"opendes:master-data--SampleChainOfCustodyEvent:KKS-TRANSFER-001:1758005749904118"
],
"skippedRecordCount": 0
}
4. Relatório de análise de amostra de ingestão
4.1 Criar um novo relatório de análise de exemplo
curl --request POST \
--url {{DNS}}/api/rafs-ddms/v2/samplesanalysesreport \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"id": "{{DATA_PARTITION_ID}}:work-product-component--SamplesAnalysesReport:KKS1",
"kind": "{{AUTHORITY}}:wks:work-product-component--SamplesAnalysesReport:1.0.0",
"acl": {
"viewers": [
"{{ACL_DATA_VIEWERS}}"
],
"owners": [
"{{ACL_DATA_OWNERS}}"
]
},
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"tags": {
"NameOfKey": "String value"
},
"meta": [],
"data": {
"DocumentTypeID": "{{DATA_PARTITION_ID}}:reference-data--DocumentType:SampleAnalysisReport:",
"NumberOfPages": 210,
"SubTitle": "An Advanced Rock Properties Study Of Selected Samples From Well: KENTISH KNOCK SOUTH 1",
"DocumentSubject": "Special Core Analysis Results Report (Final)",
"DatePublished": "2020-12-16T11:46:20.163Z",
"DateModified": "2020-12-16T11:46:20.163Z",
"DocumentLanguage": "English",
"SampleIDs": [
"{{sample_record_id}}:"
],
"ReportSampleIdentifiers": [
"48B"
],
"SampleAnalysisTypeIDs": [
"{{DATA_PARTITION_ID}}:reference-data--SampleAnalysisType:RelativePermeability.SteadyState:",
"{{DATA_PARTITION_ID}}:reference-data--SampleAnalysisType:NMR:",
"{{DATA_PARTITION_ID}}:reference-data--SampleAnalysisType:ElectricalProperties.FormationResistivityFactor:"
],
"SamplesAnalysisCategoryTagIDs": [
"{{DATA_PARTITION_ID}}:reference-data--SamplesAnalysisCategoryTag:GreenCompany.SCAL:"
],
"Remarks": [
{
"Remark": "RelativePermeability, page 105",
"RemarkSequenceNumber": 1,
"RemarkSource": "CoreLab"
},
{
"Remark": "NMR, page 91",
"RemarkSequenceNumber": 1,
"RemarkSource": "CoreLab"
}
],
"LaboratoryIDs": [
"{{organisation_id}}:"
],
"LaboratoryNames": [
"Core Laboratories"
]
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIdVersions": [
"opendes:work-product-component--SamplesAnalysesReport:KKS1:1758005756819109"
],
"skippedRecordCount": 0
}
4.2 Obter o registro do Relatório de Análise de Amostra
Para recuperar um relatório, use GET /api/rafs-ddms/v2/samplesanalysesreport/{reportId}
curl --request GET \
--url {{DNS}}/api/rafs-ddms/v2/samplesanalysesreport/{{report_id}} \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}'
{
"data": {
"DocumentTypeID": "opendes:reference-data--DocumentType:SampleAnalysisReport:",
"NumberOfPages": 210,
"SubTitle": "An Advanced Rock Properties Study Of Selected Samples From Well: KENTISH KNOCK SOUTH 1",
"DocumentSubject": "Special Core Analysis Results Report (Final)",
"DatePublished": "2020-12-16T11:46:20.163Z",
"DateModified": "2020-12-16T11:46:20.163Z",
"DocumentLanguage": "English",
"SampleIDs": [
"opendes:master-data--Sample:KKS-CORE-PLUG-001:"
],
"ReportSampleIdentifiers": [
"48B"
],
"SampleAnalysisTypeIDs": [
"opendes:reference-data--SampleAnalysisType:RelativePermeability.SteadyState:",
"opendes:reference-data--SampleAnalysisType:NMR:",
"opendes:reference-data--SampleAnalysisType:ElectricalProperties.FormationResistivityFactor:"
],
"SamplesAnalysisCategoryTagIDs": [
"opendes:reference-data--SamplesAnalysisCategoryTag:GreenCompany.SCAL:"
],
"Remarks": [
{
"Remark": "RelativePermeability, page 105",
"RemarkSequenceNumber": 1,
"RemarkSource": "CoreLab"
},
{
"Remark": "NMR, page 91",
"RemarkSequenceNumber": 1,
"RemarkSource": "CoreLab"
}
],
"LaboratoryIDs": [
"opendes:master-data--Organisation:CoreLabs-IN:"
],
"LaboratoryNames": [
"Core Laboratories"
]
},
"meta": [],
"modifyUser": "89a1a081-3783-4824-88f9-e2b97d602d52",
"modifyTime": "2025-09-16T06:55:56.839Z",
"id": "opendes:work-product-component--SamplesAnalysesReport:KKS1",
"version": 1758005756819109,
"kind": "osdu:wks:work-product-component--SamplesAnalysesReport:1.0.0",
"acl": {
"viewers": [
"data.default.viewers@opendes.dataservices.energy"
],
"owners": [
"data.default.owners@opendes.dataservices.energy"
]
},
"legal": {
"legaltags": [
"opendes-osdu-rafs-ddms-demo-legal-tag"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"tags": {
"NameOfKey": "String value"
},
"createUser": "89a1a081-3783-4824-88f9-e2b97d602d52",
"createTime": "2025-09-15T11:04:40.310Z"
}
4.3 Obter todas as versões do Relatório de Análise de Exemplo
Para listar todas as versões, use GET /api/rafs-ddms/v2/samplesanalysesreport/{record_id}/versions
curl --request GET \
--url {{DNS}}/api/rafs-ddms/v2/samplesanalysesreport/{{record_id}}/versions \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}'
Exemplo de resposta:
{
"recordId": "opendes:work-product-component--SamplesAnalysesReport:KKS1",
"versions": [
1757934280081250,
1757940413848125,
1757996685957604,
1758004251045884,
1758004420706401,
1758005756819109
]
}
4.4 Obter uma versão específica do Relatório de Análise de Amostra
Para obter uma versão específica, use GET /api/rafs-ddms/v2/samplesanalysesreport/{record_id}/versions/{version}
curl --request GET \
--url {{DNS}}/api/rafs-ddms/v2/samplesanalysesreport/{{record_id}}/versions/{{version}} \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}'
Exemplo de resposta:
{
"data": {
"DocumentTypeID": "opendes:reference-data--DocumentType:SampleAnalysisReport:",
"NumberOfPages": 210,
"SubTitle": "An Advanced Rock Properties Study Of Selected Samples From Well: KENTISH KNOCK SOUTH 1",
"DocumentSubject": "Special Core Analysis Results Report (Final)",
"DatePublished": "2020-12-16T11:46:20.163Z",
"DateModified": "2020-12-16T11:46:20.163Z",
"DocumentLanguage": "English",
"SampleIDs": [
"opendes:master-data--Sample:KKS-CORE-PLUG-001:"
],
"ReportSampleIdentifiers": [
"48B"
],
"SampleAnalysisTypeIDs": [
"opendes:reference-data--SampleAnalysisType:RelativePermeability.SteadyState:",
"opendes:reference-data--SampleAnalysisType:NMR:",
"opendes:reference-data--SampleAnalysisType:ElectricalProperties.FormationResistivityFactor:"
],
"SamplesAnalysisCategoryTagIDs": [
"opendes:reference-data--SamplesAnalysisCategoryTag:GreenCompany.SCAL:"
],
"Remarks": [
{
"Remark": "RelativePermeability, page 105",
"RemarkSequenceNumber": 1,
"RemarkSource": "CoreLab"
},
{
"Remark": "NMR, page 91",
"RemarkSequenceNumber": 1,
"RemarkSource": "CoreLab"
}
],
"LaboratoryIDs": [
"opendes:master-data--Organisation:CoreLabs-IN:"
],
"LaboratoryNames": [
"Core Laboratories"
]
},
"meta": [],
"modifyUser": "89a1a081-3783-4824-88f9-e2b97d602d52",
"modifyTime": "2025-09-16T06:55:56.839Z",
"id": "opendes:work-product-component--SamplesAnalysesReport:KKS1",
"version": 1758005756819109,
"kind": "osdu:wks:work-product-component--SamplesAnalysesReport:1.0.0",
"acl": {
"viewers": [
"data.default.viewers@opendes.dataservices.energy"
],
"owners": [
"data.default.owners@opendes.dataservices.energy"
]
},
"legal": {
"legaltags": [
"opendes-osdu-rafs-ddms-demo-legal-tag"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"tags": {
"NameOfKey": "String value"
},
"createUser": "89a1a081-3783-4824-88f9-e2b97d602d52",
"createTime": "2025-09-15T11:04:40.310Z"
}
5. Análise da amostra de ingestão
5.1 Criar um registro de análise de amostra
Para criar uma nova análise, use POST /api/rafs-ddms/v2/samplesanalysis
curl --request POST \
--url {{DNS}}/api/rafs-ddms/v2/samplesanalysis \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '[
{
"kind": "{{AUTHORITY}}:wks:work-product-component--SamplesAnalysis:1.0.0",
"acl": {
"viewers": [
"{{ACL_DATA_VIEWERS}}"
],
"owners": [
"{{ACL_DATA_OWNERS}}"
]
},
"legal": {
"legaltags": [
"{{DATA_PARTITION_ID}}-{{LEGAL_TAG}}"
],
"otherRelevantDataCountries": [
"IN"
],
"status": "compliant"
},
"tags": {
"NameOfKey": "String value"
},
"data": {
"SampleIDs": [
"{{sample_record_id}}:"
],
"ReportSampleIdentifiers": [
"53B"
],
"AnalysisDate": "2015-01-01",
"LaboratoryIDs": [
"{{organisation_id}}:"
],
"LaboratoryNames": [
"TestLab"
],
"Remarks": [
{
"Remark": "Kentish Knock South 1 - Special Core Analysis (SCAL) Report, Section 6.2 Page 91, 92",
"RemarkSequenceNumber": 1,
"RemarkSource": "RAFSDDMS",
"RemarkDate": "2023-12-21"
}
],
"DatePublished": "2015-01-01",
"ParentSamplesAnalysesReports": [
{
"ParentSamplesAnalysesReportID": "{{sar_record_id}}:"
}
],
"SampleAnalysisTypeIDs": [
"{{DATA_PARTITION_ID}}:reference-data--SampleAnalysisType:NMR:"
],
"SamplesAnalysisCategoryTagIDs": [
"{{DATA_PARTITION_ID}}:reference-data--SamplesAnalysisCategoryTag:GreenCompany.SCAL:"
],
"AvailableSampleAnalysisProperties": [
"SamplesAnalysisID",
"SampleID",
"CumulativeWaterSaturation",
"T2FullySaturated",
"IncrementalPorosity",
"DisplacedFluid",
"EchoSpacing",
"InjectedFluid",
"Porosity",
"Permeability",
"NMRT2Swirr",
"T2CutOff",
"T2Mean",
"Temperature",
"PoreVolume",
"NetConfiningStress"
],
"DDMSDatasets": [],
"Parameters": []
}
}
]'
Exemplo de resposta:
{
"recordCount": 1,
"recordIdVersions": [
"opendes:work-product-component--SamplesAnalysis:1c022fcfa0134607b7c3dbc26f8783cf:1758005811171994"
],
"skippedRecordCount": 0
}
5.2 Obter o esquema de conteúdo
Para obter o esquema de conteúdo, use GET /api/rafs-ddms/v2/samplesanalysis/{analysistype}/data/schema
curl --request GET \
--url {{DNS}}/api/rafs-ddms/v2/samplesanalysis/nmr/data/schema \
--header 'accept: */*;version={{rafsddms-content-schema-version}}' \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}'
Exemplo de resposta:
{
"title": "NmrModel100",
"type": "object",
"properties": {
"SamplesAnalysisID": {
"title": "Samples Analysis ID",
"description": "The OSDU Identifier for this SamplesAnalysis.",
"pattern": "^[\\w\\-\\.]+:work-product-component\\-\\-SamplesAnalysis:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
},
"SampleID": {
"title": "Sample ID",
"description": "The OSDU Identifier for the Sample associated with this analysis.",
"pattern": "^[\\w\\-\\.]+:master-data\\-\\-Sample:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
},
"Meta": {
"title": "Meta",
"description": "A meta data item, which allows the association of named properties or property values to a Unit/Measurement/CRS/Azimuth/Time context.",
"example": "",
"type": "array",
"items": {
"anyOf": [
{
"$ref": "#/definitions/Meta"
},
{
"$ref": "#/definitions/Meta1"
},
{
"$ref": "#/definitions/Meta2"
},
{
"$ref": "#/definitions/Meta3"
}
]
}
},
"NMRTest": {
"title": "NMR Test",
"description": "An analysis of rock or fluid samples using Nuclear Magnetic Resonance to assess various properties, including fluid content and pore structure.",
"type": "array",
"items": {
"$ref": "#/definitions/NMRTestItem"
}
}
},
"required": [
"SamplesAnalysisID",
"SampleID",
"Meta"
],
"additionalProperties": false,
"definitions": {
"Meta": {
"title": "Meta",
"type": "object",
"properties": {
"kind": {
"title": "UOM Reference Kind",
"description": "The kind of reference, 'Unit' for FrameOfReferenceUOM.",
"default": "Unit",
"const": "Unit",
"type": "string"
},
"name": {
"title": "UOM Unit Symbol",
"description": "The unit symbol or name of the unit.",
"example": "ft[US]",
"type": "string"
},
"persistableReference": {
"title": "UOM Persistable Reference",
"description": "The self-contained, persistable reference string uniquely identifying the Unit.",
"example": "{\"abcd\":{\"a\":0.0,\"b\":1200.0,\"c\":3937.0,\"d\":0.0},\"symbol\":\"ft[US]\",\"baseMeasurement\":{\"ancestry\":\"L\",\"type\":\"UM\"},\"type\":\"UAD\"}",
"type": "string"
},
"unitOfMeasureID": {
"title": "Unitofmeasureid",
"description": "SRN to unit of measure reference.",
"example": "namespace:reference-data--UnitOfMeasure:ftUS:",
"pattern": "^[\\w\\-\\.]+:reference-data\\-\\-UnitOfMeasure:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
},
"propertyNames": {
"title": "UOM Property Names",
"description": "The list of property names, to which this meta data item provides Unit context to. A full path like \"StructureA.PropertyB\" is required to define a unique context; \"data\" is omitted since frame-of reference normalization only applies to the data block.",
"example": [
"HorizontalDeflection.EastWest",
"HorizontalDeflection.NorthSouth"
],
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false
},
"Meta1": {
"title": "Meta1",
"type": "object",
"properties": {
"kind": {
"title": "CRS Reference Kind",
"description": "The kind of reference, constant 'CRS' for FrameOfReferenceCRS.",
"default": "CRS",
"const": "CRS",
"type": "string"
},
"name": {
"title": "CRS Name",
"description": "The name of the CRS.",
"example": "WGS 84 / UTM zone 15N",
"type": "string"
},
"persistableReference": {
"title": "CRS Persistable Reference",
"description": "The self-contained, persistable reference string uniquely identifying the CRS.",
"example": "{\"authCode\":{\"auth\":\"EPSG\",\"code\":\"32615\"},\"name\":\"WGS_1984_UTM_Zone_15N\",\"type\":\"LBC\",\"ver\":\"PE_10_9_1\",\"wkt\":\"PROJCS[\\\"WGS_1984_UTM_Zone_15N\\\",GEOGCS[\\\"GCS_WGS_1984\\\",DATUM[\\\"D_WGS_1984\\\",SPHEROID[\\\"WGS_1984\\\",6378137.0,298.257223563]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],PROJECTION[\\\"Transverse_Mercator\\\"],PARAMETER[\\\"False_Easting\\\",500000.0],PARAMETER[\\\"False_Northing\\\",0.0],PARAMETER[\\\"Central_Meridian\\\",-93.0],PARAMETER[\\\"Scale_Factor\\\",0.9996],PARAMETER[\\\"Latitude_Of_Origin\\\",0.0],UNIT[\\\"Meter\\\",1.0],AUTHORITY[\\\"EPSG\\\",32615]]\"}",
"type": "string"
},
"coordinateReferenceSystemID": {
"title": "Coordinatereferencesystemid",
"description": "SRN to CRS reference.",
"example": "namespace:reference-data--CoordinateReferenceSystem:Projected:EPSG::32615:",
"pattern": "^[\\w\\-\\.]+:reference-data\\-\\-CoordinateReferenceSystem:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
},
"propertyNames": {
"title": "CRS Property Names",
"description": "The list of property names, to which this meta data item provides CRS context to. A full path like \"StructureA.PropertyB\" is required to define a unique context; \"data\" is omitted since frame-of reference normalization only applies to the data block.",
"example": [
"KickOffPosition.X",
"KickOffPosition.Y"
],
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"persistableReference"
],
"additionalProperties": false
},
"Meta2": {
"title": "Meta2",
"type": "object",
"properties": {
"kind": {
"title": "DateTime Reference Kind",
"description": "The kind of reference, constant 'DateTime', for FrameOfReferenceDateTime.",
"default": "DateTime",
"const": "DateTime",
"type": "string"
},
"name": {
"title": "DateTime Name",
"description": "The name of the DateTime format and reference.",
"example": "UTC",
"type": "string"
},
"persistableReference": {
"title": "DateTime Persistable Reference",
"description": "The self-contained, persistable reference string uniquely identifying DateTime reference.",
"example": "{\"format\":\"yyyy-MM-ddTHH:mm:ssZ\",\"timeZone\":\"UTC\",\"type\":\"DTM\"}",
"type": "string"
},
"propertyNames": {
"title": "DateTime Property Names",
"description": "The list of property names, to which this meta data item provides DateTime context to. A full path like \"StructureA.PropertyB\" is required to define a unique context; \"data\" is omitted since frame-of reference normalization only applies to the data block.",
"example": [
"Acquisition.StartTime",
"Acquisition.EndTime"
],
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"persistableReference"
],
"additionalProperties": false
},
"Meta3": {
"title": "Meta3",
"type": "object",
"properties": {
"kind": {
"title": "AzimuthReference Reference Kind",
"description": "The kind of reference, constant 'AzimuthReference', for FrameOfReferenceAzimuthReference.",
"default": "AzimuthReference",
"const": "AzimuthReference",
"type": "string"
},
"name": {
"title": "AzimuthReference Name",
"description": "The name of the CRS or the symbol/name of the unit.",
"example": "TrueNorth",
"type": "string"
},
"persistableReference": {
"title": "AzimuthReference Persistable Reference",
"description": "The self-contained, persistable reference string uniquely identifying AzimuthReference.",
"example": "{\"code\":\"TrueNorth\",\"type\":\"AZR\"}",
"type": "string"
},
"propertyNames": {
"title": "AzimuthReference Property Names",
"description": "The list of property names, to which this meta data item provides AzimuthReference context to. A full path like \"StructureA.PropertyB\" is required to define a unique context; \"data\" is omitted since frame-of reference normalization only applies to the data block.",
"example": [
"Bearing"
],
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"persistableReference"
],
"additionalProperties": false
},
"CumulativePorosity": {
"title": "CumulativePorosity",
"type": "object",
"properties": {
"Value": {
"title": "Value",
"description": "The porosity value of the sample.",
"type": "number"
},
"PorosityMeasurementTypeID": {
"title": "Porosity Measurement Type ID",
"description": "The type of porosity being measured, e.g. BrineSaturation, HeliumInjection.",
"pattern": "^[\\w\\-\\.]+:reference-data\\-\\-PorosityMeasurementType:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
}
},
"additionalProperties": false
},
"IncrementalPorosity": {
"title": "IncrementalPorosity",
"type": "object",
"properties": {
"Value": {
"title": "Value",
"description": "The porosity value.",
"type": "number"
},
"PorosityMeasurementTypeID": {
"title": "Porosity Measurement Type ID",
"description": "The type of porosity being measured, e.g. BrineSaturation, HeliumInjection.",
"pattern": "^[\\w\\-\\.]+:reference-data\\-\\-PorosityMeasurementType:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
}
},
"additionalProperties": false
},
"NMRTestStep": {
"title": "NMRTestStep",
"type": "object",
"properties": {
"CumulativeWaterSaturation": {
"title": "Cumulative Water Saturation",
"description": "Cumulative water saturation",
"type": "number"
},
"CumulativeVolume": {
"title": "Cumulative Volume",
"description": "Cumulative volume of fluid calculated based on amplitude measurement.",
"type": "number"
},
"CumulativePorosity": {
"title": "Cumulative Porosity",
"description": "Cumulative porosity of the sample.",
"allOf": [
{
"$ref": "#/definitions/CumulativePorosity"
}
]
},
"IncrementalWaterSaturation": {
"title": "Incremental Water Saturation",
"description": "Water saturation increment for this test step.",
"type": "number"
},
"IncrementalPorosity": {
"title": "Incremental Porosity",
"description": "Incremental porosity of the sample.",
"allOf": [
{
"$ref": "#/definitions/IncrementalPorosity"
}
]
},
"IncrementalVolume": {
"title": "Incremental Volume",
"description": "Incremental volume of fluid calculated based on amplitude measurement.",
"type": "number"
},
"T2FullySaturated": {
"title": "T2 Fully Saturated",
"description": "T2 (transverse or spin-spin relaxation) when the sample is fully saturated.",
"type": "number"
},
"T2PartiallySaturated": {
"title": "T2 Partially Saturated",
"description": "T2 (transverse or spin-spin relaxation) when the sample is partially saturated.",
"type": "number"
},
"T1CumulativePorosity": {
"title": "T1 Cumulative Porosity",
"description": "Cumulative porosity of the sample based on T1.",
"type": "number"
},
"T1CumulativeWaterSaturation": {
"title": "T1 Cumulative Water Saturation",
"description": "Cumulative water saturation of the sample based on T1.",
"type": "number"
},
"T1IncrementalPorosity": {
"title": "T1 Incremental Porosity",
"description": "Incremental porosity of the sample based on T1.",
"type": "number"
},
"T1IncrementalWaterSaturation": {
"title": "T1 Incremental Water Saturation",
"description": "Incremental water saturation of the sample based on T1.",
"type": "number"
}
},
"additionalProperties": false
},
"PorosityItem": {
"title": "PorosityItem",
"type": "object",
"properties": {
"Value": {
"title": "Value",
"description": "The porosity value.",
"type": "number"
},
"PorosityMeasurementTypeID": {
"title": "Porosity Measurement Type ID",
"description": "The classification of porosity measured in the NMR test, which could be based on the method of measurement or the characteristics of the pore spaces.",
"pattern": "^[\\w\\-\\.]+:reference-data\\-\\-PorosityMeasurementType:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
}
},
"additionalProperties": false
},
"PermeabilityItem": {
"title": "PermeabilityItem",
"type": "object",
"properties": {
"Value": {
"title": "Value",
"type": "number"
},
"PermeabilityMeasurementTypeID": {
"title": "Permeability Measurement Type ID",
"description": "The type of permeability being measured, e.g. Gas, PulseDecay, Klinkenberg.",
"pattern": "^[\\w\\-\\.]+:reference-data\\-\\-PermeabilityMeasurementType:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
}
},
"additionalProperties": false
},
"NMRSummaryData": {
"title": "NMRSummaryData",
"type": "object",
"properties": {
"BoundFluidBVI": {
"title": "Bound Fluid BVI",
"description": "Bound fluid following sample desaturation, relative to pore volume.",
"type": "number"
},
"NMRT2BoundFluidRelativetoPoreVolume": {
"title": "NMRT2BoundFluidRelativetoPoreVolume",
"description": "NMR T2 bound fluid relative to pore volume.",
"type": "number"
},
"DisplacedFluidID": {
"title": "Displaced Fluid ID",
"description": "The type of fluid displaced during the NMR test, which can influence the interpretation of pore and fluid properties.",
"pattern": "^[\\w\\-\\.]+:reference-data\\-\\-DisplacedFluidType:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
},
"EchoSpacing": {
"title": "Echo Spacing",
"description": "The time interval between successive echoes in a sequence of pulse and acquisition events.",
"type": "number"
},
"FreeFluidFFI": {
"title": "Free Fluid FFI",
"description": "Free fluid following sample desaturation, relative to pore volume.",
"type": "number"
},
"NMRT2FreeFluid": {
"title": "NMR T2 Free Fluid",
"description": "The amount of NMR T2 free fluid expressed relative to pore volume.",
"type": "number"
},
"InjectionFluidID": {
"title": "Injected Fluid ID",
"description": "The type of fluid injected into the sample during the NMR test, used to assess how different fluids affect the sample's magnetic resonance properties.",
"pattern": "^[\\w\\-\\.]+:reference-data\\-\\-SampleInjectionFluidType:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
},
"Porosity": {
"title": "Porosity",
"description": "The amount of pore space relative to the volume of a sample.",
"type": "array",
"items": {
"$ref": "#/definitions/PorosityItem"
}
},
"Permeability": {
"title": "Permeability",
"description": "The permeability of the sample as determined by the NMR test, reflecting the ability of fluids to flow through the rock or material.",
"type": "array",
"items": {
"$ref": "#/definitions/PermeabilityItem"
}
},
"Swirr": {
"title": "Irreducible Water Saturation",
"description": "The irreducible water saturation relative to pore volume of the sample.",
"type": "number"
},
"NMRT2Swirr": {
"title": "NMR T2 Irreducible Water Saturation",
"description": "NMR T2 irreducible water saturation relative to pore volume of the sample.",
"type": "number"
},
"T2CutOff": {
"title": "T2 Cut Off",
"description": "Cut off of transverse relaxation time (T2).",
"type": "number"
},
"T2Mean": {
"title": "T2 Mean",
"description": "Average of T2 relaxation time.",
"type": "number"
},
"Temperature": {
"title": "Temperature",
"description": "The temperature of the test environment.",
"type": "number"
},
"PoreVolume": {
"title": "Pore Volume",
"description": "The pore volume of the sample.",
"type": "number"
},
"NetConfiningStress": {
"title": "Net Confining Stress",
"description": "The pressure exerted on a sample from its environment, minus the pore pressure within the sample.",
"type": "number"
}
},
"additionalProperties": false
},
"NMRTestItem": {
"title": "NMRTestItem",
"type": "object",
"properties": {
"TestConditionID": {
"title": "Test Condition ID",
"description": "The sample condition at which the NMR test was conducted.",
"pattern": "^[\\w\\-\\.]+:reference-data\\-\\-NMRTestCondition:[\\w\\-\\.\\:\\%]+:[0-9]*$",
"type": "string"
},
"NMRTestSteps": {
"title": "NMR Test Steps",
"description": "An array capturing the individual test steps for this NMR analysis.",
"type": "array",
"items": {
"$ref": "#/definitions/NMRTestStep"
}
},
"NMRSummaryData": {
"title": "NMR Summary Data",
"description": "A summary of results from the NMR test, providing key metrics and findings related to the analysis.",
"allOf": [
{
"$ref": "#/definitions/NMRSummaryData"
}
]
}
},
"additionalProperties": false
}
}
}
5.3 Adicionar dados à análise da amostra
Para adicionar dados, use POST /api/rafs-ddms/v2/samplesanalysis/{record_id}/data/{analysistype}
curl --request POST \
--url {{DNS}}/api/rafs-ddms/v2/samplesanalysis/opendes:work-product-component--SamplesAnalysis:1c022fcfa0134607b7c3dbc26f8783cf/data/nmr \
--header 'accept: */*;version={{rafsddms-content-schema-version}}' \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}' \
--data '{
"columns": [
"SamplesAnalysisID",
"SampleID",
"Meta",
"NMRTest"
],
"index": [
0
],
"data": [
[
"{{nmr_record_id}}:",
"{{sample_record_id}}:",
[
{
"kind": "Unit",
"name": "degree Fahrenheit",
"unitOfMeasureID": "{{DATA_PARTITION_ID}}:reference-data--UnitOfMeasure:degF:",
"propertyNames": [
"NMRSummaryData.Temperature"
]
},
{
"kind": "Unit",
"name": "pound-force per square inch",
"unitOfMeasureID": "{{DATA_PARTITION_ID}}:reference-data--UnitOfMeasure:psi:",
"propertyNames": [
"NMRSummaryData.NetConfiningStress"
]
},
{
"kind": "Unit",
"name": "millidarcy",
"unitOfMeasureID": "{{DATA_PARTITION_ID}}:reference-data--UnitOfMeasure:mD:",
"propertyNames": [
"NMRSummaryData.Permeability.Value"
]
},
{
"kind": "Unit",
"name": "cubic centimetre",
"unitOfMeasureID": "{{DATA_PARTITION_ID}}:reference-data--UnitOfMeasure:cm3:",
"propertyNames": [
"NMRTestSteps[*].CumulativeVolume",
"NMRTestSteps[*].IncrementalVolume",
"NMRSummaryData.BoundFluidBVI",
"NMRSummaryData.PoreVolume"
]
},
{
"kind": "Unit",
"name": "centimetre",
"unitOfMeasureID": "{{DATA_PARTITION_ID}}:reference-data--UnitOfMeasure:cm:",
"propertyNames": [
"NMRSummaryData.EchoSpacing"
]
},
{
"kind": "Unit",
"name": "milliseconds",
"unitOfMeasureID": "{{DATA_PARTITION_ID}}:reference-data--UnitOfMeasure:ms:",
"propertyNames": [
"NMRTestSteps[*].T2FullySaturated",
"NMRTestSteps[*].T2PartiallySaturated",
"NMRSummaryData.T2CutOff",
"NMRSummaryData.T2Mean"
]
},
{
"kind": "Unit",
"name": "percent",
"unitOfMeasureID": "{{DATA_PARTITION_ID}}:reference-data--UnitOfMeasure:%25:",
"propertyNames": [
"NMRTestSteps[*].CumulativeWaterSaturation",
"NMRTestSteps[*].CumulativePorosity.Value",
"NMRTestSteps[*].IncrementalWaterSaturation",
"NMRTestSteps[*].IncrementalPorosity.Value",
"NMRTestSteps[*].T1CumulativePorosity",
"NMRTestSteps[*].T1CumulativeWaterSaturation",
"NMRTestSteps[*].T1IncrementalPorosity",
"NMRTestSteps[*].T1IncrementalWaterSaturation",
"NMRSummaryData.NMRT2BoundFluidRelativetoPoreVolume",
"NMRSummaryData.FreeFluidFFI",
"NMRSummaryData.NMRT2FreeFluid",
"NMRSummaryData.Porosity.Value",
"NMRSummaryData.Swirr",
"NMRSummaryData.NMRT2Swirr"
]
}
],
[
{
"TestConditionID": "{{DATA_PARTITION_ID}}:reference-data--NMRTestCondition:FullySaturated:",
"NMRTestSteps": [
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.100,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.126,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.158,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.200,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.251,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.316,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.398,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.501,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.631,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 0.794,
"IncrementalPorosity": {
"Value": 0.000,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 1.00,
"IncrementalPorosity": {
"Value": 0.019,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 1.26,
"IncrementalPorosity": {
"Value": 0.040,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 1.58,
"IncrementalPorosity": {
"Value": 0.057,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 2.00,
"IncrementalPorosity": {
"Value": 0.071,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 2.51,
"IncrementalPorosity": {
"Value": 0.085,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 3.16,
"IncrementalPorosity": {
"Value": 0.1,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 3.98,
"IncrementalPorosity": {
"Value": 0.119,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 5.01,
"IncrementalPorosity": {
"Value": 0.136,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 6.31,
"IncrementalPorosity": {
"Value": 0.147,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 7.94,
"IncrementalPorosity": {
"Value": 0.148,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 10,
"IncrementalPorosity": {
"Value": 0.142,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 12.6,
"IncrementalPorosity": {
"Value": 0.143,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 15.8,
"IncrementalPorosity": {
"Value": 0.164,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 20,
"IncrementalPorosity": {
"Value": 0.217,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 25.1,
"IncrementalPorosity": {
"Value": 0.3,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 31.6,
"IncrementalPorosity": {
"Value": 0.403,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 39.8,
"IncrementalPorosity": {
"Value": 0.499,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 50.1,
"IncrementalPorosity": {
"Value": 0.559,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 63.1,
"IncrementalPorosity": {
"Value": 0.562,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 79.4,
"IncrementalPorosity": {
"Value": 0.518,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 100,
"IncrementalPorosity": {
"Value": 0.49,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 126,
"IncrementalPorosity": {
"Value": 0.595,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 158,
"IncrementalPorosity": {
"Value": 0.979,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 200,
"IncrementalPorosity": {
"Value": 1.75,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 251,
"IncrementalPorosity": {
"Value": 2.895,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 316,
"IncrementalPorosity": {
"Value": 4.217,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 398,
"IncrementalPorosity": {
"Value": 5.335,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 501,
"IncrementalPorosity": {
"Value": 5.784,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 631,
"IncrementalPorosity": {
"Value": 5.162,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 794,
"IncrementalPorosity": {
"Value": 3.267,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 1000,
"IncrementalPorosity": {
"Value": 0.139,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 1259,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 1585,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 1995,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 2512,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 3162,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 3981,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 5012,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 6310,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 7943,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
},
{
"CumulativeWaterSaturation": 100.0,
"T2FullySaturated": 10000,
"IncrementalPorosity": {
"Value": 0,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:BrineSaturation:"
}
}
],
"NMRSummaryData": {
"DisplacedFluidID": "{{DATA_PARTITION_ID}}:reference-data--DisplacedFluidType:Brine:",
"EchoSpacing": 0.2,
"InjectionFluidID": "{{DATA_PARTITION_ID}}:reference-data--SampleInjectionFluidType:Brine:",
"Porosity": [
{
"Value": 35.5,
"PorosityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PorosityMeasurementType:HeliumInjection:"
}
],
"Permeability": [
{
"Value": 4740,
"PermeabilityMeasurementTypeID": "{{DATA_PARTITION_ID}}:reference-data--PermeabilityMeasurementType:Air:"
}
],
"NMRT2Swirr": 8.7,
"T2CutOff": 44.1,
"T2Mean": 281.2,
"Temperature": 30,
"PoreVolume": 0.0,
"NetConfiningStress": 800.0
}
}
]
]
]
}'
Exemplo de resposta:
{
"ddms_urn": "urn://rafs/opendes:work-product-component--SamplesAnalysis:1c022fcfa0134607b7c3dbc26f8783cf/samplesanalysis/nmr/1.0.0/2fb9788f-043c-4f32-b9fa-29a2cb218d3a",
"updated_wpc_id": [
"opendes:work-product-component--SamplesAnalysis:1c022fcfa0134607b7c3dbc26f8783cf:1758009160406872"
]
}
5.4 Obter o conjunto de dados de análise de amostra
Para obter dados de registro, use GET /api/rafs-ddms/v2/samplesanalysis/{record_id}/data/{analysistype}/{content_id}
curl --request GET \
--url {{DNS}}/api/rafs-ddms/v2/samplesanalysis/opendes:work-product-component--SamplesAnalysis:1c022fcfa0134607b7c3dbc26f8783cf/data/nmr/2fb9788f-043c-4f32-b9fa-29a2cb218d3a \
--header 'accept: */*;version={{rafsddms-content-schema-version}}' \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}'
{
"columns": [
"SamplesAnalysisID",
"SampleID",
"Meta",
"NMRTest"
],
"index": [
0
],
"data": [
[
"opendes:work-product-component--SamplesAnalysis:1c022fcfa0134607b7c3dbc26f8783cf:",
"opendes:master-data--Sample:KKS-CORE-PLUG-001:",
[
{
"kind": "Unit",
"name": "degree Fahrenheit",
"propertyNames": [
"NMRSummaryData.Temperature"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:degF:"
},
{
"kind": "Unit",
"name": "pound-force per square inch",
"propertyNames": [
"NMRSummaryData.NetConfiningStress"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:psi:"
},
{
"kind": "Unit",
"name": "millidarcy",
"propertyNames": [
"NMRSummaryData.Permeability.Value"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:mD:"
},
{
"kind": "Unit",
"name": "cubic centimetre",
"propertyNames": [
"NMRTestSteps[*].CumulativeVolume",
"NMRTestSteps[*].IncrementalVolume",
"NMRSummaryData.BoundFluidBVI",
"NMRSummaryData.PoreVolume"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:cm3:"
},
{
"kind": "Unit",
"name": "centimetre",
"propertyNames": [
"NMRSummaryData.EchoSpacing"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:cm:"
},
{
"kind": "Unit",
"name": "milliseconds",
"propertyNames": [
"NMRTestSteps[*].T2FullySaturated",
"NMRTestSteps[*].T2PartiallySaturated",
"NMRSummaryData.T2CutOff",
"NMRSummaryData.T2Mean"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:ms:"
},
{
"kind": "Unit",
"name": "percent",
"propertyNames": [
"NMRTestSteps[*].CumulativeWaterSaturation",
"NMRTestSteps[*].CumulativePorosity.Value",
"NMRTestSteps[*].IncrementalWaterSaturation",
"NMRTestSteps[*].IncrementalPorosity.Value",
"NMRTestSteps[*].T1CumulativePorosity",
"NMRTestSteps[*].T1CumulativeWaterSaturation",
"NMRTestSteps[*].T1IncrementalPorosity",
"NMRTestSteps[*].T1IncrementalWaterSaturation",
"NMRSummaryData.NMRT2BoundFluidRelativetoPoreVolume",
"NMRSummaryData.FreeFluidFFI",
"NMRSummaryData.NMRT2FreeFluid",
"NMRSummaryData.Porosity.Value",
"NMRSummaryData.Swirr",
"NMRSummaryData.NMRT2Swirr"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:%25:"
}
],
[
{
"NMRSummaryData": {
"DisplacedFluidID": "opendes:reference-data--DisplacedFluidType:Brine:",
"EchoSpacing": 0.2,
"InjectionFluidID": "opendes:reference-data--SampleInjectionFluidType:Brine:",
"NMRT2Swirr": 8.7,
"NetConfiningStress": 800,
"Permeability": [
{
"PermeabilityMeasurementTypeID": "opendes:reference-data--PermeabilityMeasurementType:Air:",
"Value": 4740
}
],
"PoreVolume": 0,
"Porosity": [
{
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:HeliumInjection:",
"Value": 35.5
}
],
"T2CutOff": 44.1,
"T2Mean": 281.2,
"Temperature": 30
},
"NMRTestSteps": [
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.126
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.158
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.2
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.251
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.316
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.398
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.501
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.631
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.794
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.019
},
"T2FullySaturated": 1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.04
},
"T2FullySaturated": 1.26
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.057
},
"T2FullySaturated": 1.58
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.071
},
"T2FullySaturated": 2
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.085
},
"T2FullySaturated": 2.51
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.1
},
"T2FullySaturated": 3.16
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.119
},
"T2FullySaturated": 3.98
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.136
},
"T2FullySaturated": 5.01
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.147
},
"T2FullySaturated": 6.31
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.148
},
"T2FullySaturated": 7.94
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.142
},
"T2FullySaturated": 10
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.143
},
"T2FullySaturated": 12.6
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.164
},
"T2FullySaturated": 15.8
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.217
},
"T2FullySaturated": 20
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.3
},
"T2FullySaturated": 25.1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.403
},
"T2FullySaturated": 31.6
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.499
},
"T2FullySaturated": 39.8
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.559
},
"T2FullySaturated": 50.1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.562
},
"T2FullySaturated": 63.1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.518
},
"T2FullySaturated": 79.4
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.49
},
"T2FullySaturated": 100
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.595
},
"T2FullySaturated": 126
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.979
},
"T2FullySaturated": 158
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 1.75
},
"T2FullySaturated": 200
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 2.895
},
"T2FullySaturated": 251
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 4.217
},
"T2FullySaturated": 316
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 5.335
},
"T2FullySaturated": 398
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 5.784
},
"T2FullySaturated": 501
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 5.162
},
"T2FullySaturated": 631
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 3.267
},
"T2FullySaturated": 794
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.139
},
"T2FullySaturated": 1000
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 1259
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 1585
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 1995
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 2512
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 3162
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 3981
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 5012
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 6310
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 7943
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 10000
}
],
"TestConditionID": "opendes:reference-data--NMRTestCondition:FullySaturated:"
}
]
]
]
}
Pesquisar dados de análise de amostra
Para pesquisar dados de uma versão específica do esquema DDMS do RAFS, use GET /api/rafs-ddms/v2/samplesanalysis/{analysistype}/search/data
curl --request GET \
--url {DNS}/api/rafs-ddms/v2/samplesanalysis/nmr/search/data \
--header 'accept: */*;version={{rafsddms-content-schema-version}}' \
--header 'authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'cache-control: no-store' \
--header 'content-type: application/json' \
--header 'data-partition-id: {{DATA_PARTITION_ID}}'
Exemplo de resposta:
{
"result": {
"columns": [
"SamplesAnalysisID",
"SampleID",
"Meta",
"NMRTest"
],
"index": [
0
],
"data": [
[
"opendes:work-product-component--SamplesAnalysis:1c022fcfa0134607b7c3dbc26f8783cf:",
"opendes:master-data--Sample:KKS-CORE-PLUG-001:",
[
{
"kind": "Unit",
"name": "degree Fahrenheit",
"propertyNames": [
"NMRSummaryData.Temperature"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:degF:"
},
{
"kind": "Unit",
"name": "pound-force per square inch",
"propertyNames": [
"NMRSummaryData.NetConfiningStress"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:psi:"
},
{
"kind": "Unit",
"name": "millidarcy",
"propertyNames": [
"NMRSummaryData.Permeability.Value"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:mD:"
},
{
"kind": "Unit",
"name": "cubic centimetre",
"propertyNames": [
"NMRTestSteps[*].CumulativeVolume",
"NMRTestSteps[*].IncrementalVolume",
"NMRSummaryData.BoundFluidBVI",
"NMRSummaryData.PoreVolume"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:cm3:"
},
{
"kind": "Unit",
"name": "centimetre",
"propertyNames": [
"NMRSummaryData.EchoSpacing"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:cm:"
},
{
"kind": "Unit",
"name": "milliseconds",
"propertyNames": [
"NMRTestSteps[*].T2FullySaturated",
"NMRTestSteps[*].T2PartiallySaturated",
"NMRSummaryData.T2CutOff",
"NMRSummaryData.T2Mean"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:ms:"
},
{
"kind": "Unit",
"name": "percent",
"propertyNames": [
"NMRTestSteps[*].CumulativeWaterSaturation",
"NMRTestSteps[*].CumulativePorosity.Value",
"NMRTestSteps[*].IncrementalWaterSaturation",
"NMRTestSteps[*].IncrementalPorosity.Value",
"NMRTestSteps[*].T1CumulativePorosity",
"NMRTestSteps[*].T1CumulativeWaterSaturation",
"NMRTestSteps[*].T1IncrementalPorosity",
"NMRTestSteps[*].T1IncrementalWaterSaturation",
"NMRSummaryData.NMRT2BoundFluidRelativetoPoreVolume",
"NMRSummaryData.FreeFluidFFI",
"NMRSummaryData.NMRT2FreeFluid",
"NMRSummaryData.Porosity.Value",
"NMRSummaryData.Swirr",
"NMRSummaryData.NMRT2Swirr"
],
"unitOfMeasureID": "opendes:reference-data--UnitOfMeasure:%25:"
}
],
[
{
"NMRSummaryData": {
"DisplacedFluidID": "opendes:reference-data--DisplacedFluidType:Brine:",
"EchoSpacing": 0.2,
"InjectionFluidID": "opendes:reference-data--SampleInjectionFluidType:Brine:",
"NMRT2Swirr": 8.7,
"NetConfiningStress": 800,
"Permeability": [
{
"PermeabilityMeasurementTypeID": "opendes:reference-data--PermeabilityMeasurementType:Air:",
"Value": 4740
}
],
"PoreVolume": 0,
"Porosity": [
{
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:HeliumInjection:",
"Value": 35.5
}
],
"T2CutOff": 44.1,
"T2Mean": 281.2,
"Temperature": 30
},
"NMRTestSteps": [
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.126
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.158
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.2
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.251
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.316
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.398
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.501
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.631
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 0.794
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.019
},
"T2FullySaturated": 1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.04
},
"T2FullySaturated": 1.26
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.057
},
"T2FullySaturated": 1.58
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.071
},
"T2FullySaturated": 2
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.085
},
"T2FullySaturated": 2.51
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.1
},
"T2FullySaturated": 3.16
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.119
},
"T2FullySaturated": 3.98
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.136
},
"T2FullySaturated": 5.01
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.147
},
"T2FullySaturated": 6.31
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.148
},
"T2FullySaturated": 7.94
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.142
},
"T2FullySaturated": 10
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.143
},
"T2FullySaturated": 12.6
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.164
},
"T2FullySaturated": 15.8
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.217
},
"T2FullySaturated": 20
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.3
},
"T2FullySaturated": 25.1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.403
},
"T2FullySaturated": 31.6
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.499
},
"T2FullySaturated": 39.8
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.559
},
"T2FullySaturated": 50.1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.562
},
"T2FullySaturated": 63.1
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.518
},
"T2FullySaturated": 79.4
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.49
},
"T2FullySaturated": 100
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.595
},
"T2FullySaturated": 126
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.979
},
"T2FullySaturated": 158
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 1.75
},
"T2FullySaturated": 200
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 2.895
},
"T2FullySaturated": 251
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 4.217
},
"T2FullySaturated": 316
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 5.335
},
"T2FullySaturated": 398
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 5.784
},
"T2FullySaturated": 501
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 5.162
},
"T2FullySaturated": 631
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 3.267
},
"T2FullySaturated": 794
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0.139
},
"T2FullySaturated": 1000
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 1259
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 1585
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 1995
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 2512
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 3162
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 3981
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 5012
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 6310
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 7943
},
{
"CumulativeWaterSaturation": 100,
"IncrementalPorosity": {
"PorosityMeasurementTypeID": "opendes:reference-data--PorosityMeasurementType:BrineSaturation:",
"Value": 0
},
"T2FullySaturated": 10000
}
],
"TestConditionID": "opendes:reference-data--NMRTestCondition:FullySaturated:"
}
]
]
]
},
"offset": 0,
"page_limit": 100,
"total_size": 1
}
Solução de problemas
Para resolver problemas, reveja os OEPDataplaneLogs registos de diagnóstico no espaço de trabalho do Log Analytics. Esses logs fornecem informações detalhadas sobre as operações DDMS do RAFS e podem ajudar a identificar erros ou comportamentos inesperados. No portal do Azure, navegue até o recurso do Azure Data Manager for Energy, selecione Configurações de diagnóstico na seção Monitoramento e escolha a Rock and Fluid Samples DDMS Logs categoria.
Exemplo de consulta Kusto:
OEPDataplaneLogs
| where Category == "RafsDdmsLogs"
| project TenantId, TimeGenerated, Message, _ResourceId
Exemplo de resposta Kusto:
| Id de Inquilino | TempoGerado [UTC] | Message | _ResourceId (ID de recurso) |
|---|---|---|---|
| aaaabbbb-0000-cccc-1111-dddd2222eeee | 2025-10-21 13:33:12.495 | 2025-10-21 13:33:12,495 [11][INFO] --- {correlation-id=rafs-ddms-7f9c2e1a-4b2d-4e3a-8c1d-9a2b3c4d5e6f} uvicorn.access: 127.0.0.6:32997 - "GET /api/rafs-ddms/healthz HTTP/1.1" 200 | /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e4e/resourcegroups/test-rg/providers/microsoft.openenergyplatform/energyservices/adme-instance |
Conteúdo relacionado
Tutorial da comunidade RAFS OSDU
Próximo passo
Avance para o tutorial seguinte: