Skip to content

HeyDonto FHIR R4 API - Clinical Reasoning (1.0)

The Clinical Reasoning module provides resources and operations to enable the representation, distribution, and evaluation of clinical knowledge artifacts such as clinical decision support rules, quality measures, public health indicators, order sets, and clinical protocols. In addition, the module describes how expression languages can be used throughout the specification to provide dynamic capabilities.

Clinical Reasoning involves the ability to represent and encode clinical knowledge in a very broad sense so that it can be integrated into clinical systems. This encoding may be as simple as controlling whether or not a particular section of an order set appears based on the conditions that a patient has, or it may be as complex as representing the care pathway for a patient with multiple conditions.


Scope

The Clinical Reasoning module focuses on enabling two primary use cases:

  1. Sharing - The ability to represent clinical knowledge artifacts such as decision support rules, order sets, clinical protocols, and quality measures, and to do so in a way that enables those artifacts to be shared across all organizations involved in care management and delivery

  2. Evaluation - The ability to evaluate clinical knowledge artifacts in the context of a specific patient or population, including the ability to request decision support guidance, impact clinical workflow, and retrospectively assess clinical quality metrics

To enable these use cases, the module defines several components that can each be used independently, or combined to enable more complex functionality:

  • Expression Logic - the representation of logic using languages such as FHIRPath and Clinical Quality Language (CQL)
  • Definitional Resources - resources that are not defined on any specific patient, but are used to define the actions to be performed as part of a clinical knowledge artifact such as an order set or decision support rule. These resources can be used directly, or with profiles to provide intended structure for specific types of resources
  • Knowledge Artifacts - representation of clinical knowledge such as decision support rules and clinical quality measures

Index

Resources

  • ActivityDefinition - A resource to represent definitional resources
  • DataRequirement - A data type that represents a general data requirement for a knowledge asset such as a decision support rule or quality measure
  • GuidanceResponse - Represents the result from invoking a decision support service
  • Library - Provides a container for knowledge artifacts that includes logic libraries, model definitions, and asset collections
  • Measure - Represents a clinical quality measure and provides evaluation through the $evaluate-measure operation
  • MeasureReport - Represents the response to a specific measure evaluation request returned by the $evaluate-measure operation
  • PlanDefinition - Represents the description of a plan for accomplishing a particular goal. This resource is used to represent a broad variety of clinical knowledge artifacts including decision support rules, order sets, and protocols
  • RequestGroup - Represents a group of options for a particular subject that can be used to accomplish a particular goal. This resource is often, but not always, the result of applying a PlanDefinition to a particular patient

Key Extensions

  • cdsHooksEndpoint - An extension applied to a PlanDefinition to indicate that it provides the behavior for a CDS Hooks service endpoint
  • expression - A general purpose extension that supports the use of languages such as FHIRPath and Clinical Quality Language within FHIR
  • library - A general purpose extension that supports the declaration of dependencies that can be accessed by expression logic
  • measureInfo - An extension that can be applied to resources to indicate the measure criteria they satisfy
  • qualityOfEvidence - An extension that can be applied to indicate the quality of evidence in support of a particular artifact or recommendation
  • strengthOfRecommendation - An extension that can be applied to indicate the strength of a recommendation

Profiles

  • Shareable ActivityDefinition - Enforces the minimum information set for the activity definition metadata required by HL7 and other organizations that share and publish activity definitions
  • CQF-Questionnaire - Defines extensions to the base Questionnaire that allow it to be used as a DocumentationTemplate with behavior specified via logic in CQL libraries
  • CDS Hooks GuidanceResponse - Defines a GuidanceResponse that represents the response container for a CDS Hooks response
  • Shareable Library - Enforces the minimum information set for the library metadata required by HL7 and other organizations that share and publish libraries
  • CQL Library - Represents a CQL logic library
  • Shareable Measure - Enforces the minimum information set for the measure metadata required by HL7 and other organizations that share and publish measures
  • Shareable PlanDefinition - Enforces the minimum information set for the plan definition metadata required by HL7 and other organizations that share and publish plan definitions
  • Computable PlanDefinition - Defines a computable PlanDefinition that specifies a single library and requires all expressions referenced from the PlanDefinition to be definitions in that single library

Services


Topics

For detailed guidance on specific topics within the Clinical Reasoning module:


Audience

  • Knowledge Authors - This module describes an approach to representing knowledge artifacts within FHIR
  • Knowledge Content Providers - This module defines search functionality for using a FHIR server as a knowledge artifact repository
  • Knowledge Evaluation Service Providers - This module defines operations and profiles in support of evaluating quality measures and defining and using CDS Hooks services
  • Knowledge Evaluation Service Consumers - This module defines the expected available operations and behavior of a knowledge evaluation service

Security and Privacy

Because Knowledge Artifacts are typically patient-independent, many of the resources in the clinical reasoning module have no patient security and privacy concerns beyond the normal sensitivity that should be paid in any electronic healthcare system environment. However, the evaluation use case, including decision support guidance request/response, as well as quality measure evaluation have significant patient security and privacy concerns.

For the clinical decision support evaluation use case, as with any patient-specific information, care should be taken to ensure that the request and response are properly secured both at rest and in-motion, and that all access to the patient's information is done via a properly authenticated and authorized mechanism. This is particularly true of decision support artifacts where the logic is ingested as part of the definition of the artifact. In this scenario, the evaluation engine must ensure that data access within the ingested logic is subject to the same authentication and authorization requirements as any other access.

For guidance services that receive patient information, ensure that logging and auditing trails do not inadvertently compromise patient privacy and security by logging potentially sensitive information in an unencrypted way. In addition, guidance and recommendations returned from the service must ensure that content that contains patient information is clearly indicated so that consuming clients can take the appropriate care in integrating and displaying the resulting guidance.

For quality measure evaluation, individual and patient-list reports have the potential to contain large amounts of patient information. Care must be taken to ensure the patient information is only accessible to properly authenticated and authorized agents, and that inadvertent breaches are minimized by following appropriate logging and auditing protocols.

In particular, because expression languages, depending on their power and scope, can provide the ability to access large amounts of data, as well as the potential for infinite recursion or looping, care should be taken to ensure that implementations adequately safeguard against Denial-of-Service-style attacks that leverage these capabilities to compromise systems by overloading capacity.

For more general considerations, see the Security and Privacy module.


Background

The FHIR Clinical Reasoning module is sponsored by the Clinical Decision Support (CDS) and Clinical Quality Information (CQI) HL7 Work Groups, with input and coordination from the FHIR Infrastructure and Service Oriented Architecture HL7 Work Groups.

The guidance in this module was prepared as a Universal Realm Specification with support from the Clinical Quality Framework (CQF) initiative, which was a public-private partnership sponsored by the Centers for Medicare & Medicaid Services (CMS) and the U.S. Office of the National Coordinator for Health Information Technology (ONC) to identify, develop, and harmonize standards for clinical decision support and electronic clinical quality measurement.

The Clinical Quality Framework is focused on harmonizing the historically disjointed specifications used by the Clinical Quality Measurement and Clinical Decision Support communities. The strategy employed has been to break the conceptual content of knowledge artifacts into three core components:

  • Metadata - Descriptive information about the artifact and its content
  • Clinical Information - Information about a patient or population of concern within a given artifact
  • Logic - The clinical reasoning involved in an artifact

Clinical Quality Framework Conceptual Components

The first component has resulted in the Clinical Quality Common Metadata Conceptual Model, an informative document harmonizing metadata requirements between Quality Measurement and Decision Support artifacts.

The second component has resulted in the QUICK Conceptual and Logical Models, a harmonization of the Virtual Medical Record (vMR) used in Decision Support and the Quality Data Model (QDM) used in Quality Measurement, with its core requirements realized in FHIR as the Quality Improvement Core (QICore) profiles.

The third component has resulted in the Clinical Quality Language specification, a harmonization of the expressive capabilities of the Clinical Decision Support Knowledge Artifact Specification (CDS KAS) and the Health Quality Measures Format (HQMF).

