e.Toscana Compliance 
Request for Comments: RFC-RF-005
Del: 03/06/2008 
Categoria: Applicativa
Destinatari: Regione Toscana, Aziende Sanitarie ed Ospedaliere, Comuni, Amministrazioni locali, Associazioni

	Carta Sanitaria della Regione Toscana
	
Indice
======

1. Contesto di riferimento	
2. Analisi 
  2.1 Use cases
    2.1.1 Ammissione
    2.1.2 Dimissione
    2.1.3 Trasferimento
  2.2 Eventi
    2.2.1 Ammissione
    2.2.2 Dimissione
    2.2.3 Trasferimento
3. Schemi XSD
  3.1 XSD Tipi Base
  3.2 XSD Ammissione
  3.3 XSD Dimissione
  3.4 XSD Trasferimento

4. Bibliografia

1.Contesto di riferimento
=========================
Questo RFC  la declinazione del RFC-AUSL8-001 relativamente al servizio di ammissione, dimissione e trasferimento (ADT).
 
2. Analisi
==========
Gli eventi generati in questo ambito prendono spunto dai Casi d'Uso individuati di seguito.

2.1 Use cases
=============

2.1.1 Ammissione
========================
Il Paziente, in base ad un ricovero programmato dal suo medico di base o ad un ricovero di urgenza richiesto dal Pronto Scoccorso[3], si presenta presso il presidio ospedaliero di riferimento.

La fase di accettazione puo' essere centralizzata, ovvero il paziente si presenta in un ben determinato punto del presidio per espletare il riconoscimento e tutte le formalita' burocratiche/amministrative, o distribuita, ovvero il paziente si presenta direttamente nel reparto e gli operatori del reparto stesso provvedono all'accettazione.


2.1.2 Dimissione
=========================
Il Paziente, terminato il ciclo diagnostico/clinico/terapeutico nel reparto di ricovero, ottiene la lettera di dimissione ospedaliera.

Al paziente vengono fornite tutte le specifiche di terapia post-degenza, di richiesta di farmaci, di richiesta di esami diagnostici post-degenza, e puo' tornare presso il proprio domicilio.

La dimissione puo' avere luogo anche per trasferimento ad altro ospedale o per morte del paziente.


2.1.3 Trasferimento
=========================
Il paziente, in virtu' degli esami clinici e diagnostici e della terapia effettuata evidenzia necessita' cliniche diverse da quelle iniziali che lo hanno portato in un determinato reparto ospedaliero.

Il medico di reparto responsabile del processo attiva quindi il trasferimento del paziente dal reparto di ricovero attuale al reparto ritenuto piu' consono alla nuova realta' clinica.


2.2 Eventi
==========
In corrispondenza di ciascun Use Case sopra descritto, vengono qui definiti gli 
eventi opportuni, specificando la definizione generale data in [1].

2.2.1 Ammissione
========================
Livello:                  1
Origine/RFC ref:          RFC-RF-005
Origine/Numero evento:    0001
Ordinamento temporale:    B
Contenuto:                Amministrativo
Stato/Percentuale:        0
Dettaglio:                secondo le schema rfc_adt_ev_0001.xsd

2.2.2 Dimissione
=========================
Livello:                  1
Origine/RFC ref:          RFC-RF-005
Origine/Numero evento:    0002
Ordinamento temporale:    E
Contenuto:                Amministrativo
Stato/Percentuale:        100
Dettaglio:                secondo le schema rfc_adt_ev_0002.xsd

2.2.3 Trasferimento
=========================
Livello:                  10
Origine/RFC ref:          RFC-RF-005
Origine/Numero evento:    0003
Ordinamento temporale:    NA
Contenuto:                Amministrativo
Stato/Percentuale:        50
Dettaglio:                secondo le schema rfc_adt_ev_0003.xsd

3. Schemi XSD
=============
Vengono qui riportati gli schemi XSD introdotti nei paragrafi precedenti.

