FHIR Profiles are simply a handful of resources: StructureDefinition, ValueSet, and CodeSystem (for R3) are the main ones. All of these resources are supported by Smile CDR so you can upload them as you would upload any other resource. Naturally, if you have security rules in place then you might need to create an administrative user and grant them appropriate permissions in order for them to be able to upload these resources.
Once your profile resources are uploaded, you can validate any other resource against the profile. For example, if you have uploaded a StructureDefinition for a constraint on Observation, you can post candidate Observations to [base]/Observation/$validate and the server will return a validation outcome against those resources.
This validation automatically includes both structural validation and terminology validation. If you have referenced terminology (either internal FHIR terminology or external terminology), those bindings will be automatically checked as well. Note that if you want to validate against an external code system – such as SNOMED CT or LOINC – then this needs to be pre-loaded into Smile CDR’s database.Back to FAQ