|
3 min de lecture
|

Comment téléverser une StructureDefinition dans Aidbox via l'API FHIR

Résumer cet article avec :
ChatGPTPerplexityClaudeGrok

StructureDefinition est une ressource qui décrit la structure d'autres ressources, notamment les profils, les extensions et les types de données.

Aidbox vous permet de créer des ressources StructureDefinition à l'exécution à l'aide de l'API FHIR. Cela vous permet de définir des profils pour des ressources standard, de créer des extensions et de concevoir des ressources personnalisées définies par l'utilisateur.

Exemple de corps de requête pour créer un profil via StructureDefinition

Dans cet exemple, un profil est créé pour la ressource Patient, où le champ name est marqué comme obligatoire. Cela peut être effectué via une requête REST vers le point de terminaison FHIR pour StructureDefinition, avec la définition du profil incluse dans le corps de la requête.

POST /fhir/StructureDefinition
content-type: application/json
accept: application/json

{
	"derivation": "constraint",
	"name": "my-patient-profile",
	"abstract": false,
	"type": "Patient",
	"status": "active",
	"kind": "resource",
	"url": "http://example.org/StructureDefinition/my-patient-profile",
	"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Patient",
	"differential": {
    	"element": [
        	{
            	"id": "Patient.name",
            	"path": "Patient.name",
            	"min": 1
        	}
    	]
	}
}

Exemple de corps de requête pour créer une extension via StructureDefinition

Une extension nommée insurance-plan est créée pour permettre de référencer un régime d'assurance associé (la ressource InsurancePlan).

POST /fhir/StructureDefinition

{
  "abstract": false,
  "url": "http://my.company/StructureDefinition/insurance-plan",
  "id": "insurance-plan",
  "name": "InsurancePlanReference",
  "status": "active",
  "kind": "complex-type",
  "type": "Extension",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension",
  "version": "0.0.1",
  "differential": {
	"element": [
  	{
    	"id": "Extension",
    	"max": "1",
    	"min": 0,
    	"path": "Extension",
    	"short": "Reference to the insurance plan"
  	},
  	{
    	"id": "Extension.url",
    	"max": "1",
    	"min": 1,
    	"path": "Extension.url",
    	"fixedUri": "http://my.company/StructureDefinition/insurance-plan"
  	},
  	{
    	"id": "Extension.value[x]",
    	"max": "1",
    	"min": 1,
    	"path": "Extension.value[x]",
    	"type": [
      	{
        	"code": "Reference",
        	"targetProfile": [
          	"http://hl7.org/fhir/StructureDefinition/InsurancePlan"
        	]
      	}
    	]
  	}
	]
  },
  "resourceType": "StructureDefinition",
  "derivation": "constraint"
}

Exemple de corps de requête pour créer une ressource personnalisée via StructureDefinition

Dans cet exemple, une ressource personnalisée nommée TutorNotificationTemplate est créée, laquelle contient un seul champ obligatoire template de type string.

POST /fhir/StructureDefinition
content-type: application/json
accept: application/json

{
	"derivation": "specialization",
	"name": "TutorNotificationTemplate",
	"abstract": false,
	"type": "TutorNotificationTemplate",
	"status": "active",
	"kind": "resource",
	"url": "http://example.org/StructureDefinition/TutorNotificationTemplate",
	"baseDefinition": "http://hl7.org/fhir/StructureDefinition/DomainResource",
	"differential": {
    	"element": [
        	{
            	"id": "TutorNotificationTemplate",
            	"path": "TutorNotificationTemplate",
            	"min": 0,
            	"max": "*"
        	},
        	{
            	"id": "TutorNotificationTemplate.template",
            	"path": "TutorNotificationTemplate.template",
            	"min": 1,
            	"max": "1",
            	"type": [
                	{
                    	"code": "string"
                	}
            	]
        	}
    	]
	}
}

Vous pouvez utiliser ces exemples comme point de départ pour créer vos propres profils, extensions et ressources personnalisées dans le serveur FHIR Aidbox. Pour des scénarios plus avancés, consultez la documentation officielle d'Aidbox et de FHIR.

Voir aussi : Simplifier et 4 façons de téléverser des IG dans Aidbox.

Partager cet article
Comments
Comments
Sign in
Loading comments...
Subscribe to our blog

Get the latest articles on FHIR, interoperability, and healthcare IT.