This module continues the harmonization of quality domain specifications by defining an approach to using a FHIR server as a component of a knowledge system in both the Knowledge Repository and Knowledge Evaluation Service roles.


Developmental Roadmap

The resources defined for the Clinical Reasoning module are the result of the combined efforts of multiple communities working on the shared goal of harmonized standards and specifications for clinical decision support and quality measurement artifacts. The current state of the module reflects changes incorporated both from previous ballots on the FHIR-specific material, as well as content derived from several other balloted specifications in the CDS and CQM domains.

The use of Clinical Quality Language (CQL) as a foundational mechanism for representing clinical quality logic enables decision support and quality measurement artifacts to share common definitions. For example, a Chlamydia Screening measure and related decision support artifacts can share a common library that describes the criteria for detecting when Chlamydia Screening is required in a patient.

Over the past year of trial use, the Clinical Reasoning module has been used in both the quality measurement and decision support domains to represent, exchange, and evaluate knowledge artifacts. The goals of the module are to provide a stable basis for implementation of the sharing use case, as well as unification with the CDS Hooks specification in support of the evaluation use case. The Clinical Quality Framework Initiative will use these resources as the basis for implementation projects, targeting an FMM level of 3 or 4 for all module resources.

Overview
Languages
Servers
Mock server

https://docs.heydonto.com/_mock/apis/fhir/clinical-reasoning/

Sandbox

https://api-staging.heydonto.com/

Production

https://api.heydonto.com/

Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations

Request

Security
bearer or bearer
Path
siteIdstringrequired

Site identifier

Query
_countnumber

Number of items to return (default=20).

Example: _count=10
_page_tokenstring

Token for fetching the next page of results.

Example: _page_token=CgYK...
_sortstring

Sort the results by a given field, e.g. _sort=family or _sort=-date.

Example: _sort=family
_elementsstring

Restrict returned fields, e.g. _elements=identifier,name.

Example: _elements=identifier,name
telecomstring

Filter by resource telecom, e.g. date=[SYSTEM]|[VALUE].

Example: telecom=telecom=phone|555-555-5555
_idstring

Search for a specific resource by ID, e.g. _id=abc123.

Example: _id=abc123
identifierstring

Search for resources by identifier token, e.g. identifier=http://hospital.org|12345.

Example: identifier=http://hospital.org|12345
_includeArray of strings

Include related resources, e.g. _include=Appointment:patient.

patientstring

Include related patient resources, e.g. patient=Patient/[id]&.

Example: patient=patient=Patient/[id]&
_revincludeArray of strings

Reverse include related resources, e.g. _revinclude=Observation:subject.

_hasstring

Reverse chaining, e.g. _has:Observation:subject:code=http://loinc.org|1234-5.

Example: _has=Observation:subject:code=http://loinc.org|1234-5
_tagstring

Search by tag on the resource meta, e.g. _tag=http://example.org/tags|sample-tag.

Example: _tag=http://example.org/tags|sample-tag
_securitystring

Search by security label on resource meta, e.g. _security=RBAC|CONFIDENTIAL.

Example: _security=RBAC|CONFIDENTIAL
_profilestring

Search by profile in resource meta, e.g. _profile=http://example.org/fhir/StructureDefinition/custom-profile.

Example: _profile=http://example.org/fhir/StructureDefinition/custom-profile
curl -i -X GET \
  'https://docs.heydonto.com/_mock/apis/fhir/clinical-reasoning/site/{siteId}/fhir/research-definition?_count=10&_page_token=CgYK...&_sort=family&_elements=identifier%2Cname&telecom=telecom%3Dphone%2C555-555-5555&_id=abc123&identifier=http%3A%2F%2Fhospital.org%2C12345&_include=string&patient=patient%3DPatient%2F%5Bid%5D%26&_revinclude=string&_has=Observation%3Asubject%3Acode%3Dhttp%3A%2F%2Floinc.org%2C1234-5&_tag=http%3A%2F%2Fexample.org%2Ftags%2Csample-tag&_security=RBAC%2CCONFIDENTIAL&_profile=http%3A%2F%2Fexample.org%2Ffhir%2FStructureDefinition%2Fcustom-profile' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Bodyapplication/json
resourceTypeanyrequired

This is a Bundle resource

Value"Bundle"
Example: "Bundle"
idstring(id)^[A-Za-z0-9\-\.]{1,64}$

Any combination of letters, numerals, "-" and ".", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive.

Example: "example-id"
metaobject(Meta)

The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

implicitRulesstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_implicitRulesobject(Element)

Base definition for all elements in a resource.

languagestring(code)^[^\s]+(\s[^\s]+)*$

A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents

Example: "sample-code"
_languageobject(Element)

Base definition for all elements in a resource.

identifierobject(Identifier)

An identifier - identifies some entity uniquely and unambiguously. Typically this is used for business identifiers.

typeany

Indicates the purpose of this bundle - how it is intended to be used.

Enum"document""message""transaction""transaction-response""batch""batch-response""history""searchset""collection"
Example: "searchset"
_typeobject(Element)

Base definition for all elements in a resource.

timestampstring(date-time)(instant)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

An instant in time - known at least to the second

Example: "2024-01-01T00:00:00Z"
_timestampobject(Element)

Base definition for all elements in a resource.

totalnumber(unsignedInt)^[0]|([1-9][0-9]*)$

An integer with a value that is not negative (e.g. >= 0)

Example: 0
_totalobject(Element)

Base definition for all elements in a resource.

linkArray of objects(Bundle_Link)

A series of links that provide context to this bundle.

Example: [{"relation":"search","url":"https://api.heydonto.com/fhir/research-definition/?_count=20"},{"relation":"next","url":"https://api.heydonto.com/fhir/research-definition/?_count=20&_page_token=TOKEN"},{"relation":"first","url":"https://api.heydonto.com/fhir/research-definition/?_count=20"},{"relation":"self","url":"https://api.heydonto.com/fhir/research-definition/?_count=20"}]
entryArray of objects(ResearchDefinition)

An entry in a bundle resource - will either contain a resource or information about a resource (transactions and history only).

Example: [{"resourceType":"ResearchDefinition","id":"example","text":{"status":"generated","div":"<div xmlns=\"http://www.w3.org/1999/xhtml\">[Put rendering here]</div>"},"status":"draft","population":{"reference":"ResearchElementDefinition/example"}}]
signatureobject(Signature)

A signature along with supporting context. The signature may be a digital signature that is cryptographic in nature, or some other signature acceptable to the domain. This other signature may be as simple as a graphical image representing a hand-written signature, or a signature ceremony Different signature approaches have different utilities.

Response
application/json
{ "resourceType": "Bundle", "type": "searchset", "total": 100, "link": [ { … }, { … }, { … }, { … } ], "entry": [ { … } ] }

Create FHIR r4 research definition

Request

Security
bearer or bearer
Path
siteIdstringrequired

Site identifier

Bodyapplication/jsonrequired
resourceTypeanyrequired

This is a ResearchDefinition resource

Value"ResearchDefinition"
Example: "ResearchDefinition"
idstring(id)^[A-Za-z0-9\-\.]{1,64}$

Any combination of letters, numerals, "-" and ".", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive.

Example: "example-id"
metaobject(Meta)

The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

implicitRulesstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_implicitRulesobject(Element)

Base definition for all elements in a resource.

languagestring(code)^[^\s]+(\s[^\s]+)*$

A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents

Example: "sample-code"
_languageobject(Element)

Base definition for all elements in a resource.

textobject(Narrative)

A human-readable summary of the resource conveying the essential clinical and business information for the resource.

