
 <?IS10744:arch name="LevelOne"
     public-id="-//HL7 KEG//NOTATION AFDR ARCBASE HL7 Document architecture LevelOne//EN"
     dtd-system-id="pra.dtd"
renamer-att="LevelOneAtt"     
suppressor-att="LevelOneSuppress" 
?> 

<!--
============================================================
============================================================
Health and Physical
============================================================
============================================================
-->
<!ELEMENT HP (Head, Body)>
<!ATTLIST HP LevelOne NMTOKEN #FIXED "LevelOne">

<!ELEMENT Head 
		(DocumentMetaData,
		HospitalizationMetaData,
		PatientMetaData,
		PhysicianMetaData)>
<!ATTLIST Head
LevelOne NMTOKEN #FIXED "header">

<!--
===========================================
===========================================
Document MetaData
===========================================
===========================================
-->
<!ELEMENT DocumentMetaData
		(DictationDate,
		TranscriptionDate,
		TranscriptionPerson,
		DocumentID,
                document.originating.system,
		DictationPerson,
		document.state,
		ReportType,
		Signatory)>
<!ATTLIST DocumentMetaData
LevelOne NMTOKEN #FIXED "document">

<!ELEMENT DictationDate (#PCDATA)>
<!ATTLIST DictationDate
LevelOne NMTOKEN #FIXED "document.creation.date">

<!ELEMENT TranscriptionDate (#PCDATA)>
<!ATTLIST TranscriptionDate
LevelOne NMTOKEN #FIXED "document.edit.date">

<!ELEMENT TranscriptionPerson (#PCDATA)>

<!ELEMENT DocumentID (id.value)>
<!ATTLIST DocumentID 
LevelOne NMTOKEN #FIXED "document.id">

<!ELEMENT id.value (#PCDATA)>
<!ATTLIST id.value 
LevelOne NMTOKEN #FIXED "id.value">

<!ELEMENT document.originating.system (id.value)>
<!ATTLIST document.originating.system 
LevelOne NMTOKEN #FIXED "document.originating.system">

<!ELEMENT DictationPerson 
		(PhysicianNumber,
		LastName,
		FirstName,
		Degree?)>
<!ATTLIST DictationPerson
LevelOne NMTOKEN #FIXED "document.originator.id">

<!ELEMENT document.state (#PCDATA)> 
<!ATTLIST document.state
   LevelOne NMTOKEN #FIXED "document.state"
   doc-atts CDATA #FIXED "value #CONTENT">

<!ELEMENT ReportType (#PCDATA)>
<!ATTLIST ReportType 
   LevelOne NMTOKEN #FIXED "document.type"
   doc-atts CDATA #FIXED "value #CONTENT">

<!ELEMENT Signatory (#PCDATA)>

<!--
===========================================
===========================================
 Hospitalization MetaData
===========================================
===========================================
-->
<!ELEMENT HospitalizationMetaData
                (event.id,
		AdmissionDate,
		DischargeDate
)>
<!ATTLIST HospitalizationMetaData
LevelOne NMTOKEN #FIXED "event">

<!ELEMENT event.id (id.value)>
<!ATTLIST event.id 
LevelOne NMTOKEN #FIXED "event.id">

<!ELEMENT AdmissionDate (#PCDATA)>

<!ELEMENT DischargeDate (#PCDATA)>
<!ATTLIST DischargeDate 
LevelOne NMTOKEN #FIXED "event.date">

<!--
===========================================
===========================================
Patient MetaData
===========================================
===========================================
-->
<!ELEMENT PatientMetaData
		(HospitalMetaData,
		PatientName,
		 Birthdate)>
<!ATTLIST PatientMetaData
LevelOne NMTOKEN #FIXED "patient">

<!ELEMENT HospitalMetaData
		(HospitalNumber?,
		MedicalRecordNumber,
		PatientAccount)>
<!ATTLIST HospitalMetaData
LevelOne NMTOKEN #FIXED "patient.id">

<!ELEMENT PatientName
		(LastName,
                FirstName,
		Degree?)>
<!ATTLIST PatientName
LevelOne NMTOKEN #FIXED "patient.name">

<!ELEMENT Birthdate (#PCDATA)>
<!ATTLIST Birthdate
LevelOne NMTOKEN #FIXED "patient.date.of.birth">


<!ELEMENT HospitalNumber (#PCDATA)>

<!ELEMENT MedicalRecordNumber (#PCDATA)>

<!ELEMENT PatientAccount (#PCDATA)>
<!ATTLIST PatientAccount
LevelOne NMTOKEN #FIXED "id.value">

<!--
===========================================
===========================================
Physician MetaData
===========================================
===========================================
-->
<!ELEMENT PhysicianMetaData
		(PrimaryPhysician,
		CCProviders*)>

<!ELEMENT PrimaryPhysician (PhysicianName)>
<!ATTLIST PrimaryPhysician
LevelOne NMTOKEN #FIXED "practitioner">

<!ELEMENT CCProviders (OtherName)>
<!ATTLIST CCProviders
LevelOne NMTOKEN #FIXED "practitioner">

<!ELEMENT PhysicianName
		(PhysicianNumber,
		LastName,
		FirstName,
		Degree?)>
<!ATTLIST PhysicianName 
LevelOne NMTOKEN #FIXED "practitioner.id">

<!ELEMENT OtherName
		(PhysicianNumber,
		LastName,
		FirstName,
		Degree?)>
<!ATTLIST OtherName 
LevelOne NMTOKEN #FIXED "practitioner.id">

<!ELEMENT PhysicianNumber (#PCDATA)>
<!ATTLIST PhysicianNumber
LevelOne NMTOKEN #FIXED "id.value">

<!--
===========================================
===========================================
 Name
===========================================
===========================================
-->
<!ELEMENT FirstName (#PCDATA)>
<!ATTLIST FirstName
LevelOne NMTOKEN #FIXED "given.name">

<!ELEMENT LastName (#PCDATA)>
<!ATTLIST LastName
LevelOne NMTOKEN #FIXED "family.name">

<!ELEMENT Degree (#PCDATA)>
<!ATTLIST Degree
LevelOne NMTOKEN #FIXED "degree">


<!--
===========================================
 Text
===========================================
-->
<!ENTITY % BlockText "Unpopulated|Subsection|paragraph|NumberedList|UnorderedList|DefinitionList">
<!-- jw: changed paragraph to lower case -->

<!ELEMENT Title (#PCDATA)>
<!ATTLIST Title
LevelOne NMTOKEN #FIXED "section.title">

<!ENTITY % content "Title?, (%BlockText;)+">

<!ELEMENT Unpopulated (#PCDATA)>
<!ELEMENT Subsection (%content;)>
<!ELEMENT paragraph
		(#PCDATA|
		%BlockText;)*>
<!ELEMENT NumberedList
		(Title?,
		Item+)>
<!ELEMENT UnorderedList
		(Title?,
		Item+)>
<!ELEMENT DefinitionList
		(Title?,
		(DefinitionObject, Item)+)>
<!ELEMENT DefinitionObject (#PCDATA)>
<!ELEMENT Item
		(#PCDATA|
		paragraph|
		NumberedList|
		UnorderedList|
		DefinitionList)*>


<!--
===========================================
 Admission Diagnosis
===========================================
-->

<!ELEMENT AdmissionData (
   AdmissionDiagnoses?, 
   HistoryofPresentIllness?,
   PastMedicalHistory?,
   CurrentMedications?,
   ReviewOfSystems?,
   AdmittingPhysicalExamination?,
   PhysicalExamination?,
   Impression?,
   Plan?
)>

<!ATTLIST AdmissionData
LevelOne NMTOKEN #FIXED "section">


<!ELEMENT AdmissionDiagnoses(%content;)>
<!ATTLIST AdmissionDiagnoses
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT HistoryofPresentIllness(%content;)>
<!ATTLIST HistoryofPresentIllness
LevelOne NMTOKEN #FIXED "section">


<!ELEMENT PastMedicalHistory(%content;)>
<!ATTLIST PastMedicalHistory
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT CurrentMedications(%content;)>
<!ATTLIST CurrentMedications
LevelOne NMTOKEN #FIXED "section">


<!ELEMENT ReviewOfSystems(%content;)>
<!ATTLIST ReviewOfSystems
LevelOne NMTOKEN #FIXED "section">


<!ELEMENT PhysicalExamination(%content;)>
<!ATTLIST PhysicalExamination
LevelOne NMTOKEN #FIXED "section">


<!ELEMENT Impression(%content;)>
<!ATTLIST Impression
LevelOne NMTOKEN #FIXED "section">


<!ELEMENT Plan(%content;)>
<!ATTLIST Plan
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT AdmittingPhysicalExamination (
   Title?, 
   General?,
   HEENT?,
   Respiratory?,
   Cardiovascular?,
   Abdomen?,
   Extremities?
)>
<!ATTLIST AdmittingPhysicalExamination
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT General (%content;)>
<!ATTLIST General
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT HEENT(%content;)>
<!ATTLIST HEENT
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT Respiratory (%content;)>
<!ATTLIST Respiratory
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT Cardiovascular(%content;)>
<!ATTLIST Cardiovascular
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT Abdomen(%content;)>
<!ATTLIST Abdomen
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT Extremities(%content;)>
<!ATTLIST Extremities
LevelOne NMTOKEN #FIXED "section">

<!ELEMENT Body (AdmissionData)>
<!ATTLIST Body
LevelOne NMTOKEN #FIXED "body">


