Información del paciente del buscador de coincidencias de prueba
El buscador de coincidencias de prueba usa la información del paciente para emparejar al paciente relevante con una sección de elegibilidad para un ensayo clínico. El buscador de coincidencias de prueba está revisando la elegibilidad de los pacientes para cada ensayo clínico relevante. Se puede proporcionar la información de cuatro maneras diferentes:
- Notas clínicas no estructuradas
- Agrupaciones de FHIR
- Coincidencia gradual (pregunta y respuesta)
- Clave/valor JSON
Nota:
Los ejemplos de este artículo se basan en la versión de API 2023-03-01-preview. Es posible que haya cambios entre versiones de API. Para obtener una versión específica de la API, use la referencia a la API de REST para ver la descripción completa.
Nota clínica no estructurada
Los datos de los pacientes se pueden proporcionar al buscador de coincidencias de prueba como una nota clínica no estructurada. El buscador de coincidencias de prueba realiza un paso previo de reconocimiento del lenguaje para analizar el texto no estructurado, recupera la información clínica del paciente y crea los datos del paciente como datos estructurados.
Al proporcionar datos de pacientes en notas clínicas, use el valor note
de Patient.PatientDocument.type
.
Actualmente, el buscador de coincidencias de prueba solo admite una nota clínica por paciente.
En el ejemplo siguiente, se muestra cómo proporcionar información de pacientes como una nota clínica no estructurada:
{
"configuration":{
"clinicalTrials":{
"registryFilters":[
{
"conditions":[
"Cancer"
],
"sources":[
"clinicaltrials.gov"
],
"facilityLocations":[
{
"state":"IL",
"country":"United States"
}
]
}
]
},
"verbose":true,
"includeEvidence":true
},
"patients":[
{
"id":"patient_1",
"info":{
"gender":"Male",
"birthDate":"2000-03-17",
"clinicalInfo":[
{
"system":"http://www.nlm.nih.gov/research/umls",
"code":"C0006826",
"name":"MalignantNeoplasms",
"value":"true"
}
]
},
"data":[
{
"type":"Note",
"clinicalType":"Consultation",
"id":"12-consult_15",
"content":{
"sourceType":"Inline",
"value":"TITLE: Cardiology Consult\r\n DIVISION OF CARDIOLOGY\r\n COMPREHENSIVE CONSULTATION NOTE\r\nCHIEF COMPLAINT: Patient is seen in consultation today at the\r\nrequest of Dr. [**Last Name (STitle) 13959**]. We are asked to give consultative advice\r\nregarding evaluation and management of Acute CHF.\r\nHISTORY OF PRESENT ILLNESS:\r\n71 year old man with CAD w\/ diastolic dysfunction, CKD, Renal\r\nCell CA s\/p left nephrectomy, CLL, known lung masses and recent\r\nbrochial artery bleed, s\/p embolization of LLL bronchial artery\r\n[**1-17**], readmitted with hemoptysis on [**2120-2-3**] from [**Hospital 328**] [**Hospital 9250**]\r\ntransferred from BMT floor following second episode of hypoxic\r\nrespiratory failure, HTN and tachycardia in 3 days. Per report,\r\non the evening of transfer to the [**Hospital Unit Name 1**], patient continued to\r\nremain tachypnic in upper 30s and was receiving IVF NS at\r\n100cc\/hr for concern of hypovolemic hypernatremia. He also had\r\nreceived 1unit PRBCs with temp rise for 98.3 to 100.4, he was\r\ncultured at that time, and transfusion rxn work up was initiated.\r\nAt around 5:30am, he was found to be newly hypertensive with SBP\r\n>200 with a regular tachycardia to 160 with new hypoxia requiring\r\nshovel mask. He received 1mg IV ativan, 1mg morphine, lasix 40mg\r\nIV x1, and lopressor 5mg IV. ABG 7.20\/63\/61 on shovel mask. "
}
}
]
}
]
}
Agrupaciones de FHIR
Los datos de los pacientes se pueden proporcionar al buscador de coincidencias de prueba como una agrupación de FHIR. Los datos de pacientes en formato de agrupación de FHIR se pueden recuperar desde un servidor FHIR o desde un sistema EMR/EHR que proporciona una interfaz FHIR.
El buscador de coincidencias de prueba admite perfiles de USCore y perfiles de mCode.
Al proporcionar datos de pacientes como una agrupación de FHIR, use el valor fhirBundle
para Patient.PatientDocument.type
.
El valor de fhirBundle
debería proporcionarse como referencia con el contenido, incluyendo el URI de referencia.
En el ejemplo siguiente, se muestra cómo proporcionar información de pacientes como una agrupación de FHIR:
{
"configuration": {
"clinicalTrials": {
"registryFilters": [
{
"conditions": [
"Cancer"
],
"phases": [
"phase1"
],
"sources": [
"clinicaltrials.gov"
],
"facilityLocations": [
{
"state": "CA",
"country": "United States"
}
]
}
]
},
"verbose": true,
"includeEvidence": true
},
"patients": [
{
"id": "patient_1",
"info": {
"gender": "Female",
"birthDate": "2000-03-17"
},
"data": [
{
"type": "FhirBundle",
"clinicalType": "Consultation",
"id": "Consultation-14-Demo",
"content": {
"sourceType": "Inline",
"value": "{\"resourceType\":\"Bundle\",\"id\":\"1ca45d61-eb04-4c7d-9784-05e31e03e3c6\",\"meta\":{\"profile\":[\"http://hl7.org/fhir/4.0.1/StructureDefinition/Bundle\"]},\"identifier\":{\"system\":\"urn:ietf:rfc:3986\",\"value\":\"urn:uuid:1ca45d61-eb04-4c7d-9784-05e31e03e3c6\"},\"type\":\"document\",\"entry\":[{\"fullUrl\":\"Composition/baff5da4-0b29-4a57-906d-0e23d6d49eea\",\"resource\":{\"resourceType\":\"Composition\",\"id\":\"baff5da4-0b29-4a57-906d-0e23d6d49eea\",\"status\":\"final\",\"type\":{\"coding\":[{\"system\":\"http://loinc.org\",\"code\":\"11488-4\",\"display\":\"Consult note\"}],\"text\":\"Consult note\"},\"subject\":{\"reference\":\"Patient/894a042e-625c-48b3-a710-759e09454897\",\"type\":\"Patient\"},\"encounter\":{\"reference\":\"Encounter/d6535404-17da-4282-82c2-2eb7b9b86a47\",\"type\":\"Encounter\",\"display\":\"unknown\"},\"date\":\"2022-08-16\",\"author\":[{\"reference\":\"Practitioner/082e9fc4-7483-4ef8-b83d-ea0733859cdc\",\"type\":\"Practitioner\",\"display\":\"Unknown\"}],\"title\":\"Consult note\",\"section\":[{\"title\":\"Chief Complaint\",\"code\":{\"coding\":[{\"system\":\"http://loinc.org\",\"code\":\"46239-0\",\"display\":\"Reason for visit and chief complaint\"}],\"text\":\"Chief Complaint\"},\"text\":{\"div\":\"<div>\\r\\n\\t\\t\\t\\t\\t\\t\\t<h1>Chief Complaint</h1>\\r\\n\\t\\t\\t\\t\\t\\t\\t<p>\\\"swelling of tongue and difficulty breathing and swallowing\\\"</p>\\r\\n\\t\\t\\t\\t\\t</div>\"},\"entry\":[{\"reference\":\"List/a7ba1fc8-7544-4f1a-ac4e-c0430159001f\",\"type\":\"List\",\"display\":\"Chief Complaint\"}]},{\"title\":\"History of Present Illness\",\"code\":{\"coding\":[{\"system\":\"http://loinc.org\",\"code\":\"10164-2\",\"display\":\"History of present illness\"}],\"text\":\"History of Present Illness\"},\"text\":{\"div\":\"<div>\\r\\n\\t\\t\\t\\t\\t\\t\\t<h1>History of Present Illness</h1>\\r\\n\\t\\t\\t\\t\\t\\t\\t<p>77 y o woman in NAD with a h/o CAD, DM2, asthma and HTN on altace for 8 years awoke from sleep around 2:30 am this morning of a sore throat and swelling of tongue. She came immediately to the ED b/c she was having difficulty swallowing and some trouble breathing due to obstruction caused by the swelling. She has never had a similar reaction ever before and she did not have any associated SOB, chest pain, itching, or nausea. She has not noticed any rashes, and has been afebrile. She says that she feels like it is swollen down in her esophagus as well. In the ED she was given 25mg benadryl IV, 125 mg solumedrol IV and pepcid 20 mg IV. This has helped the swelling some but her throat still hurts and it hurts to swallow. Nothing else was able to relieve the pain and nothing make it worse though she has not tried to drink any fluids because of trouble swallowing. She denies any recent travel, recent exposure to unusual plants or animals or other allergens. She has not started any new medications, has not used any new lotions or perfumes and has not eaten any unusual foods. Patient has not taken any of her oral medications today.</p>\\r\\n\\t\\t\\t\\t\\t</div>\"},\"entry\":[{\"reference\":\"List/c1c10373-6325-4339-b962-c3c114969ccd\",\"type\":\"List\",\"display\":\"History of Present Illness\"}]},{\"title\":\"Surgical History\",\"code\":{\"coding\":[{\"system\":\"http://loinc.org\",\"code\":\"10164-2\",\"display\":\"History of present illness\"}],\"text\":\"Surgical History\"},\"text\":{\"div\":\"<div>\\r\\n\\t\\t\\t\\t\\t\\t\\t<h1>Surgical History</h1>\\r\\n\\t\\t\\t\\t\\t\\t\\t<p>s/p Cardiac stent in 1999 \\r\\ns/p hystarectomy in 1970s \\r\\ns/p kidney stone retrieval 1960s</p>\\r\\n\\t\\t\\t\\t\\t</div>\"},\"entry\":[{\"reference\":\"List/1d5dcbe4-7206-4a27-b3a8-52e4d30dacfe\",\"type\":\"List\",\"display\":\"Surgical History\"}]},{\"title\":\"Medical History\",\"code\":{\"coding\":[{\"system\":\"http://loinc.org\",\"code\":\"11348-0\",\"display\":\"Past medical
...."
}
}
]
}
]
}
Coincidencia gradual
El buscador de coincidencias de prueba también se puede usar con la coincidencia gradual. En este modo, puede enviar solicitudes al buscador de coincidencias de prueba de forma gradual, mediante inteligencia conversacional o escenarios similares al chat.
La coincidencia gradual usa información de pacientes para buscar coincidencias, incluyendo datos demográficos (género y fecha de nacimiento) e información clínica estructurada. Al enviar información clínica a través de la coincidencia gradual, la información clínica se envía como una lista de clinicalCodedElements
. Cada uno se expresa en un sistema de codificación clínica como código extendido con información semántica y valor.
Diferenciación de conceptos
Otra información clínica se deriva de los criterios de idoneidad encontrados en el subconjunto de ensayos de la consulta. El modelo selecciona hasta tres de los conceptos más diferenciadores, es decir, que ayuda al máximo a calificar al paciente. El modelo solo indica los conceptos que aparecen en las pruebas y no sugiere la recopilación de información que no es necesaria y no ayuda en la calificación.
Cuando coincida con los posibles pacientes elegibles a un ensayo clínico, se debe proporcionar el mismo concepto de información clínica necesaria. En este caso, se seleccionan los tres conceptos más diferenciadores para el ensayo clínico proporcionado. En caso de que se haya proporcionado más de un ensayo, se seleccionarán tres conceptos para todas las pruebas clínicas proporcionadas.
Se espera que los clientes usen el archivo
UMLSConceptsMapping.json
proporcionado para asignar cada concepto seleccionado con el tipo de respuesta esperado. Los clientes también pueden usar el texto de preguntas sugeridas para generar preguntas a los usuarios. El cliente también puede editar o localizar el texto de la pregunta.Al devolver información de pacientes al buscador de coincidencias de prueba, también se puede enviar un valor
null
a cualquier concepto. Enviar un valornull
al concepto indica al buscador de coincidencias de prueba que omita ese concepto, lo ignore en la calificación del paciente y, en su lugar, envíe el siguiente concepto diferenciador en la respuesta.
Importante
Normalmente, cuando se usa la coincidencia gradual, la primera solicitud al buscador de coincidencias de prueba incluirá una lista de registryFilters
basada en la configuración del cliente y las respuestas de usuario (por ejemplo, condición y ubicación). La respuesta a la solicitud inicial incluirá una lista de prueba ids
. Para mejorar el rendimiento y reducir la latencia, la prueba ids
debería usarse directamente en solicitudes consecutivas (utilizando el registryFilter ids
), en lugar del original registryFilters
que se usó.
Conceptos de categoría
Hay cinco categorías diferentes que se usan como conceptos:
- Identificador de concepto de UMLS que representa un único concepto
- Identificador de concepto de UMLS que representa varios conceptos relacionados
- Conceptos textuales
- Tipos de entidades
- Tipos semánticos
1. Identificador de concepto de UMLS que representa un único concepto
Cada concepto de esta categoría se representa mediante un identificador de UMLS único. Los tipos de respuesta esperados pueden ser booleanos, numéricos o de un conjunto de opciones definido.
Concepto de ejemplo de la respuesta de la API neededClinicalInfo:
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": "C1512162",
"name": "Eastern Cooperative Oncology Group"
}
Asignación de ejemplo para el concepto anterior de UMLSConceptsMapping.json:
"C1512162": {
"codes": "C1512162;C1520224",
"name": "ECOG",
"choices": [ "0", "1", "2", "3", "4" ],
"question": "What is the patient's ECOG score?",
"answerType": "Choice"
}
Valor de ejemplo enviado al buscador de coincidencias de prueba para la categoría anterior:
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": "C1512162",
"name": "Eastern Cooperative Oncology Group",
"value": "2"
}
2. Identificador de concepto de UMLS que representa varios conceptos relacionados
Algunos identificadores de concepto de UMLS pueden representar varios conceptos relacionados, que normalmente se muestran al usuario como una pregunta de varias opciones, como conceptos relacionados con la salud mental o el almacenamiento provisional de TNM. En esta categoría, se espera que las respuestas incluyan varios códigos y valores, uno para cada concepto que forme parte de los conceptos relacionados.
Concepto de ejemplo de la respuesta de la API neededClinicalInfo:
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": " C0475284",
"name": "TNM tumor staging system "
}
Asignación de ejemplo para el concepto anterior de UMLSConceptsMapping.json:
"C0475284": {
"codes": "C0475284",
"name": "TNM tumor staging system",
"question": "If the patient was diagnosed with cancer, what is the patient's TNM stage?",
"answerType": "MultiChoice",
"multiChoice": {
"C0475455": {
"codes": "C0475455",
"name": "T (Tumor)",
"answerType": "Choice",
"choices": [ "x", "0", "is", "1", "1a", "1b", "1c", "2", "2a", "2b", "2c", "3", "3a", "3b", "3c", "4", "4a", "4b", "4c" ]
},
"C0456532": {
"codes": "C0456532",
"name": "N (Lymph nodes)",
"answerType": "Choice",
"choices": [ "x", "0", "1", "1a", "1b", "1c", "2", "2a", "2b", "2c", "3", "3a", "3b", "3c" ]
},
"C0456533": {
"codes": "C0456533",
"name": "M (Metastases)",
"answerType": "Choice",
"choices": [ "x", "0", "1", "1a", "1b", "1c" ]
}
}
}
Valores de ejemplo enviados al buscador de coincidencias de prueba para la categoría anterior:
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": "C0475455",
"name": "T (Tumor)",
"value": "1a"
},
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": "C0456532",
"name": "N (Lymph nodes)",
"value": "1a"
},
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": "C0456533",
"name": "M (Metastases)",
"value": "1"
}
3. Conceptos textuales
Los conceptos textuales son conceptos en los que el código es una cadena en lugar de un código UMLS. Los conceptos textuales normalmente se usan para identificar la morfología de la enfermedad y las características del comportamiento.
Concepto de ejemplo de la respuesta de la API neededClinicalInfo:
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": "NONINVASIVE",
"name": "noninvasive;non invasive"
}
Asignación de ejemplo para el concepto anterior de UMLSConceptsMapping.json:
"NONINVASIVE": {
"codes": "noninvasive",
"name": "noninvasive;non invasive",
"question": "Was the patient diagnosed with a %p1% disease?",
"answerType": "Boolean"
}
Valor de ejemplo enviado al buscador de coincidencias de prueba para el concepto anterior:
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": "NONINVASIVE",
"name": "noninvasive;non invasive",
"value": "true"
}
4. Tipos de entidades
Los conceptos de tipo de entidad son conceptos agrupados en tipos de entidad comunes, como medicamentos e información de biomarcadores y genómica.
Cuando los clientes envían conceptos de tipo de entidad al buscador de coincidencias de prueba como parte de la información clínica del paciente, deben concatenar la cadena de tipo de entidad con el valor, separados por punto y coma.
Concepto de ejemplo de la respuesta de la API neededClinicalInfo:
{
"category": "GENEORPROTEIN-VARIANT",
"system": "http://www.nlm.nih.gov/research/umls",
"code": " C1414313",
"name": " EGFR gene ",
"value": "EntityType:GENEORPROTEIN-VARIANT"
}
Asignación de ejemplo para la categoría anterior de UMLSConceptsMapping.json:
"GENEORPROTEIN-VARIANT": {
"codes": "GeneOrProtein-Variant;GeneOrProtein-MutationType",
"question": "Does the patient carry %p1% mutation/abnormality?",
"name": "GeneOrProtein-Variant",
"answerType": "Boolean"
}
Valor de ejemplo enviado al buscador de coincidencias de prueba para la categoría anterior:
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": " C1414313",
"name": "EGFR gene",
"value": "true;GENEORPROTEIN-VARIANT"
}
5. Tipos semánticos
Los conceptos de tipo semántico son otra categoría de conceptos agrupados por el tipo semántico de entidades. Cuando los clientes envían conceptos de tipo semántico al buscador de coincidencias de prueba como parte de la información clínica del paciente, no es necesario concatenar la entidad o el tipo semántico de la entidad al valor.
Concepto de ejemplo de la respuesta de la API neededClinicalInfo:
{
"category": "DIAGNOSIS",
"semanticType": "T047",
"system": "http://www.nlm.nih.gov/research/umls",
"code": "C0014130",
"name": "Endocrine System Diseases",
"value": "EntityType:DIAGNOSIS"
}
Asignación de ejemplo para la categoría anterior de UMLSConceptsMapping.json:
"DIAGNOSIS,T047": {
"name": "Diagnosis X Disease or Syndrome",
"question": "Was the patient diagnosed with %p1%?",
"answerType": "Boolean"
}
Valor de ejemplo enviado al buscador de coincidencias de prueba para la categoría anterior:
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": "C0014130",
"name": "Endocrine System Diseases",
"value": "false"
}
Pasos siguientes
Para empezar a usar el modelo del buscador de coincidencias de prueba: