Appropriate Resource (if any) for Tree Lists

Looking for some guidance for the community to determine if there is an appropriate standard resource that I am overlooking, as I don’t see one in the standard that fits this without adding significant customizations. I have a healthcare API that when called returns a list of codes, descriptions, and criteria necessary to apply those codes. Values returned in this list list may vary between patients and thus is not a static list that never changes across the entire population, however a patient is never referenced in the actual data set. I would like to move this into a FHIR format if applicable rather than my current proprietary format. Are there any recommended resources to list these in FHIR format since they are not just key/value pairs. I’m open to using extensions but I prefer minimize the use of extensions a much as possible.

An example of the dataset for illustration purposes is below. This is not a real list, just something mocked up quickly to demonstrate the data set I’m describing I’d like to communicate with sub items that also have their own individual criteria

Code 58410-2
Description: CBC
Criteria:
   -Patient must be between ages of 18-25
   -Patient must not be receiving blood thinner
   -(0-*) other critiera.

Code: 523414 
Description: Basic Metabolic Panel
Criteria: Patient must have not received a meal within the last 2 hours.
SubTests (choose 0.* based on criteria)
 
      -Code: 523414-1
      -Description: Gluclose
      -Criteria: Patient must not by hyperglycemic

      -Code: 523423-2
      -Description: Creatinine
      -Criteria: Patient must not be receiving IV fluids



Code 24353-5
Description: Sodium
Criteria:
   -Patient must have not have a meal scheduled in the system within the last x hours
   -Patient must not be hyperglycemic

What I’m seeing in the list doesn’t seem to be patient-specific, nor am I seeing a ‘tree’ nature to it. It seems like the example could be handled as a simple search result against PlanDefinition, which is where FHIR would represent protocols and criteria.

Hey lloyd,
Thanks for the reply. I’ll definitely review PlanDefinition. I apologize I didn’t make the tree logic clear in my last example, so I did update the example to add an example of the tree type logic (Although its not a good example, it illustrates the structure).

Regarding patient specific data, its nothing that needs to be reflected in the FHIR data payload, just wanted to call out that the data is not a static data set each time it is accessed, it can change.

Ok. The other thing you might look at is ObservationDefinition. It doesn’t have a mechanism for capturing criteria (an extension might be possible), but does allow you to reflect the hierarchy of observation panels as well as complex observations having components.