3.1 XSD Tipi Base - rfc_adt_ev.xsd
=====================================
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" xmlns:rfc_ps_ev="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" targetNamespace="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" elementFormDefault="qualified">
	
	<xsd:simpleType name="data">
		<xsd:annotation>
			<xsd:documentation>Il formato e' quello ISO 8601</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:token">
			<xsd:pattern value="\d{4}-\d{2}-\d{2}"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ora">
		<xsd:annotation>
			<xsd:documentation>Il formato e' quello ISO 8601</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:token">
			<xsd:pattern value="\d{2}:\d{2}:\d{2}"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="dataOra">
		<xsd:annotation>
			<xsd:documentation>Il formato e' quello ISO 8601 senza offset GMT</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:token">
			<xsd:pattern value="\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="valoreCodificato">
		<xsd:sequence>
			<xsd:element name="Codice" type="xsd:string"/>
			<xsd:element name="Descrizione" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	
	<xsd:simpleType name="estInt">
		<xsd:annotation>
			<xsd:documentation>Indica se il paziente  ricoverato (I) o no (E)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:token">		
		  <xsd:enumeration value="E"/>    
		  <xsd:enumeration value="I"/>    
		</xsd:restriction>
	</xsd:simpleType> 		
	
	<xsd:simpleType name="codUsl">
		<xsd:annotation>
			<xsd:documentation></xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:token">
			<xsd:pattern value="\d{3}"/>
		</xsd:restriction>
	</xsd:simpleType>	
	
	<xsd:simpleType name="codRegione">
		<xsd:annotation>
			<xsd:documentation></xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:token">
			<xsd:pattern value="\d{3}"/>
		</xsd:restriction>
	</xsd:simpleType>	

	<xsd:complexType name="usl">
		<xsd:sequence>
			<xsd:element name="codice" type="tns:codUsl"/>
			<xsd:element name="descrizione" type="xsd:string" minOccurs="0"/>
			<xsd:element name="codregione" type="tns:codRegione"/>
			<xsd:element name="regione" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>	
	
	<xsd:simpleType name="numeroRicetta">
		<xsd:annotation>
			<xsd:documentation>Numero della ricetta SSN o interna</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:integer">
		    
		</xsd:restriction>
	</xsd:simpleType> 	
	
	<xsd:complexType name="Accesso">
		<xsd:sequence>
			<xsd:element name="CodiceAziendale" type="tns:valoreCodificato"/>
			<xsd:element name="CodiceReginale" type="tns:valoreCodificato"/>
			<xsd:element name="NumeroRicetta" type="tns:numeroRicetta" nillable="true" minOccurs="0"/>
			<xsd:element name="TipoProponente" type="tns:valoreCodificato" nillable="true" minOccurs="0"/>
			<xsd:element name="EstInt" type="tns:estInt"/>
			<xsd:element name="Finalita" type="tns:valoreCodificato" nillable="true" minOccurs="0"/>
			<xsd:element name="Proponente" type="xsd:string" nillable="true" minOccurs="0"/>
			<xsd:element name="USL" type="tns:usl" nillable="false"/>
			<xsd:element name="Reparto" type="tns:valoreCodificato" nillable="true" minOccurs="0"/>
			<xsd:element name="Disciplina" type="tns:valoreCodificato" nillable="true" minOccurs="0"/>
			<xsd:element name="CentroCosto" type="tns:valoreCodificato" nillable="true" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
		
	<xsd:complexType name="Ricovero">
		<xsd:sequence>
			<xsd:element name="Reparto" type="tns:valoreCodificato"/>
			<xsd:element name="DataRicovero" type="tns:data"/>
			<xsd:element name="Diagnosi" type="tns:valoreCodificato" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="TipoRicovero" type="tns:valoreCodificato"/>
			<xsd:element name="Accesso" type="tns:Accesso"/>
			<xsd:element name="Regime" type="tns:valoreCodificato"/>
			<xsd:element name="Modalita" type="tns:valoreCodificato"/>
			<xsd:element name="Matricola" type="xsd:string"/>
			<xsd:element name="DataDimissione" type="tns:dataOra" minOccurs="0"/>
			<xsd:element name="NoteAmmissione" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Terapie" type="tns:valoreCodificato" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="NoteDimissione" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Movimenti" type="tns:Movimento" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="LetteraDimissione" type="xsd:base64Binary" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Movimento">
		<xsd:sequence>
			<xsd:element name="DataOra" type="tns:dataOra"/>
			<xsd:element name="RepartoProvenienza" type="tns:valoreCodificato"/>
			<xsd:element name="RepartoDestinazione" type="tns:valoreCodificato"/>
		</xsd:sequence>
	</xsd:complexType>

</xsd:schema>



3.2 XSD Ammissione - rfc_adt_ev_0001.xsd
===================================================
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" xmlns:rfc_ps_ev="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" targetNamespace="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" elementFormDefault="qualified">
	<xsd:include schemaLocation="rfc_adt_ev.xsd" id="rfc_adt_ev"/>
	<xsd:complexType name="AdtEv0001">
		<xsd:sequence>
			<xsd:element name="AmmissioneRicovero" type="tns:Ricovero"/>
		</xsd:sequence>
	</xsd:complexType>
</xsd:schema>



3.3 XSD Dimissione - rfc_adt_ev_0002.xsd
====================================================
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" xmlns:rfc_ps_ev="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" targetNamespace="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" elementFormDefault="qualified">
	<xsd:include schemaLocation="rfc_adt_ev.xsd" id="rfc_adt_ev"/>
	<xsd:complexType name="AdtEv0002">
		<xsd:sequence>
			<xsd:element name="DimissioneRicovero" type="tns:Ricovero"/>
		</xsd:sequence>
	</xsd:complexType>
</xsd:schema>


3.3 XSD Trasferimento - rfc_adt_ev_0003.xsd
====================================================
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" xmlns:rfc_ps_ev="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" targetNamespace="http://www.erreeffe.it/schema/rfcrt/eventoclinico/adt" elementFormDefault="qualified">
	<xsd:include schemaLocation="rfc_adt_ev.xsd" id="rfc_adt_ev"/>
	<xsd:complexType name="AdtEv0003">
		<xsd:sequence>
			<xsd:element name="TrasferimentoRicovero" type="tns:Ricovero"/>
		</xsd:sequence>
	</xsd:complexType>
</xsd:schema>


4. Bibliografia
===============
[1]RFC-AUSL8-001 - Evento generato in ambiente sanitario
[2]http://www.cnipa.gov.it/site/_files/Architetture_applicative_r07.pdf
[3]RFC_RF04, PS.
[4]W3C XML Schema - www.w3.org/XML/Schema
