datatypes xsd = "http://www.w3.org/2001/XMLSchema-datatypes" default namespace = "http://github.com/talkasab/assayer_process" include "uuid_attribute.rnc" start = el_scenario ## Define a clinical scenario. ## Consists of a patient who has an index exam, and many medical record items which ## may be relevant. el_scenario = element clinical_scenario { at_uuid, el_patient, el_index_exam, el_medical_record_item+ } ## Define a patient and demographic information el_patient = element patient { attribute age { xsd:nonNegativeInteger }, attribute sex { "M" | "F" } } ## The exam to which other medical record items must be relevant el_index_exam = element index_exam { attribute exam_type { string }, element clinical_history { text }, element exam_comment { text }?, element report { text } } ## Other medical record items that may be relevant to the index exam el_medical_record_item = element medical_record_item { attribute id { xsd:NMTOKEN }, ## How many days from the index exam this item occurred. ## Negative numbers are before the index exam attribute days_from_index { xsd:integer }, ## What kind of item ## OPN = operative note ## MIC = microbiology report ## PAT = pathology report ## NTE = clinical note ## NDO = endoscopy report attribute type { string "OPN" | string "MIC" | string "PAT" | string "NTE" | string "NDO" }, element description { text }, element report { text } }