containedArray of #Account (object) or #ActivityDefinition (object) or #AdverseEvent (object) or #AllergyIntolerance (object) or #Appointment (object) or #AppointmentResponse (object) or #AuditEvent (object) or #Basic (object) or #Binary (object) or #BiologicallyDerivedProduct (object) or #BodyStructure (object) or #Bundle (object) or #CapabilityStatement (object) or #CarePlan (object) or #CareTeam (object) or #CatalogEntry (object) or #ChargeItem (object) or #ChargeItemDefinition (object) or #Claim (object) or #ClaimResponse (object) or #ClinicalImpression (object) or #CodeSystem (object) or #Communication (object) or #CommunicationRequest (object) or #CompartmentDefinition (object) or #Composition (object) or #ConceptMap (object) or #Condition (object) or #Consent (object) or #Contract (object) or #Coverage (object) or #CoverageEligibilityRequest (object) or #CoverageEligibilityResponse (object) or #DetectedIssue (object) or #Device (object) or #DeviceDefinition (object) or #DeviceMetric (object) or #DeviceRequest (object) or #DeviceUseStatement (object) or #DiagnosticReport (object) or #DocumentManifest (object) or #DocumentReference (object) or #EffectEvidenceSynthesis (object) or #Encounter (object) or #Endpoint (object) or #EnrollmentRequest (object) or #EnrollmentResponse (object) or #EpisodeOfCare (object) or #EventDefinition (object) or #Evidence (object) or #EvidenceVariable (object) or #ExampleScenario (object) or #ExplanationOfBenefit (object) or #FamilyMemberHistory (object) or #Flag (object) or #Goal (object) or #GraphDefinition (object) or #Group (object) or #GuidanceResponse (object) or #HealthcareService (object) or #ImagingStudy (object) or #Immunization (object) or #ImmunizationEvaluation (object) or #ImmunizationRecommendation (object) or #ImplementationGuide (object) or #InsurancePlan (object) or #Invoice (object) or #Library (object) or #Linkage (object) or #List (object) or #Location (object) or #Measure (object) or #MeasureReport (object) or #Media (object) or #Medication (object) or #MedicationAdministration (object) or #MedicationDispense (object) or #MedicationKnowledge (object) or #MedicationRequest (object) or #MedicationStatement (object) or #MedicinalProduct (object) or #MedicinalProductAuthorization (object) or #MedicinalProductContraindication (object) or #MedicinalProductIndication (object) or #MedicinalProductIngredient (object) or #MedicinalProductInteraction (object) or #MedicinalProductManufactured (object) or #MedicinalProductPackaged (object) or #MedicinalProductPharmaceutical (object) or #MedicinalProductUndesirableEffect (object) or #MessageDefinition (object) or #MessageHeader (object) or #MolecularSequence (object) or #NamingSystem (object) or #NutritionOrder (object) or #Observation (object) or #ObservationDefinition (object) or #OperationDefinition (object) or #OperationOutcome (object) or #Organization (object) or #OrganizationAffiliation (object) or #Parameters (object) or #Patient (object) or #PaymentNotice (object) or #PaymentReconciliation (object) or #Person (object) or #PlanDefinition (object) or #Practitioner (object) or #PractitionerRole (object) or #Procedure (object) or #Provenance (object) or #Questionnaire (object) or #QuestionnaireResponse (object) or #RelatedPerson (object) or #RequestGroup (object) or #ResearchDefinition (object) or #ResearchElementDefinition (object) or #ResearchStudy (object) or #ResearchSubject (object) or #RiskAssessment (object) or #RiskEvidenceSynthesis (object) or #Schedule (object) or #SearchParameter (object) or #ServiceRequest (object) or #Slot (object) or #Specimen (object) or #SpecimenDefinition (object) or #StructureDefinition (object) or #StructureMap (object) or #Subscription (object) or #Substance (object) or #SubstanceNucleicAcid (object) or #SubstancePolymer (object) or #SubstanceProtein (object) or #SubstanceReferenceInformation (object) or #SubstanceSourceMaterial (object) or #SubstanceSpecification (object) or #SupplyDelivery (object) or #SupplyRequest (object) or #Task (object) or #TerminologyCapabilities (object) or #TestReport (object) or #TestScript (object) or #ValueSet (object) or #VerificationResult (object) or #VisionPrescription (object)(ResourceList)

These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

extensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

modifierExtensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

urlstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_urlobject(Element)

Base definition for all elements in a resource.

identifierArray of objects(Identifier)

A formal identifier that is used to identify this research definition when it is represented in other formats, or referenced in a specification, model, design or an instance.

versionstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_versionobject(Element)

Base definition for all elements in a resource.

namestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_nameobject(Element)

Base definition for all elements in a resource.

titlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_titleobject(Element)

Base definition for all elements in a resource.

shortTitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_shortTitleobject(Element)

Base definition for all elements in a resource.

subtitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_subtitleobject(Element)

Base definition for all elements in a resource.

statusany

The status of this research definition. Enables tracking the life-cycle of the content.

Enum"draft""active""retired""unknown"
Example: "draft"
_statusobject(Element)

Base definition for all elements in a resource.

experimentalboolean(boolean)^true|false$

Value of "true" or "false"

Example: true
_experimentalobject(Element)

Base definition for all elements in a resource.

subjectCodeableConceptobject(CodeableConcept)

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

subjectReferenceobject(Reference)

A reference from one resource to another.

datestring(date-time)(dateTime)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates.

Example: "2024-01-01T00:00:00Z"
_dateobject(Element)

Base definition for all elements in a resource.

publisherstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_publisherobject(Element)

Base definition for all elements in a resource.

contactArray of objects(ContactDetail)

Contact details to assist a user in finding and communicating with the publisher.

descriptionstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_descriptionobject(Element)

Base definition for all elements in a resource.

commentArray of strings(string)

A human-readable string to clarify or explain concepts about the resource.

Example: ["example-string"]
_commentArray of objects(Element)

Extensions for comment

useContextArray of objects(UsageContext)

The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate research definition instances.

jurisdictionArray of objects(CodeableConcept)

A legal or geographic region in which the research definition is intended to be used.

purposestring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_purposeobject(Element)

Base definition for all elements in a resource.

usagestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_usageobject(Element)

Base definition for all elements in a resource.

copyrightstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_copyrightobject(Element)

Base definition for all elements in a resource.

approvalDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_approvalDateobject(Element)

Base definition for all elements in a resource.

lastReviewDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_lastReviewDateobject(Element)

Base definition for all elements in a resource.

effectivePeriodobject(Period)

A time period defined by a start and end date and optionally time.

topicArray of objects(CodeableConcept)

Descriptive topics related to the content of the ResearchDefinition. Topics provide a high-level categorization grouping types of ResearchDefinitions that can be useful for filtering and searching.

authorArray of objects(ContactDetail)

An individiual or organization primarily involved in the creation and maintenance of the content.

editorArray of objects(ContactDetail)

An individual or organization primarily responsible for internal coherence of the content.

reviewerArray of objects(ContactDetail)

An individual or organization primarily responsible for review of some aspect of the content.

endorserArray of objects(ContactDetail)

An individual or organization responsible for officially endorsing the content for use in some setting.

relatedArtifactArray of objects(RelatedArtifact)

Related artifacts such as additional documentation, justification, or bibliographic references.

libraryArray of strings(canonical)

A reference to a Library resource containing the formal logic used by the ResearchDefinition.

Example: ["http://example.org/Profile"]
populationobject(Reference)required

A reference from one resource to another.

population.​idstring

An extension object type #string.

