Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

US Core v6.1.0 - 10.32.07: All must support elements are provided in the Observation resources returned (Screening Assessment) #606

Open
neharastogi opened this issue Jan 9, 2025 · 3 comments

Comments

@neharastogi
Copy link

Inferno is skipping this test with the message - Could not find valueQuantity, valueCodeableConcept, valueString in the 1 provided Observation resource(s)
This is the Observation that is returned in the first search -

{
  "resourceType": "Bundle",
  "type": "searchset",
  "total": 1,
  "entry": [
    {
      "fullUrl": "https://fhir.staging.flatiron.io/fhir/Observation/201.PD--0668TDV3YQ91W9XR8X5R.24",
      "resource": {
        "resourceType": "Observation",
        "id": "201.PD--0668TDV3YQ91W9XR8X5R.24",
        "meta": {
          "profile": [
            "http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-screening-assessment"
          ]
        },
        "status": "final",
        "category": [
          {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                "code": "survey",
                "display": "Survey"
              }
            ],
            "text": "Survey"
          },
          {
            "coding": [
              {
                "system": "http://hl7.org/fhir/us/core/CodeSystem/us-core-category",
                "code": "sdoh"
              }
            ]
          }
        ],
        "code": {
          "coding": [
            {
              "code": "96777-8",
              "display": "Accountable health communities (AHC) health-related social needs screening (HRSN) tool"
            }
          ],
          "text": "AHC Health-Related Social Needs Screening Tool"
        },
        "subject": {
          "reference": "Patient/PD--0668TDV3YQ91W9XR8X5R.GH--0648TB2T5CQNQGR2WQQP",
          "type": "Patient"
        },
        "effectiveDateTime": "2024-07-16T21:37:38+00:00",
        "performer": [
          {
            "reference": "Practitioner/UH-B9BLPMQD214KFAE4X35KLT.GH--0648TB2T5CQNQGR2WQQP",
            "type": "Practitioner"
          }
        ],
        "hasMember": [
          {
            "reference": "Observation/755.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/756.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/757.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/758.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/759.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/760.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/761.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/762.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/763.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/764.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/765.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          },
          {
            "reference": "Observation/766.PD--0668TDV3YQ91W9XR8X5R.25",
            "type": "Observation"
          }
        ],
        "derivedFrom": [
          {
            "reference": "QuestionnaireResponse/201.PD--0668TDV3YQ91W9XR8X5R",
            "type": "QuestionnaireResponse"
          }
        ]
      },
      "search": {
        "mode": "match"
      }
    }
  ]
}

And according to the guidance, Observation.value[x] would not be needed if Observation.hasMember is present ( which is present here )
Also attaching the screenshots from the guidance.
Screenshot 2025-01-09 at 12 37 33 PM
and -
{B3C26F45-D6BC-453A-AC8E-264CD643F374}
and -
{DBF70966-88B0-4AC4-9D2A-90C3ED236893}

Can you please let us know what we are missing here?

@yunwwang
Copy link
Contributor

yunwwang commented Jan 9, 2025

Hello @neharastogi :

Thank you for reaching out to the Inferno team.

There are two different sets of requirements for each profile:

  • Validation Requirements: These relate to the validation of each resource.
  • Must Support Requirements: These relate to the server's capability to support specific elements.

What you mentioned - "Observation.value[x] would not be needed if Observation.hasMember is present" - is correct for validations. Each Screening and Assessment Observation resource SHALL have either hasMember or value[x] to pass the validation test. This is addressed in Inferno Test 10.32.06.

Test 10.32.07, on the other hand, verifies the server’s capability to populate Observation.value[x]. To meet this requirement, the server must return at least one resource where the Must Support element is populated with a reasonable value.

For more details about Inferno’s Must Support testing logic, you can refer to this FAQ.

@neharastogi
Copy link
Author

Thanks a lot @yunwwang .
Also to confirm that we need to surface Observation.value[x] in the search results by 10.32.01 ?

@yunwwang
Copy link
Contributor

yunwwang commented Jan 13, 2025

Yes these need to be returned, at least, in the first search test. Also keep in mind that the value[x] has three must supported date types: Quantity, CodeableConcept, and string. So the server need to returned at least three Observation resources for these three different data types.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants