Version : 1.7
Introduction
Synapse développe une solution d'aide à la prescription, incluant les fonctionnalités suivantes :
- autocomplétion des spécialités médicamenteuse, molécules actives ou classes thérapeutiques,
- analyse des interactions médicamenteuses de l’ordonnance avec représentation en chord diagram,
- analyse des effets indésirables présents dans l’ordonnance et recoupement avec la saisie d’un symptôme,
- liste des critères Stopp détectés sur l’ordonnance,
- synthèse des médicaments nécessitant une vigilance particulière.
Ces fonctionnalités sont mises à disposition au travers d'APIs et/ou widgets pour être intégrés dans une application web.
Demo
Les différents widgets sont testables sur une interface de démo :
https://v1-7-widget.synapse-medicine.com/demo.html
Des exemples de personnalisation des widgets sont proposés sur les pages suivantes :
Authentification
Principe
L’authentification auprès du back-end Synapse se fait à l’aide de jetons JWT
Avant appel d’API ou initialisation d’un widget Synapse, le back-end du site client génère un jeton JWT signé. La génération se fait à partir d’un couple de clefs asymétriques RSA (R256) dont la clef publique est partagée avec le back-end de Synapse lors de la mise en place du service.
La durée de vie (TTL) de chaque token généré est limité à 1 heure de sorte à réduire l’exposition non souhaitée en dehors du contexte de l'application client.
Un token signé sera transmis à chaque appel de l’API de l’autocomplétion à travers l’en-tête :
Authorization: Bearer <jwtToken>
Un token signé sera transmis à la création de chaque instance de widget.
Procédure de mise en place du système d’authentification
Le back-end client génère un couple de clefs asymétriques RSA (R256) de 2048 bits.
Pour générer un couple de clefs asymétriques :
openssl genrsa -out private_key.pem 2048
openssl rsa -in private_key.pem -pubout -out public_key.pem
Le client envoie la clé publique public_key.pem
au format PEM à Synapse.
Synapse transmet en retour une clé d’issuer issuer_key
au client. Cette clé sera
insérée dans les claims des jetons JWT.
Utilisation du système d’authentification
Pour générer un jeton JWT avec un back-end Node.js :
const fs = require('fs');
const jwt = require('jsonwebtoken');
// Chargement de la clef privée
const private_key = fs.readFileSync('private_key.pem');
// Définition des claims
const payload = {
iss: <issuer_key>,
exp: (new Date().getTime() / 1000) + 3600,
user_id: <user_id>,
session_id: <session_id>
};
const options = {
algorithm: 'RS256',
};
// Génération du token
const token = jwt.sign(payload, private_key, options);
Le back-end du client génère un token JWT à partir de la clef privée private_key.pem
en utilisant l’algorithme R256.
Ce jeton doit inclure les claims suivants :
Claim | Description |
---|---|
iss | Clé d'issuer : identifiant du client auprès de Synapse |
exp | Expiration time : date d'expiration du token au format spécifié dans la RFC 7519. La durée d'expiration doit être inférieure à 1 heure. |
user_id | Identifiant utilisateur : hash d'un identifiant de l'utilisateur de l'application client |
session_id | Id de session : identifiant de la session en cours |
Le token généré est utilisable pour appel aux APIs ou l'initialisation des widgets.
Dans le cas d’une session longue, le token d’un widget peut expirer en cours d’utilisation du widget.
La callback de widget onnTokenExpiration
est alors appelée.
Elle permet de réaliser un nouvelle demande de token au back-end de l'application client.
APIs
Autocompletion
En cherchant 2 molécules à partir de la chaîne de caractères “ibu” :
curl -X POST https://api.synapse-medicine.com/prescription-autocomplete/v1/autocomplete \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <token>' \
-d '{
"text": "ibu",
"type": "pharmaceutical-ingredient",
"size": 2
}'
La réponse obtenue est :
[
{
"entity": {
"label": "ibuprofène",
"type": "pharmaceutical-ingredient",
"uri": "http://frnorm.graph.synapse-medicine.com#PharmaceuticalIngredient/a296a3f7964b5aa84e42b85549d60eb3b54cf858"
},
"score": 41.16
},
{
"entity": {
"label": "ibuprofène (lysinate d')",
"type": "pharmaceutical-ingredient",
"uri": "http://frnorm.graph.synapse-medicine.com#PharmaceuticalIngredient/890232a27d7c4398ee1138205f17a87e25dc13fc"
},
"score": 36.33
}
]
En cherchant 1 spécialité médicamenteuse contenant la molécule “ébastine” :
curl -X POST https://api.synapse-medicine.com/prescription-autocomplete/v1/autocomplete \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <token>' \
-d '{
"text": "ébastine",
"type": "branded-drug",
"size": 1,
"field": "moieties"
}'
La réponse obtenue est :
[
{
"entity": {
"label": "KESTINLYO 10 mg, lyophilisat oral",
"cis": "64579019",
"dci_label": "ébastine",
"moieties": [
{
"label": "ébastine",
"uri": "http://frnorm.graph.synapse-medicine.com#PharmaceuticalIngredient/69d8226331044441a0a3e378d1d6b36886fed6ee"
}
],
"type": "branded-drug",
"uri": "http://frnorm.graph.synapse-medicine.com#BrandedDrug/64579019"
},
"score": 93.673416
}
]
L’API d’autocomplétion permet la recherche d'entités médicamenteuses (spécialité, molécule ou classe thérapeutique) à partir d’une chaîne de caractères. La recherche se fait sur le label de l'entité.
Dans le cas de spécialités médicamenteuses, la recherche peut également se faire sur les labels des substances actives du médicament.
Requête HTTP
POST https://api.synapse-medicine.com/prescription-autocomplete/v1/autocomplete
Body
Parametre | Requis | Type | Description |
---|---|---|---|
text | true | string | Chaîne de caractères à autocompléter |
type | true | EntityType | Type d’entités recherchées |
size | true | int | Nombre maximal d’entités à retourner |
field | false | enum | Champs à autocompléter. Les valeurs possibles sont - label (défaut) - moieties (pour type="branded-drug" uniquement) |
Réponse
Liste d'objets au format suivant :
Champ | Type | Description |
---|---|---|
entity | Entity | Entité thérapeutique |
score | float | Score de pertinence de l'entité thérapeutique |
Information sur une spécialité médicamenteuse
Récupération de la spécialité médicamenteuse ayant pour code CIS 69309629 :
curl -X GET https://api.synapse-medicine.com/drug-information/v1/branded-drug/fr/69309629 \
-H 'Authorization: Bearer <token>'
La réponse obtenue est :
{
"label": "DOLIPRANE 1000 mg, gélule",
"cis": "69309629",
"ingredients": [
{
"dose": "1000 mg",
"label": "paracétamol",
"uri": "http://frnorm.graph.synapse-medicine.com#PharmaceuticalIngredient/7fe0342fcdef507a3066831e939cccb6aee60e46"
}
],
"moieties": [
{
"dose": "1000 mg",
"label": "paracétamol",
"uri": "http://frnorm.graph.synapse-medicine.com#PharmaceuticalIngredient/7fe0342fcdef507a3066831e939cccb6aee60e46"
}
],
"type": "branded-drug",
"uri": "http://frnorm.graph.synapse-medicine.com#BrandedDrug/69309629"
}
L'API d'information sur les spécialités médicamenteuses permet de récupérer une spécialité à partir de son code CIS.
Requête HTTP
GET https://api.synapse-medicine.com/drug-information/v1/branded-drug/fr/{cis}
Parametre | Type | Description |
---|---|---|
cis | string | Code CIS de la spécialité médicamenteuse souhaitée |
Réponse
La réponse est un document de type Entity correspondant à la spécialité médicamenseuse demandée.
Widgets
Setup
Exemple de header pour chargement des widgets Synapse :
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="https://v1-7-widget.synapse-medicine.com/bundle.js"></script>
</head>
L'utilisation des widgets se fait par chargement d'une librairie Synapse depuis le
navigateur sur le site web client :
<script type="text/javascript" src="https://v1-7-widget.synapse-medicine.com/bundle.js"></script>
Cette librairie donne accès au namespace Synapse, regroupant les classes suivantes :
AdverseEffectWidget
GroundsWidget
InteractionWidget
PosologyCheckerWidget
ProfileWidget
StartStoppWidget
SynthesisWidget
Chaque widget est instancié côté client par :
var widget = new Synapse.XxxWidget(jwtToken)
AdverseEffectWidget
Ce widget extrait l'ensemble des effets indésirables d'une ordonnance par fréquence. Il permet la recherche d'un effet indésirable specifique.
Initialisation du widget à partir de premiers résultats d'autocomplétion :
var adverseEffectWidget = new Synapse.AdverseEffectWidget(jwtToken);
var data = {"entities": [autocompleteResult1] };
adverseEffectWidget.init(document.getElementById("adverseEffectPlaceholder"), data);
Mise à jour du widget lors de l'ajout de nouveaux médicaments :
data.entities.push(autocompleteResult2);
adverseEffectWidget.update(data);
Mise à jour du jeton JWT :
adverseEffectWidget.setCallback("onTokenExpiration", function (err, data) {
var jwtToken = fetchNewToken();
adverseEffectWidget.setToken(jwtToken);
});
init(element, data)
Initialisation du widget dans un élément du DOM.
Parametre | Requis | Type | Description |
---|---|---|---|
element | true | Element | Objet spécifiant l’élément du DOM dans lequel sera inséré le widget |
data | true | Object | Données d'initialisation |
data.entities | true | [Entity] | Liste des médicaments de l'ordonnance à analyser |
update(data)
Mise à jour du widget à partir de nouvelles données d’ordonnance.
Parametre | Requis | Type | Description |
---|---|---|---|
data | true | Object | Données d'initialisation |
data.entities | true | [Entity] | Liste des médicaments de l'ordonnance à analyser |
setToken(jwtToken)
Définition du jeton JWT à utiliser par le widget.
Parametre | Requis | Type | Description |
---|---|---|---|
jwtToken | true | string | Jeton JWT à utiliser par le widget |
setCallback(“onTokenExpiration”, callback)
Spécification d'une callback à appeler lors de l'expiration du jeton JWT.
Cette callback est mutualisée entre tous les widgets.
Parametre | Requis | Type | Description |
---|---|---|---|
callback | true | function | Fonction à appeler prenant en paramètres (err, data) |
GroundsWidget
Ce widget remonte des alertes de vigilance ou de contre-indication sur l'ordonnance liées au profil clinique du patient.
Initialisation du widget :
var groundsWidget = new Synapse.GroundsWidget(jwtToken);
var data = {
"entities": [autocompleteResult1],
"profile": patientProfile
};
groundsWidget.init(document.getElementById("groundsPlaceholder"), data);
Mise à jour du widget lors de l'ajout de nouveaux médicaments :
data.entities.push(autocompleteResult2);
groundsWidget.update(data);
Mise à jour du widget lors de la modification du profil patient :
patientProfile.isPregnant = true;
groundsWidget.update({"profile": patientProfile});
Mise à jour du jeton JWT :
groundsWidget.setCallback("onTokenExpiration", function (err, data) {
var jwtToken = fetchNewToken();
groundsWidget.setToken(jwtToken);
});
init(element, data)
Initialisation du widget dans un élément du DOM.
Parametre | Requis | Type | Description |
---|---|---|---|
element | true | Element | Objet spécifiant l’élément du DOM dans lequel sera inséré le widget |
data | true | Object | Données d'initialisation |
data.entities | false | [Entity] | Liste des médicaments de l'ordonnance à analyser |
data.profile | false | [Profile] | Valeur initiale du profil patient |
update(data)
Mise à jour du widget à partir de nouvelles données d'ordonnance ou de profil.
Parametre | Requis | Type | Description |
---|---|---|---|
data | true | Object | Données de mise à jour |
data.profile | false | [Profile] | Profil mis à jour |
data.entities | false | [Entity] | Liste des médicaments de l'ordonnance à analyser |
setToken(jwtToken)
Définition du jeton JWT à utiliser par le widget.
Parametre | Requis | Type | Description |
---|---|---|---|
jwtToken | true | string | Jeton JWT à utiliser par le widget |
setCallback(“onTokenExpiration”, callback)
Spécification d'une callback à appeler lors de l'expiration du jeton JWT.
Cette callback est mutualisée entre tous les widgets.
Parametre | Requis | Type | Description |
---|---|---|---|
callback | true | function | Fonction à appeler prenant en paramètres (err, data) |
InteractionWidget
Ce widget analyse les interactions médicamenteuses d'une ordonnance et les restitue sous la forme d'un diagramme de synthèse.
Initialisation du widget à partir de premiers résultats d'autocomplétion :
var interactionWidget = new Synapse.InteractionWidget(jwtToken);
var data = {"entities": [autocompleteResult1] };
interactionWidget.init(document.getElementById("interactionPlaceholder"), data);
Mise à jour du widget lors de l'ajout de nouveaux médicaments :
data.entities.push(autocompleteResult2);
interactionWidget.update(data);
Mise à jour du jeton JWT :
interactionWidget.setCallback("onTokenExpiration", function (err, data) {
var jwtToken = fetchNewToken();
interactionWidget.setToken(jwtToken);
});
init(element, data)
Initialisation du widget dans un élément du DOM.
Parametre | Requis | Type | Description |
---|---|---|---|
element | true | Element | Objet spécifiant l’élément du DOM dans lequel sera inséré le widget |
data | true | Object | Données d'initialisation |
data.entities | true | [Entity] | Liste des médicaments de l'ordonnance à analyser |
update(data)
Mise à jour du widget à partir de nouvelles données d’ordonnance.
Parametre | Requis | Type | Description |
---|---|---|---|
data | true | Object | Données d'initialisation |
data.entities | true | [Entity] | Liste des médicaments de l'ordonnance à analyser |
setToken(jwtToken)
Définition du jeton JWT à utiliser par le widget.
Parametre | Requis | Type | Description |
---|---|---|---|
jwtToken | true | string | Jeton JWT à utiliser par le widget |
setCallback(“onTokenExpiration”, callback)
Spécification d'une callback à appeler lors de l'expiration du jeton JWT.
Cette callback est mutualisée entre tous les widgets.
Parametre | Requis | Type | Description |
---|---|---|---|
callback | true | function | Fonction à appeler prenant en paramètres (err, data) |
PosologyCheckerWidget
Ce widget analyse les posologies saisies pour les spécialités d'une ordonnance et lève des alertes en cas de dépassement de posologie maximum.
Initialisation du widget à partir de premiers résultats d'autocomplétion :
var posologyCheckerWidget = new Synapse.PosologyCheckerWidget(jwtToken);
var entity = autocompleteResult1;
entity["posology"] = {
"text": document.getElementById("#posology-input-0").value
};
var data = {"entities": [entity], "mode": "compact" };
posologyCheckerWidget.init(document.getElementById("posologyPlaceholder"), data);
Mise à jour du widget lors d'une modification de la posologie :
data.entities[0].posology = {
"text": document.getElementById("#posology-input-0").value;
};
posologyCheckerWidget.update(data);
Mise à jour du widget lors de l'ajout de nouveaux médicaments :
var new_entity = autocompleteResult2;
new_entity.posology = {
"text": document.getElementById("#posology-input-1").value
}
data.entities.push(new_entity);
posologyCheckerWidget.update(data);
Mise à jour du jeton JWT :
posologyCheckerWidget.setCallback("onTokenExpiration", function (err, data) {
var jwtToken = fetchNewToken();
posologyCheckerWidget.setToken(jwtToken);
});
init(element, data)
Initialisation du widget dans un élément du DOM.
Parametre | Requis | Type | Description |
---|---|---|---|
element | true | Element | Objet spécifiant l’élément du DOM dans lequel sera inséré le widget |
data | true | Object | Données d'initialisation |
data.entities | true | [Entity] | Liste des médicaments de l'ordonnance à analyser |
data.mode | false | string | Mode d'affichage du widget : default ou compact |
update(data)
Mise à jour du widget à partir de nouvelles données d’ordonnance.
Parametre | Requis | Type | Description |
---|---|---|---|
data | true | Object | Données d'initialisation |
data.entities | false | [Entity] | Liste des médicaments de l'ordonnance à analyser |
data.mode | false | string | Mode d'affichage du widget : default ou compact |
setToken(jwtToken)
Définition du jeton JWT à utiliser par le widget.
Parametre | Requis | Type | Description |
---|---|---|---|
jwtToken | true | string | Jeton JWT à utiliser par le widget |
setCallback(“onTokenExpiration”, callback)
Spécification d'une callback à appeler lors de l'expiration du jeton JWT.
Cette callback est mutualisée entre tous les widgets.
Parametre | Requis | Type | Description |
---|---|---|---|
callback | true | function | Fonction à appeler prenant en paramètres (err, data) |
ProfileWidget
Ce widget permet la saisie par l'utilisateur d'un profil patient. La liste des champs de saisie est paramétrable parmi :
- âge,
- insuffisance hépatique,
- insuffisance rénale,
- insuffisance cardiaque,
- grossesse
Initialisation du widget :
var profileWidget = new Synapse.ProfileWidget(jwtToken);
var initialProfile = {
cardiac: Synapse.Profile.CardiacProfile.MODERATE,
kidney: Synapse.Profile.KidneyProfile.LIGHT,
ageRange: Synapse.ProfileType.AgeRange.LESS_65,
isPregnant: false
}
var data = {"profile": initialProfile, "isDisplayHepatic": false };
profileWidget.init(document.getElementById("profilePlaceholder"), data);
Récuparation du profil lors d'une modification de l'utilisateur :
profileWidget.setCallback("onProfileUpdate", function (err, data) {
var updatedProfile = data.profile;
saveProfile(updatedProfile);
groundsWidget.update({"profile": updatedProfile})
});
init(element, data)
Initialisation du widget dans un élément du DOM.
Parametre | Requis | Type | Description |
---|---|---|---|
element | true | Element | Objet spécifiant l’élément du DOM dans lequel sera inséré le widget |
data | true | Object | Données d'initialisation |
data.profile | false | [Profile] | Valeur initiale du profil patient |
data.isDisplayCardiac | false | boolean | Spécifie si le champ de saisie du profil cardiaque est affiché |
data.isDisplayHepatic | false | boolean | Spécifie si le champ de saisie du profil hépatique est affiché |
data.isDisplayKidney | false | boolean | Spécifie si le champ de saisie du profil rénal est affiché |
data.isDisplayAge | false | boolean | Spécifie si le champ de saisie de l'âge est affiché |
data.isDisplayPregnant | false | boolean | Spécifie si le champ de saisie de la grossesse est affiché |
update(data)
Mise à jour du widget à partir de nouvelles données de profil.
Parametre | Requis | Type | Description |
---|---|---|---|
data | true | Object | Données de mise à jour |
data.profile | true | [Profile] | Profil mis à jour |
setToken(jwtToken)
Définition du jeton JWT à utiliser par le widget.
Parametre | Requis | Type | Description |
---|---|---|---|
jwtToken | true | string | Jeton JWT à utiliser par le widget |
setCallback(“onProfileUpdate”, callback)
Spécification d'une callback à appeler lors de la modification du profil patient par l'utilisateur.
Parametre | Requis | Type | Description |
---|---|---|---|
callback | true | function | Fonction à appeler prenant en paramètres (err, data) où data.profile de type Profile] est le profil est mis à jour |
setCallback(“onTokenExpiration”, callback)
Spécification d'une callback à appeler lors de l'expiration du jeton JWT.
Cette callback est mutualisée entre tous les widgets.
Parametre | Requis | Type | Description |
---|---|---|---|
callback | true | function | Fonction à appeler prenant en paramètres (err, data) |
StartStoppWidget
Ce widget recherche les critères STOPP (Dalleur et al.) associés à une ordonnance.
Initialisation du widget à partir de premiers résultats d'autocomplétion :
var startStoppWidget = new Synapse.StartStoppWidget(jwtToken);
var data = {"entities": [autocompleteResult1] };
startStoppWidget.init(document.getElementById("startStoppPlaceholder"), data);
Mise à jour du widget lors de l'ajout de nouveaux médicaments :
data.entities.push(autocompleteResult2);
startStoppWidget.update(data);
Mise à jour du jeton JWT :
startStoppWidget.setCallback("onTokenExpiration", function (err, data) {
var jwtToken = fetchNewToken();
startStoppWidget.setToken(jwtToken);
});
init(element, data)
Initialisation du widget dans un élément du DOM.
Parametre | Requis | Type | Description |
---|---|---|---|
element | true | Element | Objet spécifiant l’élément du DOM dans lequel sera inséré le widget |
data | true | Object | Données d'initialisation |
data.entities | true | [Entity] | Liste des médicaments de l'ordonnance à analyser |
update(data)
Mise à jour du widget à partir de nouvelles données d’ordonnance.
Parametre | Requis | Type | Description |
---|---|---|---|
data | true | Object | Données d'initialisation |
data.entities | true | [Entity] | Liste des médicaments de l'ordonnance à analyser |
setToken(jwtToken)
Définition du jeton JWT à utiliser par le widget.
Parametre | Requis | Type | Description |
---|---|---|---|
jwtToken | true | string | Jeton JWT à utiliser par le widget |
setCallback(“onTokenExpiration”, callback)
Spécification d'une callback à appeler lors de l'expiration du jeton JWT.
Cette callback est mutualisée entre tous les widgets.
Parametre | Requis | Type | Description |
---|---|---|---|
callback | true | function | Fonction à appeler prenant en paramètres (err, data) |
Format de données
Entity (object)
Exemple de spécialité médicamenteuse :
{
"brandname": "IBUPROFENE MYLAN CONSEIL",
"cis": "64594722",
"ingredients": [
{
"dose": "684 mg",
"label": "ibuprofène (lysinate d')",
"uri": "http://frnorm.graph.synapse-medicine.com#PharmaceuticalIngredient/890232a27d7c4398ee1138205f17a87e25dc13fc"
}
],
"label": "IBUPROFENE MYLAN CONSEIL 400 mg, comprimé pelliculé",
"moieties": [
{
"dose": "0,4 g",
"label": "ibuprofène",
"uri": "http://frnorm.graph.synapse-medicine.com#PharmaceuticalIngredient/a296a3f7964b5aa84e42b85549d60eb3b54cf858"
}
],
"shortname": "IBUPROFENE",
"type": "branded-drug",
"uri": "http://frnorm.graph.synapse-medicine.com#BrandedDrug/64594722"
}
Exemple de molécule active :
{
"label": "paracétamol",
"type": "pharmaceutical-ingredient",
"uri": "http://frnorm.graph.synapse-medicine.com#PharmaceuticalIngredient/7fe0342fcdef507a3066831e939cccb6aee60e46"
}
Entité thérapeutique définie par les champs suivants :
Champ | Type | Description |
---|---|---|
label | string | Nom de l'entité |
uri | string | Identifiant Synapse unique de l'entité |
type | EntityType | Type d'entité thérapeutique |
cis | string | Code CIS (pour les spécialités uniquement) |
shortname | string | Nom court de spécialité (pour les spécialités uniquement) |
brandname | string | Nom de marque de spécialité (pour les spécialités uniquement) |
ingredients | [Entity] | Liste des substances actives de la spécialité (pour les spécialités uniquement) |
moieties | [Entity] | Liste des fractions thérapeutiques de la spécialité (pour les spécialités uniquement) |
posology | Posology | Posologie de la spécialité |
EntityType (string)
Type d'entité thérapeutique
Valeur | Description |
---|---|
'branded-drug' |
Spécialité médicamenteuse ex: DOLIPRANE 500mg, comprimé |
'pharmaceutical-ingredient' |
Molécule active (DCI) ex: paracetamol |
'therapeutic-class' |
Classe thérapeutique ex: hyperkaliémiants |
Posology (object)
Exemple de posologie :
{
"posology": "2 cp 3 fois par jour"
}
Posologie d'un médicament :
Champ | Type | Description |
---|---|---|
text | string | Descriptif textuel de la posologie |
Profile (object)
Exemple de profil clinique patient :
var profile = {
cardiac: Synapse.ProfileType.CardiacProfile.MODERATE,
hepatic: Synapse.ProfileType.HepaticProfile.NONE,
kidney: Synapse.ProfileType.KidneyProfile.LIGHT,
ageRange: Synapse.ProfileType.AgeRange.LESS_65,
isPregnant: false,
}
Profil clinique du patient
Champ | Type | Description |
---|---|---|
cardiac | CardiacProfileType | Profil cardiaque du patient |
hepatic | HepaticProfileType | Profil hépatique du patient |
kidney | KidneyProfileType | Profil rénal du patient |
ageRange | AgeRange | Age du patient |
isPregnant | boolean | Spécifie si la patiente est enceinte |
AgeRange (enum)
Exemple de profils de tranche d'âge :
var old = Synapse.ProfileType.AgeRange.MORE_EQUAL_75;
var young = Synapse.ProfileType.AgeRange.LESS_65;
Type de tranche d'âge
Namespace Synapse.ProfileType.AgeRange
Valeur | Description |
---|---|
LESS_65 |
Age < 65 ans |
MORE_EQUAL_65_LESS_75 |
Age entre 65 et 75 ans |
MORE_EQUAL_75 |
Age >= 75 ans |
CardiacProfileType (enum)
Exemple de profils cardiaques :
var cardiacLight = Synapse.ProfileType.CardiacProfile.LIGHT;
var cardiacHeavy = Synapse.ProfileType.CardiacProfile.HEAVY;
Type de profil cardiaque
Namespace Synapse.ProfileType.CardiacProfile
Valeur | Description |
---|---|
NONE |
Profil inconnu ou pas de problème cardiaque |
LIGHT |
Insuffisance cardiaque légère |
MODERATE |
Insuffisance cardiaque modérée |
HEAVY |
Insuffisance cardiaque importante |
HepaticProfileType (enum)
Exemple de profils hépatiques :
var hepaticLight = Synapse.ProfileType.HepaticProfile.LIGHT;
var hepaticHeavy = Synapse.ProfileType.HepaticProfile.HEAVY;
Type de profil hépatique
Namespace Synapse.ProfileType.HepaticProfile
Valeur | Description |
---|---|
NONE |
Profil inconnu ou pas de problème hépatique |
LIGHT |
Insuffisance hépatique légère |
MODERATE |
Insuffisance hépatique modérée |
HEAVY |
Insuffisance hépatique importante |
KidneyProfileType (enum)
Exemple de profils d'insuffisance rénale :
var renalNone = Synapse.ProfileType.KidneyProfile.NONE;
var renalTerminal = Synapse.ProfileType.KidneyProfile.TERMINAL;
Type de profil d'insuffisance rénale
Namespace Synapse.ProfileType.KidneyProfile
Valeur | Description |
---|---|
NONE |
Profil inconnu ou pas de problème rénal |
LIGHT |
Insuffisance rénale légère |
MODERATE |
Insuffisance rénale modérée |
HEAVY |
Insuffisance rénale importante |
TERMINAL |
Insuffisance rénale terminale |