Example: "example-string"
population.​extensionArray of objects(#Extension)

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

population.​referencestring

An extension object type #string.

Example: "example-string"
population.​_referenceobject(#Element)

An extension object type #Element.

population.​typestring

An extension object type #uri.

Example: "https://example.org/resource"
population.​_typeobject(#Element)

An extension object type #Element.

population.​identifierobject(#Identifier)

An extension object type #Identifier.

population.​displaystring

An extension object type #string.

Example: "example-string"
population.​_displayobject(#Element)

An extension object type #Element.

exposureobject(Reference)

A reference from one resource to another.

exposureAlternativeobject(Reference)

A reference from one resource to another.

outcomeobject(Reference)

A reference from one resource to another.

curl -i -X POST \
  'https://docs.heydonto.com/_mock/apis/fhir/clinical-reasoning/site/{siteId}/fhir/research-definition' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "resourceType": "ResearchDefinition",
    "id": "example",
    "text": {
      "status": "generated",
      "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">[Put rendering here]</div>"
    },
    "status": "draft",
    "population": {
      "reference": "ResearchElementDefinition/example"
    }
  }'

Responses

Bodyapplication/json
resourceTypeanyrequired

This is a ResearchDefinition resource

Value"ResearchDefinition"
Example: "ResearchDefinition"
idstring(id)^[A-Za-z0-9\-\.]{1,64}$

Any combination of letters, numerals, "-" and ".", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive.

Example: "example-id"
metaobject(Meta)

The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

implicitRulesstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_implicitRulesobject(Element)

Base definition for all elements in a resource.

languagestring(code)^[^\s]+(\s[^\s]+)*$

A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents

Example: "sample-code"
_languageobject(Element)

Base definition for all elements in a resource.

textobject(Narrative)

A human-readable summary of the resource conveying the essential clinical and business information for the resource.

containedArray of #Account (object) or #ActivityDefinition (object) or #AdverseEvent (object) or #AllergyIntolerance (object) or #Appointment (object) or #AppointmentResponse (object) or #AuditEvent (object) or #Basic (object) or #Binary (object) or #BiologicallyDerivedProduct (object) or #BodyStructure (object) or #Bundle (object) or #CapabilityStatement (object) or #CarePlan (object) or #CareTeam (object) or #CatalogEntry (object) or #ChargeItem (object) or #ChargeItemDefinition (object) or #Claim (object) or #ClaimResponse (object) or #ClinicalImpression (object) or #CodeSystem (object) or #Communication (object) or #CommunicationRequest (object) or #CompartmentDefinition (object) or #Composition (object) or #ConceptMap (object) or #Condition (object) or #Consent (object) or #Contract (object) or #Coverage (object) or #CoverageEligibilityRequest (object) or #CoverageEligibilityResponse (object) or #DetectedIssue (object) or #Device (object) or #DeviceDefinition (object) or #DeviceMetric (object) or #DeviceRequest (object) or #DeviceUseStatement (object) or #DiagnosticReport (object) or #DocumentManifest (object) or #DocumentReference (object) or #EffectEvidenceSynthesis (object) or #Encounter (object) or #Endpoint (object) or #EnrollmentRequest (object) or #EnrollmentResponse (object) or #EpisodeOfCare (object) or #EventDefinition (object) or #Evidence (object) or #EvidenceVariable (object) or #ExampleScenario (object) or #ExplanationOfBenefit (object) or #FamilyMemberHistory (object) or #Flag (object) or #Goal (object) or #GraphDefinition (object) or #Group (object) or #GuidanceResponse (object) or #HealthcareService (object) or #ImagingStudy (object) or #Immunization (object) or #ImmunizationEvaluation (object) or #ImmunizationRecommendation (object) or #ImplementationGuide (object) or #InsurancePlan (object) or #Invoice (object) or #Library (object) or #Linkage (object) or #List (object) or #Location (object) or #Measure (object) or #MeasureReport (object) or #Media (object) or #Medication (object) or #MedicationAdministration (object) or #MedicationDispense (object) or #MedicationKnowledge (object) or #MedicationRequest (object) or #MedicationStatement (object) or #MedicinalProduct (object) or #MedicinalProductAuthorization (object) or #MedicinalProductContraindication (object) or #MedicinalProductIndication (object) or #MedicinalProductIngredient (object) or #MedicinalProductInteraction (object) or #MedicinalProductManufactured (object) or #MedicinalProductPackaged (object) or #MedicinalProductPharmaceutical (object) or #MedicinalProductUndesirableEffect (object) or #MessageDefinition (object) or #MessageHeader (object) or #MolecularSequence (object) or #NamingSystem (object) or #NutritionOrder (object) or #Observation (object) or #ObservationDefinition (object) or #OperationDefinition (object) or #OperationOutcome (object) or #Organization (object) or #OrganizationAffiliation (object) or #Parameters (object) or #Patient (object) or #PaymentNotice (object) or #PaymentReconciliation (object) or #Person (object) or #PlanDefinition (object) or #Practitioner (object) or #PractitionerRole (object) or #Procedure (object) or #Provenance (object) or #Questionnaire (object) or #QuestionnaireResponse (object) or #RelatedPerson (object) or #RequestGroup (object) or #ResearchDefinition (object) or #ResearchElementDefinition (object) or #ResearchStudy (object) or #ResearchSubject (object) or #RiskAssessment (object) or #RiskEvidenceSynthesis (object) or #Schedule (object) or #SearchParameter (object) or #ServiceRequest (object) or #Slot (object) or #Specimen (object) or #SpecimenDefinition (object) or #StructureDefinition (object) or #StructureMap (object) or #Subscription (object) or #Substance (object) or #SubstanceNucleicAcid (object) or #SubstancePolymer (object) or #SubstanceProtein (object) or #SubstanceReferenceInformation (object) or #SubstanceSourceMaterial (object) or #SubstanceSpecification (object) or #SupplyDelivery (object) or #SupplyRequest (object) or #Task (object) or #TerminologyCapabilities (object) or #TestReport (object) or #TestScript (object) or #ValueSet (object) or #VerificationResult (object) or #VisionPrescription (object)(ResourceList)

These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

extensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

modifierExtensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

urlstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_urlobject(Element)

Base definition for all elements in a resource.

identifierArray of objects(Identifier)

A formal identifier that is used to identify this research definition when it is represented in other formats, or referenced in a specification, model, design or an instance.

versionstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_versionobject(Element)

Base definition for all elements in a resource.

namestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_nameobject(Element)

Base definition for all elements in a resource.

titlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_titleobject(Element)

Base definition for all elements in a resource.

shortTitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_shortTitleobject(Element)

Base definition for all elements in a resource.

subtitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_subtitleobject(Element)

Base definition for all elements in a resource.

statusany

The status of this research definition. Enables tracking the life-cycle of the content.

Enum"draft""active""retired""unknown"
Example: "draft"
_statusobject(Element)

Base definition for all elements in a resource.

experimentalboolean(boolean)^true|false$

Value of "true" or "false"

Example: true
_experimentalobject(Element)

Base definition for all elements in a resource.

subjectCodeableConceptobject(CodeableConcept)

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

subjectReferenceobject(Reference)

A reference from one resource to another.

datestring(date-time)(dateTime)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates.

Example: "2024-01-01T00:00:00Z"
_dateobject(Element)

Base definition for all elements in a resource.

publisherstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_publisherobject(Element)

Base definition for all elements in a resource.

contactArray of objects(ContactDetail)

Contact details to assist a user in finding and communicating with the publisher.

descriptionstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_descriptionobject(Element)

Base definition for all elements in a resource.

commentArray of strings(string)

A human-readable string to clarify or explain concepts about the resource.

Example: ["example-string"]
_commentArray of objects(Element)

Extensions for comment

useContextArray of objects(UsageContext)

The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate research definition instances.

jurisdictionArray of objects(CodeableConcept)

A legal or geographic region in which the research definition is intended to be used.

purposestring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_purposeobject(Element)

Base definition for all elements in a resource.

usagestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_usageobject(Element)

Base definition for all elements in a resource.

copyrightstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_copyrightobject(Element)

Base definition for all elements in a resource.

approvalDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_approvalDateobject(Element)

Base definition for all elements in a resource.

lastReviewDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_lastReviewDateobject(Element)

Base definition for all elements in a resource.

effectivePeriodobject(Period)

A time period defined by a start and end date and optionally time.

topicArray of objects(CodeableConcept)

Descriptive topics related to the content of the ResearchDefinition. Topics provide a high-level categorization grouping types of ResearchDefinitions that can be useful for filtering and searching.

authorArray of objects(ContactDetail)

An individiual or organization primarily involved in the creation and maintenance of the content.

editorArray of objects(ContactDetail)

An individual or organization primarily responsible for internal coherence of the content.

reviewerArray of objects(ContactDetail)

An individual or organization primarily responsible for review of some aspect of the content.

endorserArray of objects(ContactDetail)

An individual or organization responsible for officially endorsing the content for use in some setting.

relatedArtifactArray of objects(RelatedArtifact)

Related artifacts such as additional documentation, justification, or bibliographic references.

libraryArray of strings(canonical)

A reference to a Library resource containing the formal logic used by the ResearchDefinition.

Example: ["http://example.org/Profile"]
populationobject(Reference)required

A reference from one resource to another.

population.​idstring

An extension object type #string.

Example: "example-string"
population.​extensionArray of objects(#Extension)

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

population.​referencestring

An extension object type #string.

Example: "example-string"
population.​_referenceobject(#Element)

An extension object type #Element.

population.​typestring

An extension object type #uri.

Example: "https://example.org/resource"
population.​_typeobject(#Element)

An extension object type #Element.

population.​identifierobject(#Identifier)

An extension object type #Identifier.

population.​displaystring

An extension object type #string.

Example: "example-string"
population.​_displayobject(#Element)

An extension object type #Element.

exposureobject(Reference)

A reference from one resource to another.

exposureAlternativeobject(Reference)

A reference from one resource to another.

outcomeobject(Reference)

A reference from one resource to another.

Response
application/json
{ "resourceType": "ResearchDefinition", "id": "example", "text": { "status": "generated", "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">[Put rendering here]</div>" }, "status": "draft", "population": { "reference": "ResearchElementDefinition/example" } }

Get FHIR r4 research definition by ID

Request

Security
bearer or bearer
Path
idstringrequired

ID of the ResearchDefinition

siteIdstringrequired

Site identifier

curl -i -X GET \
  'https://docs.heydonto.com/_mock/apis/fhir/clinical-reasoning/site/{siteId}/fhir/research-definition/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Bodyapplication/json
resourceTypeanyrequired

This is a ResearchDefinition resource

Value"ResearchDefinition"
Example: "ResearchDefinition"
idstring(id)^[A-Za-z0-9\-\.]{1,64}$

Any combination of letters, numerals, "-" and ".", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive.

Example: "example-id"
metaobject(Meta)

The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

implicitRulesstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_implicitRulesobject(Element)

Base definition for all elements in a resource.

languagestring(code)^[^\s]+(\s[^\s]+)*$

A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents

Example: "sample-code"
_languageobject(Element)

Base definition for all elements in a resource.

textobject(Narrative)

A human-readable summary of the resource conveying the essential clinical and business information for the resource.

containedArray of #Account (object) or #ActivityDefinition (object) or #AdverseEvent (object) or #AllergyIntolerance (object) or #Appointment (object) or #AppointmentResponse (object) or #AuditEvent (object) or #Basic (object) or #Binary (object) or #BiologicallyDerivedProduct (object) or #BodyStructure (object) or #Bundle (object) or #CapabilityStatement (object) or #CarePlan (object) or #CareTeam (object) or #CatalogEntry (object) or #ChargeItem (object) or #ChargeItemDefinition (object) or #Claim (object) or #ClaimResponse (object) or #ClinicalImpression (object) or #CodeSystem (object) or #Communication (object) or #CommunicationRequest (object) or #CompartmentDefinition (object) or #Composition (object) or #ConceptMap (object) or #Condition (object) or #Consent (object) or #Contract (object) or #Coverage (object) or #CoverageEligibilityRequest (object) or #CoverageEligibilityResponse (object) or #DetectedIssue (object) or #Device (object) or #DeviceDefinition (object) or #DeviceMetric (object) or #DeviceRequest (object) or #DeviceUseStatement (object) or #DiagnosticReport (object) or #DocumentManifest (object) or #DocumentReference (object) or #EffectEvidenceSynthesis (object) or #Encounter (object) or #Endpoint (object) or #EnrollmentRequest (object) or #EnrollmentResponse (object) or #EpisodeOfCare (object) or #EventDefinition (object) or #Evidence (object) or #EvidenceVariable (object) or #ExampleScenario (object) or #ExplanationOfBenefit (object) or #FamilyMemberHistory (object) or #Flag (object) or #Goal (object) or #GraphDefinition (object) or #Group (object) or #GuidanceResponse (object) or #HealthcareService (object) or #ImagingStudy (object) or #Immunization (object) or #ImmunizationEvaluation (object) or #ImmunizationRecommendation (object) or #ImplementationGuide (object) or #InsurancePlan (object) or #Invoice (object) or #Library (object) or #Linkage (object) or #List (object) or #Location (object) or #Measure (object) or #MeasureReport (object) or #Media (object) or #Medication (object) or #MedicationAdministration (object) or #MedicationDispense (object) or #MedicationKnowledge (object) or #MedicationRequest (object) or #MedicationStatement (object) or #MedicinalProduct (object) or #MedicinalProductAuthorization (object) or #MedicinalProductContraindication (object) or #MedicinalProductIndication (object) or #MedicinalProductIngredient (object) or #MedicinalProductInteraction (object) or #MedicinalProductManufactured (object) or #MedicinalProductPackaged (object) or #MedicinalProductPharmaceutical (object) or #MedicinalProductUndesirableEffect (object) or #MessageDefinition (object) or #MessageHeader (object) or #MolecularSequence (object) or #NamingSystem (object) or #NutritionOrder (object) or #Observation (object) or #ObservationDefinition (object) or #OperationDefinition (object) or #OperationOutcome (object) or #Organization (object) or #OrganizationAffiliation (object) or #Parameters (object) or #Patient (object) or #PaymentNotice (object) or #PaymentReconciliation (object) or #Person (object) or #PlanDefinition (object) or #Practitioner (object) or #PractitionerRole (object) or #Procedure (object) or #Provenance (object) or #Questionnaire (object) or #QuestionnaireResponse (object) or #RelatedPerson (object) or #RequestGroup (object) or #ResearchDefinition (object) or #ResearchElementDefinition (object) or #ResearchStudy (object) or #ResearchSubject (object) or #RiskAssessment (object) or #RiskEvidenceSynthesis (object) or #Schedule (object) or #SearchParameter (object) or #ServiceRequest (object) or #Slot (object) or #Specimen (object) or #SpecimenDefinition (object) or #StructureDefinition (object) or #StructureMap (object) or #Subscription (object) or #Substance (object) or #SubstanceNucleicAcid (object) or #SubstancePolymer (object) or #SubstanceProtein (object) or #SubstanceReferenceInformation (object) or #SubstanceSourceMaterial (object) or #SubstanceSpecification (object) or #SupplyDelivery (object) or #SupplyRequest (object) or #Task (object) or #TerminologyCapabilities (object) or #TestReport (object) or #TestScript (object) or #ValueSet (object) or #VerificationResult (object) or #VisionPrescription (object)(ResourceList)

These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

extensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

modifierExtensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

urlstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_urlobject(Element)

Base definition for all elements in a resource.

identifierArray of objects(Identifier)

A formal identifier that is used to identify this research definition when it is represented in other formats, or referenced in a specification, model, design or an instance.

versionstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_versionobject(Element)

Base definition for all elements in a resource.

namestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_nameobject(Element)

Base definition for all elements in a resource.

titlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_titleobject(Element)

Base definition for all elements in a resource.

shortTitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_shortTitleobject(Element)

Base definition for all elements in a resource.

subtitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_subtitleobject(Element)

Base definition for all elements in a resource.

statusany

The status of this research definition. Enables tracking the life-cycle of the content.

Enum"draft""active""retired""unknown"
Example: "draft"
_statusobject(Element)

Base definition for all elements in a resource.

experimentalboolean(boolean)^true|false$

Value of "true" or "false"

Example: true
_experimentalobject(Element)

Base definition for all elements in a resource.

subjectCodeableConceptobject(CodeableConcept)

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

subjectReferenceobject(Reference)

A reference from one resource to another.

datestring(date-time)(dateTime)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates.

Example: "2024-01-01T00:00:00Z"
_dateobject(Element)

Base definition for all elements in a resource.

publisherstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_publisherobject(Element)

Base definition for all elements in a resource.

contactArray of objects(ContactDetail)

Contact details to assist a user in finding and communicating with the publisher.

descriptionstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_descriptionobject(Element)

Base definition for all elements in a resource.

commentArray of strings(string)

A human-readable string to clarify or explain concepts about the resource.

Example: ["example-string"]
_commentArray of objects(Element)

Extensions for comment

useContextArray of objects(UsageContext)

The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate research definition instances.

jurisdictionArray of objects(CodeableConcept)

A legal or geographic region in which the research definition is intended to be used.

purposestring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_purposeobject(Element)

Base definition for all elements in a resource.

usagestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_usageobject(Element)

Base definition for all elements in a resource.

copyrightstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_copyrightobject(Element)

Base definition for all elements in a resource.

approvalDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_approvalDateobject(Element)

Base definition for all elements in a resource.

lastReviewDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_lastReviewDateobject(Element)

Base definition for all elements in a resource.

effectivePeriodobject(Period)

A time period defined by a start and end date and optionally time.

topicArray of objects(CodeableConcept)

Descriptive topics related to the content of the ResearchDefinition. Topics provide a high-level categorization grouping types of ResearchDefinitions that can be useful for filtering and searching.

authorArray of objects(ContactDetail)

An individiual or organization primarily involved in the creation and maintenance of the content.

editorArray of objects(ContactDetail)

An individual or organization primarily responsible for internal coherence of the content.

reviewerArray of objects(ContactDetail)

An individual or organization primarily responsible for review of some aspect of the content.

endorserArray of objects(ContactDetail)

An individual or organization responsible for officially endorsing the content for use in some setting.

relatedArtifactArray of objects(RelatedArtifact)

Related artifacts such as additional documentation, justification, or bibliographic references.

libraryArray of strings(canonical)

A reference to a Library resource containing the formal logic used by the ResearchDefinition.

Example: ["http://example.org/Profile"]
populationobject(Reference)required

A reference from one resource to another.

population.​idstring

An extension object type #string.

Example: "example-string"
population.​extensionArray of objects(#Extension)

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

population.​referencestring

An extension object type #string.

Example: "example-string"
population.​_referenceobject(#Element)

An extension object type #Element.

population.​typestring

An extension object type #uri.

Example: "https://example.org/resource"
population.​_typeobject(#Element)

An extension object type #Element.

population.​identifierobject(#Identifier)

An extension object type #Identifier.

population.​displaystring

An extension object type #string.

Example: "example-string"
population.​_displayobject(#Element)

An extension object type #Element.

exposureobject(Reference)

A reference from one resource to another.

exposureAlternativeobject(Reference)

A reference from one resource to another.

outcomeobject(Reference)

A reference from one resource to another.

Response
application/json
{ "resourceType": "ResearchDefinition", "id": "example", "text": { "status": "generated", "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">[Put rendering here]</div>" }, "status": "draft", "population": { "reference": "ResearchElementDefinition/example" } }

Update FHIR r4 research definition

Request

Security
bearer or bearer
Path
siteIdstringrequired

Site identifier

idstringrequired

ID of the ResearchDefinition to update

Bodyapplication/jsonrequired
resourceTypeanyrequired

This is a ResearchDefinition resource

Value"ResearchDefinition"
Example: "ResearchDefinition"
idstring(id)^[A-Za-z0-9\-\.]{1,64}$

Any combination of letters, numerals, "-" and ".", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive.

Example: "example-id"
metaobject(Meta)

The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

implicitRulesstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_implicitRulesobject(Element)

Base definition for all elements in a resource.

languagestring(code)^[^\s]+(\s[^\s]+)*$

A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents

Example: "sample-code"
_languageobject(Element)

Base definition for all elements in a resource.

textobject(Narrative)

A human-readable summary of the resource conveying the essential clinical and business information for the resource.

containedArray of #Account (object) or #ActivityDefinition (object) or #AdverseEvent (object) or #AllergyIntolerance (object) or #Appointment (object) or #AppointmentResponse (object) or #AuditEvent (object) or #Basic (object) or #Binary (object) or #BiologicallyDerivedProduct (object) or #BodyStructure (object) or #Bundle (object) or #CapabilityStatement (object) or #CarePlan (object) or #CareTeam (object) or #CatalogEntry (object) or #ChargeItem (object) or #ChargeItemDefinition (object) or #Claim (object) or #ClaimResponse (object) or #ClinicalImpression (object) or #CodeSystem (object) or #Communication (object) or #CommunicationRequest (object) or #CompartmentDefinition (object) or #Composition (object) or #ConceptMap (object) or #Condition (object) or #Consent (object) or #Contract (object) or #Coverage (object) or #CoverageEligibilityRequest (object) or #CoverageEligibilityResponse (object) or #DetectedIssue (object) or #Device (object) or #DeviceDefinition (object) or #DeviceMetric (object) or #DeviceRequest (object) or #DeviceUseStatement (object) or #DiagnosticReport (object) or #DocumentManifest (object) or #DocumentReference (object) or #EffectEvidenceSynthesis (object) or #Encounter (object) or #Endpoint (object) or #EnrollmentRequest (object) or #EnrollmentResponse (object) or #EpisodeOfCare (object) or #EventDefinition (object) or #Evidence (object) or #EvidenceVariable (object) or #ExampleScenario (object) or #ExplanationOfBenefit (object) or #FamilyMemberHistory (object) or #Flag (object) or #Goal (object) or #GraphDefinition (object) or #Group (object) or #GuidanceResponse (object) or #HealthcareService (object) or #ImagingStudy (object) or #Immunization (object) or #ImmunizationEvaluation (object) or #ImmunizationRecommendation (object) or #ImplementationGuide (object) or #InsurancePlan (object) or #Invoice (object) or #Library (object) or #Linkage (object) or #List (object) or #Location (object) or #Measure (object) or #MeasureReport (object) or #Media (object) or #Medication (object) or #MedicationAdministration (object) or #MedicationDispense (object) or #MedicationKnowledge (object) or #MedicationRequest (object) or #MedicationStatement (object) or #MedicinalProduct (object) or #MedicinalProductAuthorization (object) or #MedicinalProductContraindication (object) or #MedicinalProductIndication (object) or #MedicinalProductIngredient (object) or #MedicinalProductInteraction (object) or #MedicinalProductManufactured (object) or #MedicinalProductPackaged (object) or #MedicinalProductPharmaceutical (object) or #MedicinalProductUndesirableEffect (object) or #MessageDefinition (object) or #MessageHeader (object) or #MolecularSequence (object) or #NamingSystem (object) or #NutritionOrder (object) or #Observation (object) or #ObservationDefinition (object) or #OperationDefinition (object) or #OperationOutcome (object) or #Organization (object) or #OrganizationAffiliation (object) or #Parameters (object) or #Patient (object) or #PaymentNotice (object) or #PaymentReconciliation (object) or #Person (object) or #PlanDefinition (object) or #Practitioner (object) or #PractitionerRole (object) or #Procedure (object) or #Provenance (object) or #Questionnaire (object) or #QuestionnaireResponse (object) or #RelatedPerson (object) or #RequestGroup (object) or #ResearchDefinition (object) or #ResearchElementDefinition (object) or #ResearchStudy (object) or #ResearchSubject (object) or #RiskAssessment (object) or #RiskEvidenceSynthesis (object) or #Schedule (object) or #SearchParameter (object) or #ServiceRequest (object) or #Slot (object) or #Specimen (object) or #SpecimenDefinition (object) or #StructureDefinition (object) or #StructureMap (object) or #Subscription (object) or #Substance (object) or #SubstanceNucleicAcid (object) or #SubstancePolymer (object) or #SubstanceProtein (object) or #SubstanceReferenceInformation (object) or #SubstanceSourceMaterial (object) or #SubstanceSpecification (object) or #SupplyDelivery (object) or #SupplyRequest (object) or #Task (object) or #TerminologyCapabilities (object) or #TestReport (object) or #TestScript (object) or #ValueSet (object) or #VerificationResult (object) or #VisionPrescription (object)(ResourceList)

These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

extensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

modifierExtensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

urlstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_urlobject(Element)

Base definition for all elements in a resource.

identifierArray of objects(Identifier)

A formal identifier that is used to identify this research definition when it is represented in other formats, or referenced in a specification, model, design or an instance.

versionstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_versionobject(Element)

Base definition for all elements in a resource.

namestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_nameobject(Element)

Base definition for all elements in a resource.

titlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_titleobject(Element)

Base definition for all elements in a resource.

shortTitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_shortTitleobject(Element)

Base definition for all elements in a resource.

subtitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_subtitleobject(Element)

Base definition for all elements in a resource.

statusany

The status of this research definition. Enables tracking the life-cycle of the content.

Enum"draft""active""retired""unknown"
Example: "draft"
_statusobject(Element)

Base definition for all elements in a resource.

experimentalboolean(boolean)^true|false$

Value of "true" or "false"

Example: true
_experimentalobject(Element)

Base definition for all elements in a resource.

subjectCodeableConceptobject(CodeableConcept)

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

subjectReferenceobject(Reference)

A reference from one resource to another.

datestring(date-time)(dateTime)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates.

Example: "2024-01-01T00:00:00Z"
_dateobject(Element)

Base definition for all elements in a resource.

publisherstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_publisherobject(Element)

Base definition for all elements in a resource.

contactArray of objects(ContactDetail)

Contact details to assist a user in finding and communicating with the publisher.

descriptionstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_descriptionobject(Element)

Base definition for all elements in a resource.

commentArray of strings(string)

A human-readable string to clarify or explain concepts about the resource.

Example: ["example-string"]
_commentArray of objects(Element)

Extensions for comment

useContextArray of objects(UsageContext)

The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate research definition instances.

jurisdictionArray of objects(CodeableConcept)

A legal or geographic region in which the research definition is intended to be used.

purposestring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_purposeobject(Element)

Base definition for all elements in a resource.

usagestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_usageobject(Element)

Base definition for all elements in a resource.

copyrightstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_copyrightobject(Element)

Base definition for all elements in a resource.

approvalDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_approvalDateobject(Element)

Base definition for all elements in a resource.

lastReviewDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_lastReviewDateobject(Element)

Base definition for all elements in a resource.

effectivePeriodobject(Period)

A time period defined by a start and end date and optionally time.

topicArray of objects(CodeableConcept)

Descriptive topics related to the content of the ResearchDefinition. Topics provide a high-level categorization grouping types of ResearchDefinitions that can be useful for filtering and searching.

authorArray of objects(ContactDetail)

An individiual or organization primarily involved in the creation and maintenance of the content.

editorArray of objects(ContactDetail)

An individual or organization primarily responsible for internal coherence of the content.

reviewerArray of objects(ContactDetail)

An individual or organization primarily responsible for review of some aspect of the content.

endorserArray of objects(ContactDetail)

An individual or organization responsible for officially endorsing the content for use in some setting.

relatedArtifactArray of objects(RelatedArtifact)

Related artifacts such as additional documentation, justification, or bibliographic references.

libraryArray of strings(canonical)

A reference to a Library resource containing the formal logic used by the ResearchDefinition.

Example: ["http://example.org/Profile"]
populationobject(Reference)required

A reference from one resource to another.

population.​idstring

An extension object type #string.

Example: "example-string"
population.​extensionArray of objects(#Extension)

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

population.​referencestring

An extension object type #string.

Example: "example-string"
population.​_referenceobject(#Element)

An extension object type #Element.

population.​typestring

An extension object type #uri.

Example: "https://example.org/resource"
population.​_typeobject(#Element)

An extension object type #Element.

population.​identifierobject(#Identifier)

An extension object type #Identifier.

population.​displaystring

An extension object type #string.

Example: "example-string"
population.​_displayobject(#Element)

An extension object type #Element.

exposureobject(Reference)

A reference from one resource to another.

exposureAlternativeobject(Reference)

A reference from one resource to another.

outcomeobject(Reference)

A reference from one resource to another.

curl -i -X PUT \
  'https://docs.heydonto.com/_mock/apis/fhir/clinical-reasoning/site/{siteId}/fhir/research-definition/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "resourceType": "ResearchDefinition",
    "id": "example",
    "text": {
      "status": "generated",
      "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">[Put rendering here]</div>"
    },
    "status": "draft",
    "population": {
      "reference": "ResearchElementDefinition/example"
    }
  }'

Responses

Bodyapplication/json
resourceTypeanyrequired

This is a ResearchDefinition resource

Value"ResearchDefinition"
Example: "ResearchDefinition"
idstring(id)^[A-Za-z0-9\-\.]{1,64}$

Any combination of letters, numerals, "-" and ".", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive.

Example: "example-id"
metaobject(Meta)

The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

implicitRulesstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_implicitRulesobject(Element)

Base definition for all elements in a resource.

languagestring(code)^[^\s]+(\s[^\s]+)*$

A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents

Example: "sample-code"
_languageobject(Element)

Base definition for all elements in a resource.

textobject(Narrative)

A human-readable summary of the resource conveying the essential clinical and business information for the resource.

containedArray of #Account (object) or #ActivityDefinition (object) or #AdverseEvent (object) or #AllergyIntolerance (object) or #Appointment (object) or #AppointmentResponse (object) or #AuditEvent (object) or #Basic (object) or #Binary (object) or #BiologicallyDerivedProduct (object) or #BodyStructure (object) or #Bundle (object) or #CapabilityStatement (object) or #CarePlan (object) or #CareTeam (object) or #CatalogEntry (object) or #ChargeItem (object) or #ChargeItemDefinition (object) or #Claim (object) or #ClaimResponse (object) or #ClinicalImpression (object) or #CodeSystem (object) or #Communication (object) or #CommunicationRequest (object) or #CompartmentDefinition (object) or #Composition (object) or #ConceptMap (object) or #Condition (object) or #Consent (object) or #Contract (object) or #Coverage (object) or #CoverageEligibilityRequest (object) or #CoverageEligibilityResponse (object) or #DetectedIssue (object) or #Device (object) or #DeviceDefinition (object) or #DeviceMetric (object) or #DeviceRequest (object) or #DeviceUseStatement (object) or #DiagnosticReport (object) or #DocumentManifest (object) or #DocumentReference (object) or #EffectEvidenceSynthesis (object) or #Encounter (object) or #Endpoint (object) or #EnrollmentRequest (object) or #EnrollmentResponse (object) or #EpisodeOfCare (object) or #EventDefinition (object) or #Evidence (object) or #EvidenceVariable (object) or #ExampleScenario (object) or #ExplanationOfBenefit (object) or #FamilyMemberHistory (object) or #Flag (object) or #Goal (object) or #GraphDefinition (object) or #Group (object) or #GuidanceResponse (object) or #HealthcareService (object) or #ImagingStudy (object) or #Immunization (object) or #ImmunizationEvaluation (object) or #ImmunizationRecommendation (object) or #ImplementationGuide (object) or #InsurancePlan (object) or #Invoice (object) or #Library (object) or #Linkage (object) or #List (object) or #Location (object) or #Measure (object) or #MeasureReport (object) or #Media (object) or #Medication (object) or #MedicationAdministration (object) or #MedicationDispense (object) or #MedicationKnowledge (object) or #MedicationRequest (object) or #MedicationStatement (object) or #MedicinalProduct (object) or #MedicinalProductAuthorization (object) or #MedicinalProductContraindication (object) or #MedicinalProductIndication (object) or #MedicinalProductIngredient (object) or #MedicinalProductInteraction (object) or #MedicinalProductManufactured (object) or #MedicinalProductPackaged (object) or #MedicinalProductPharmaceutical (object) or #MedicinalProductUndesirableEffect (object) or #MessageDefinition (object) or #MessageHeader (object) or #MolecularSequence (object) or #NamingSystem (object) or #NutritionOrder (object) or #Observation (object) or #ObservationDefinition (object) or #OperationDefinition (object) or #OperationOutcome (object) or #Organization (object) or #OrganizationAffiliation (object) or #Parameters (object) or #Patient (object) or #PaymentNotice (object) or #PaymentReconciliation (object) or #Person (object) or #PlanDefinition (object) or #Practitioner (object) or #PractitionerRole (object) or #Procedure (object) or #Provenance (object) or #Questionnaire (object) or #QuestionnaireResponse (object) or #RelatedPerson (object) or #RequestGroup (object) or #ResearchDefinition (object) or #ResearchElementDefinition (object) or #ResearchStudy (object) or #ResearchSubject (object) or #RiskAssessment (object) or #RiskEvidenceSynthesis (object) or #Schedule (object) or #SearchParameter (object) or #ServiceRequest (object) or #Slot (object) or #Specimen (object) or #SpecimenDefinition (object) or #StructureDefinition (object) or #StructureMap (object) or #Subscription (object) or #Substance (object) or #SubstanceNucleicAcid (object) or #SubstancePolymer (object) or #SubstanceProtein (object) or #SubstanceReferenceInformation (object) or #SubstanceSourceMaterial (object) or #SubstanceSpecification (object) or #SupplyDelivery (object) or #SupplyRequest (object) or #Task (object) or #TerminologyCapabilities (object) or #TestReport (object) or #TestScript (object) or #ValueSet (object) or #VerificationResult (object) or #VisionPrescription (object)(ResourceList)

These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

extensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

modifierExtensionArray of objects(Extension)

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

urlstring(uri)^\S*$

String of characters used to identify a name or a resource

Example: "https://example.org/resource"
_urlobject(Element)

Base definition for all elements in a resource.

identifierArray of objects(Identifier)

A formal identifier that is used to identify this research definition when it is represented in other formats, or referenced in a specification, model, design or an instance.

versionstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_versionobject(Element)

Base definition for all elements in a resource.

namestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_nameobject(Element)

Base definition for all elements in a resource.

titlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_titleobject(Element)

Base definition for all elements in a resource.

shortTitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_shortTitleobject(Element)

Base definition for all elements in a resource.

subtitlestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_subtitleobject(Element)

Base definition for all elements in a resource.

statusany

The status of this research definition. Enables tracking the life-cycle of the content.

Enum"draft""active""retired""unknown"
Example: "draft"
_statusobject(Element)

Base definition for all elements in a resource.

experimentalboolean(boolean)^true|false$

Value of "true" or "false"

Example: true
_experimentalobject(Element)

Base definition for all elements in a resource.

subjectCodeableConceptobject(CodeableConcept)

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

subjectReferenceobject(Reference)

A reference from one resource to another.

datestring(date-time)(dateTime)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates.

Example: "2024-01-01T00:00:00Z"
_dateobject(Element)

Base definition for all elements in a resource.

publisherstring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_publisherobject(Element)

Base definition for all elements in a resource.

contactArray of objects(ContactDetail)

Contact details to assist a user in finding and communicating with the publisher.

descriptionstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_descriptionobject(Element)

Base definition for all elements in a resource.

commentArray of strings(string)

A human-readable string to clarify or explain concepts about the resource.

Example: ["example-string"]
_commentArray of objects(Element)

Extensions for comment

useContextArray of objects(UsageContext)

The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate research definition instances.

jurisdictionArray of objects(CodeableConcept)

A legal or geographic region in which the research definition is intended to be used.

purposestring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_purposeobject(Element)

Base definition for all elements in a resource.

usagestring(string)^[ \r\n\t\S]+$

A sequence of Unicode characters

Example: "example-string"
_usageobject(Element)

Base definition for all elements in a resource.

copyrightstring(markdown)^[ \r\n\t\S]+$

A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine

Example: "Sample markdown text"
_copyrightobject(Element)

Base definition for all elements in a resource.

approvalDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_approvalDateobject(Element)

Base definition for all elements in a resource.

lastReviewDatestring(date)(date)^([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-...

A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.

Example: "2024-01-01"
_lastReviewDateobject(Element)

Base definition for all elements in a resource.

effectivePeriodobject(Period)

A time period defined by a start and end date and optionally time.

topicArray of objects(CodeableConcept)

Descriptive topics related to the content of the ResearchDefinition. Topics provide a high-level categorization grouping types of ResearchDefinitions that can be useful for filtering and searching.

authorArray of objects(ContactDetail)

An individiual or organization primarily involved in the creation and maintenance of the content.

editorArray of objects(ContactDetail)

An individual or organization primarily responsible for internal coherence of the content.

reviewerArray of objects(ContactDetail)

An individual or organization primarily responsible for review of some aspect of the content.

endorserArray of objects(ContactDetail)

An individual or organization responsible for officially endorsing the content for use in some setting.

relatedArtifactArray of objects(RelatedArtifact)

Related artifacts such as additional documentation, justification, or bibliographic references.

libraryArray of strings(canonical)

A reference to a Library resource containing the formal logic used by the ResearchDefinition.

Example: ["http://example.org/Profile"]
populationobject(Reference)required

A reference from one resource to another.

population.​idstring

An extension object type #string.

Example: "example-string"
population.​extensionArray of objects(#Extension)

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

population.​referencestring

An extension object type #string.

Example: "example-string"
population.​_referenceobject(#Element)

An extension object type #Element.

population.​typestring

An extension object type #uri.

Example: "https://example.org/resource"
population.​_typeobject(#Element)

An extension object type #Element.

population.​identifierobject(#Identifier)

An extension object type #Identifier.

population.​displaystring

An extension object type #string.

Example: "example-string"
population.​_displayobject(#Element)

An extension object type #Element.

exposureobject(Reference)

A reference from one resource to another.

exposureAlternativeobject(Reference)

A reference from one resource to another.

outcomeobject(Reference)

A reference from one resource to another.

Response
application/json
{ "resourceType": "ResearchDefinition", "id": "example", "text": { "status": "generated", "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">[Put rendering here]</div>" }, "status": "draft", "population": { "reference": "ResearchElementDefinition/example" } }

Delete FHIR r4 research definition

Request

Security
bearer or bearer
Path
idstringrequired

ID of the ResearchDefinition to delete

siteIdstringrequired

Site identifier

curl -i -X DELETE \
  'https://docs.heydonto.com/_mock/apis/fhir/clinical-reasoning/site/{siteId}/fhir/research-definition/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

ResearchDefinition successfully deleted

Bodyapplication/json
statusTextstringrequired
Example: "OK"
statusnumberrequired
Example: 200
Response
application/json
{ "statusText": "OK", "status": 200 }

Get FHIR r4 research definition history by ID

Request

Security
bearer or bearer
Path
siteIdstringrequired

Site identifier

idstringrequired

ID of the ResearchDefinition

curl -i -X GET \
  'https://docs.heydonto.com/_mock/apis/fhir/clinical-reasoning/site/{siteId}/fhir/research-definition/{id}/history' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Bodyapplication/json
resourceTypeanyrequired

This is a Bundle resource

Value"Bundle"
Example: "Bundle"
typeanyrequired

Indicates that this is a history bundle.

Value"history"
Example: "history"
entryArray of objectsrequired

A list of entries representing historical versions of the resource.

entry[].​fullUrlstringrequired
Example: "https://api.heydonto.com/research-definition/6eca4369-7183-446e-bab7-addc609972d3"
entry[].​requestobjectrequired
entry[].​request.​methodstring
Enum"PUT""POST"
Example: "PUT"
entry[].​request.​urlstring
Example: "https://api.heydonto.com/research-definition/6eca4369-7183-446e-bab7-addc609972d3"
entry[].​resourceobjectrequired
Example: {"resourceType":"Resource","id":"example"}
entry[].​responseobjectrequired
entry[].​response.​lastModifiedstring(date-time)
Example: "2024-10-29T01:05:22.739517+00:00"
entry[].​response.​locationstring
Example: "https://api.heydonto.com/research-definition/6eca4369-7183-446e-bab7-addc609972d3/_history/MTczMDE2MzkyMjczOTUxNzAwMA"
entry[].​response.​statusstring
Example: "200 OK"
totalintegerrequired
Example: 2
Response
application/json
{ "resourceType": "Bundle", "type": "history", "entry": [ { … } ], "total": 2 }
Operations
Operations
Operations
Operations