e.Toscana Compliance 
Request for Comments: 
Del: 18/01/2007 
Categoria: Applicativa
Destinatari: Regione Toscana, ASL, Comuni, Amministrazioni locali

	Invio verbale di accertamento prima istanza degli stati di invalidita' civile
	
Indice
======
1. Contesto di riferimento	
2. Obiettivi	
3. Analisi 
4. Prodotti attesi
5. Bibliografia

1. Contesto di riferimento

Questo documento RFC ha l'obiettivo di definire gli obiettivi  e le modalit di cooperazione per il dominio applicativo di Invaliditacivile
In questo dominio, gli Enti (Comuni, Province etc.) attivano le pratiche di invalidit civile a seguito della richiesta dei cittadini.
Questi dati devono essere inviati dagli Enti all'INPS.
Obiettivo della cooperazione  pertanto l'invio dei dati relativi alle pratiche di invalidit dagli Enti a INPS.
Questo RFC definisce le modalit con cui  realizzata la cooperazione in riferimento all'invio del verbale di accertamento prima istanza degli stati di 
i invalidita' civile verso i Comuni di competenza da parte delle ASL.

2. Obiettivi
============
L'obiettivo e' quello di snellire la gestione dei verbali di accertamento
inviandoli elettronicamente verso i comuni di competenza. 
I vantaggi sono :
* disponibilta' immediata dell'informazione da parte dei destinatari
* facile integrazione con gli applicativi

3. Analisi
==========
Il servizio di invio/ricezione del verbale di accertamento (esposto come web-service) realizza 
i seguenti caso d'uso :

1 - In questo scenario l'attore "ASL" chiama il servizio per l'invio(web-method invio) verso il Comune del verbale di accertamento fornendo il verbale stesso 
(dati anagrafici, esito ecc.) nel formato verbale.xsd e riceve come risultato l'esito della consegna (ok o errore) conforme a conferma.xsd

2 - In questo scenario l'attore "Comune" chiama il servizio per la ricezione dei verbali di accertamento inviate dalle ASL di competenza e conformi
allo schema verbale.xsd.

3 - In questo caso d'uso l'attore "Regione Toscana" chiama il servizio per la ricezione dei verbali di accertamento inviate dalle varie ASL, Si ha infatti 
che l'attore Regione Toscana riceve, per conoscenza, tutti i verbali inviati da tutte le ASL.

Questo caso d'uso viene gestito attraverso il servizio one-way SPC/InvaliditaCivileVerbale che si occupa della ricezione dei dati da ASL al Comune


Lo schema XML con la documentazione dei vari campi e' il seguente (verbale.xsd) :

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<!-- Anagrafe commissione -->
	<xs:element name="ANAGCOMM">
		<xs:annotation>
			<xs:documentation>Anagrafe della commissione</xs:documentation>
		</xs:annotation>
		<xs:complexType mixed="true">
			<xs:attribute name="TIPOINVALIDITA" use="required">
				<xs:annotation>
					<xs:documentation>Tipo di invalidit : 0=invalidit civile, 1=condizioni visive, 2=sordomutismo </xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
						<xs:enumeration value="2"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="REGUSL" use="required">
				<xs:annotation>
					<xs:documentation>Codice regione di 3 cifre</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="090"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="AZUSL" use="required">
				<xs:annotation>
					<xs:documentation>Codice azienda sanitaria : 101-112</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="101"/>
						<xs:enumeration value="102"/>
						<xs:enumeration value="103"/>
						<xs:enumeration value="104"/>
						<xs:enumeration value="105"/>
						<xs:enumeration value="106"/>
						<xs:enumeration value="107"/>
						<xs:enumeration value="108"/>
						<xs:enumeration value="109"/>
						<xs:enumeration value="110"/>
						<xs:enumeration value="111"/>
						<xs:enumeration value="112"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="ZONUSL" use="optional">
				<xs:annotation>
					<xs:documentation>Numerazione regionale zone (da 1 a 5)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CODCOMMISSIONE" use="required">
				<xs:annotation>
					<xs:documentation>Numerazione aziendale delle commissioni formata da codice azienda (3 cifre) e progressivo commisione (2 cifre)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="5"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	<!-- Domanda -->
	<xs:element name="DOMANDA">
		<xs:annotation>
			<xs:documentation>Domanda</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:attribute name="DATA_PRESENTAZIONE" type="xs:date" use="required">
				<xs:annotation>
					<xs:documentation>Data presentazione della domanda</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attribute name="NR_PRATICA" use="required">
				<xs:annotation>
					<xs:documentation>Codice attribuito dalla commissione aziendale</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="12"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	<!-- Anagrafe soggetto -->
	<xs:element name="ANAGSOGGETTO">
		<xs:annotation>
			<xs:documentation>Anagrafe soggetto</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:attribute name="COGNOMESOGGETTO" use="required">
				<xs:annotation>
					<xs:documentation>Cognome</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="NOMESOGGETTO" use="required">
				<xs:annotation>
					<xs:documentation>Nome</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="30"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="SESSO" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>Sesso : 0=.. ,1=.., 2=..</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
						<xs:enumeration value="2"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="COD_FISCALE" use="required">
				<xs:annotation>
					<xs:documentation>Codice fiscale</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="16"/>
						<xs:maxLength value="16"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DOCUMENTO_IDENTITA" use="required">
				<xs:annotation>
					<xs:documentation>Estremi del documento presentato per l'accertamento dell' identita'</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="50"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="D_NASCITA" type="xs:date" use="required">
				<xs:annotation>
					<xs:documentation>Data nascita</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attribute name="PROVINCIA_NASCITA" use="required">
				<xs:annotation>
					<xs:documentation>Codice ISTAT della provincia di nascita</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="3"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="COMUNE_NASCITA" use="required">
				<xs:annotation>
					<xs:documentation>Codice ISTAT del comune di nascita</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="3"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CITTADINANZA" use="optional">
				<xs:annotation>
					<xs:documentation>Codice ISTAT degli stati</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="3"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="PROVINCIA_RESIDENZA" use="required">
				<xs:annotation>
					<xs:documentation>Codice ISTAT della provincia di residenza</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="3"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="COMUNE_RESIDENZA" use="required">
				<xs:annotation>
					<xs:documentation>Codice ISTAT del comune di residenza</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="3"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="USL_RESIDENZA" use="optional" default="000">
				<xs:annotation>
					<xs:documentation>Codice ASL di residenza : 000, 101-112</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="000"/>
						<xs:enumeration value="101"/>
						<xs:enumeration value="102"/>
						<xs:enumeration value="103"/>
						<xs:enumeration value="104"/>
						<xs:enumeration value="105"/>
						<xs:enumeration value="106"/>
						<xs:enumeration value="107"/>
						<xs:enumeration value="108"/>
						<xs:enumeration value="109"/>
						<xs:enumeration value="110"/>
						<xs:enumeration value="111"/>
						<xs:enumeration value="112"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="ZONA_RESIDENZA" use="optional">
				<xs:annotation>
					<xs:documentation>Numerazione regionale zone (da 1 a 5)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="INDIRIZZO_VIA" use="required">
				<xs:annotation>
					<xs:documentation>Denominazione del tipo di localizzazione e nome della localizzazione</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="50"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="INDIRIZZO_NR" use="optional">
				<xs:annotation>
					<xs:documentation>Numero civico compresi eventuali caratteri intermedi</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="5"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="INDIRIZZO_CAP" use="required">
				<xs:annotation>
					<xs:documentation>Codice avviamento postale</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="5"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="PROFESSIONE" use="optional">
				<xs:annotation>
					<xs:documentation>Descrizione della condizione professionale del soggetto esaminato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DATA_DECESSO" type="xs:date" use="optional">
				<xs:annotation>
					<xs:documentation>Data del decesso</xs:documentation>
				</xs:annotation>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	<!-- Visita -->
	<xs:element name="VISITA">
		<xs:annotation>
			<xs:documentation>Visita</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:attribute name="DATA_VISITA" type="xs:date" use="required">
				<xs:annotation>
					<xs:documentation>Data della visita</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attribute name="MODALITA_ACCERTAMENTO" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>Modalita' accertamento : 1=ambulatoriale, 2=domiciliare</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
						<xs:enumeration value="2"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="TIPO_ACCERTAMENTO_CODIFICATO" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>Tipo di accertameno : 1=primo accertamento, 2=accertamento per revisione, 3=accertamento per aggravamento, 4= accertamento per altra causa</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
						<xs:enumeration value="2"/>
						<xs:enumeration value="3"/>
						<xs:enumeration value="4"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DESCR_TIPO_ACCERT_CODICE4" use="optional">
				<xs:annotation>
					<xs:documentation>Descrizione nel caso tipo accertamento uguale a 4</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="30"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="ANAMNESI" use="required">
				<xs:annotation>
					<xs:documentation>Anamnesi</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="300"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="ESAME_OBIETTIVO" use="required">
				<xs:annotation>
					<xs:documentation>Esame obiettivo</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="450"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="ACCERTAMENTI_DISPOSTI" use="optional">
				<xs:annotation>
					<xs:documentation>Accertamenti disposti</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="150"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DOCUMENTI_ACQUISITI" use="optional">
				<xs:annotation>
					<xs:documentation>Documenti acquisiti</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="150"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DATA_DEFINIZIONE" type="xs:date" use="required">
				<xs:annotation>
					<xs:documentation>Data nella quale il verbale e' definito e chiuso prima dell'invio alla Commissione periferica del Ministero del Tesoro</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attribute name="ESITO_ACCERTAMENTO" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>Esito dell'accertamento : 1='REFERTATA', 2='SOSPESA', 3='ATTESA DEFINIZIONE', 4='ASSENZA', 5='ARCHIVIATA', 6='ASSENZA PER DECESSO' </xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="1"/>
						<xs:enumeration value="2"/>
						<xs:enumeration value="3"/>
						<xs:enumeration value="4"/>
						<xs:enumeration value="5"/>
						<xs:enumeration value="6"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DIAGNOSI1_DM" use="required">
				<xs:annotation>
					<xs:documentation>Diagnosi (utilizzare le codifiche di patologia previste dal DM 5/2/92)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="4"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DES_DIAGNOSI1" use="required">
				<xs:annotation>
					<xs:documentation>Descrizione diagnosi</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="150"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DIAGNOSI2_DM" use="optional">
				<xs:annotation>
					<xs:documentation>Diagnosi (utilizzare le codifiche di patologia previste dal DM 5/2/92)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="4"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DES_DIAGNOSI2" use="optional">
				<xs:annotation>
					<xs:documentation>Descrizione diagnosi</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="150"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DIAGNOSI3_DM" use="optional">
				<xs:annotation>
					<xs:documentation>Diagnosi (utilizzare le codifiche di patologia previste dal DM 5/2/92)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="4"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DES_DIAGNOSI3" use="optional">
				<xs:annotation>
					<xs:documentation>Descrizione diagnosi</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="150"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DIAGNOSI_NON_STRUTTURATA4" use="optional">
				<xs:annotation>
					<xs:documentation>Descrizione diagnosi (diagnosi non corrispondenti a codifiche previste dal DM 5/2/92 ma previste da disposizioni della Regione Toscana</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="250"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="DIAGNOSI_NON_STRUTTURATA5" use="optional">
				<xs:annotation>
					<xs:documentation>Descrizione diagnosi (diagnosi non corrispondenti a codifiche previste dal DM 5/2/92 ma previste da disposizioni della Regione Toscana</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="250"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	<!-- Parere -->
	<xs:element name="PARERE">
		<xs:annotation>
			<xs:documentation>Parere</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:attribute name="CERTIF_L381_70" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L382_70" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L118_74" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L18_80" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L508_88" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L509_88" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L289_90" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L295_90" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L124_98" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L138_01" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="CERTIF_L80_06" use="optional" default="0">
				<xs:annotation>
					<xs:documentation>0=nonbarrato 1=barrato</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="0"/>
						<xs:enumeration value="1"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="SOGGETTO_RICONOSCIUTO" use="optional" default="00">
				<xs:annotation>
					<xs:documentation>Tipologia di riconoscimento : 1=non invalido, 14=ultrasessantenne invalido per difficolta' persistenti (...) medio-grave (67/99%), 20=sordomuto (L.381/70 e L.508/88)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="00"/>
						<xs:enumeration value="01"/>
						<xs:enumeration value="02"/>
						<xs:enumeration value="03"/>
						<xs:enumeration value="04"/>
						<xs:enumeration value="05"/>
						<xs:enumeration value="06"/>
						<xs:enumeration value="07"/>
						<xs:enumeration value="08"/>
						<xs:enumeration value="09"/>
						<xs:enumeration value="10"/>
						<xs:enumeration value="11"/>
						<xs:enumeration value="12"/>
						<xs:enumeration value="13"/>
						<xs:enumeration value="14"/>
						<xs:enumeration value="15"/>
						<xs:enumeration value="16"/>
						<xs:enumeration value="17"/>
						<xs:enumeration value="18"/>
						<xs:enumeration value="19"/>
						<xs:enumeration value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="PCT_CODICE04" use="optional">
				<xs:annotation>
					<xs:documentation>Nel caso di tipologia di riconoscimento 04 allora deve essere inserito la percentuale di invalidita' attributa (&gt;1/3 e &lt;3/3)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="2"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="PCT_CODICE05" use="optional">
				<xs:annotation>
					<xs:documentation>Nel caso di tipologia di riconoscimento 05 allora deve essere inserito la percentuale di invalidita' attributa (&gt;2/3 e &lt;3/3)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="2"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="RIVEDIBILE_NR_MESI" use="optional">
				<xs:annotation>
					<xs:documentation>Nel caso di rivedibilita' inseirire il numero di mesi es. 8 mesi = 08, 12 mesi=12</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="2"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	<!-- Composizione commissione -->
	<xs:element name="COMPCOMMISSIONE">
		<xs:annotation>
			<xs:documentation>Composizione commissione</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:attribute name="COGNOME_PRESIDENTE" use="required">
				<xs:annotation>
					<xs:documentation>Cognome presidente</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="30"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="NOME_PRESIDENTE" use="required">
				<xs:annotation>
					<xs:documentation>Nome presidente</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="COGNOME_SEGRETARIO" use="required">
				<xs:annotation>
					<xs:documentation>Cognome segretario</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="30"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="NOME_SEGRETARIO" use="required">
				<xs:annotation>
					<xs:documentation>Nome segretario</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="COGNOME_MEDICO1" use="required">
				<xs:annotation>
					<xs:documentation>Cognome medico</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="30"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="NOME_MEDICO1" use="required">
				<xs:annotation>
					<xs:documentation>Nome medico</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="COGNOME_MEDICO2" use="optional">
				<xs:annotation>
					<xs:documentation>Cognome medico</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="30"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="NOME_MEDICO2" use="optional">
				<xs:annotation>
					<xs:documentation>Nome medico</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="COGNOME_MEDICO3" use="optional">
				<xs:annotation>
					<xs:documentation>Cognome medico</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="30"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="NOME_MEDICO3" use="optional">
				<xs:annotation>
					<xs:documentation>Nome medico</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="20"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	<!-- Verbale -->
	<xs:element name="INV_CIVILE">
		<xs:annotation>
			<xs:documentation>Verbale accertamento di prima istanza degli stati di invalidita' civile, delle condizioni visive e del sordomutismo</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="ANAGCOMM"/>
				<xs:element ref="DOMANDA"/>
				<xs:element ref="ANAGSOGGETTO"/>
				<xs:element ref="VISITA"/>
				<xs:element ref="PARERE"/>
				<xs:element ref="COMPCOMMISSIONE"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>

mentre quello di conferma (conferma.xsd) :

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:element name="CONFERMA">
		<xs:annotation>
			<xs:documentation>Conferma</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:attribute name="ESITO" type="xs:boolean" use="required">
				<xs:annotation>
					<xs:documentation>Esito : true=esito positivo, false=errore</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attribute name="ERRORE" use="optional">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="100"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
</xs:schema>

Un esempio di utilizzo e' il seguente :

<?xml version="1.0" encoding="UTF-8"?>
<INV_CIVILE xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="verbale.xsd">
	<ANAGCOMM CODCOMMISSIONE="12345" AZUSL="101" REGUSL="090" TIPOINVALIDITA="1" ZONUSL="1"/>
	<DOMANDA NR_PRATICA="123" DATA_PRESENTAZIONE="2007-01-10"/>
	<ANAGSOGGETTO COD_FISCALE="ABCDEF99A01G713F" INDIRIZZO_VIA="VIA STATALE" PROVINCIA_NASCITA="047" COMUNE_RESIDENZA="050" 
		D_NASCITA="1970-01-01" DATA_DECESSO="2007-01-18" COGNOMESOGGETTO="ROSSI" INDIRIZZO_CAP="51030" COMUNE_NASCITA="065" 
		NOMESOGGETTO="MARIO" DOCUMENTO_IDENTITA="158" PROVINCIA_RESIDENZA="047" CITTADINANZA="100" INDIRIZZO_NR="999"
		PROFESSIONE="GIARDINIERE" SESSO="1" USL_RESIDENZA="101" ZONA_RESIDENZA="1"/>
	<VISITA ESAME_OBIETTIVO="XXXXX" DES_DIAGNOSI1="XXXX" DATA_VISITA="2007-01-11" ANAMNESI="XXXXX" DIAGNOSI1_DM="7030" 
		DATA_DEFINIZIONE="2007-01-11"/>
	<PARERE CERTIF_L118_74="1" CERTIF_L18_80="1" RIVEDIBILE_NR_MESI="1" CERTIF_L508_88="1"/>
	<COMPCOMMISSIONE NOME_SEGRETARIO="GIUSEPPE" NOME_PRESIDENTE="LUIGI" COGNOME_MEDICO1="BIANCHI"
		COGNOME_SEGRETARIO="VERDI" COGNOME_PRESIDENTE="BIANCHI" NOME_MEDICO1="MARIA"/>
</INV_CIVILE>

e in risposta l'XML con la conferma dell'avvenuta operazione :

<?xml version="1.0" encoding="UTF-8"?>
<CONFERMA xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="conferma.xsd" ESITO="true"/>


4. Prodotti attesi
==================
* Per realizzare l'applicazione client utilizzata dalla ASL per l'invio (caso d'uso 1), viene 
  fornito il seguente WSDL (scaricabile anche dal rispettivo NAL sanitario) :

-------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://sanita.it/invalidicivili" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://sanita.it/invalidicivili" xmlns:intf="http://sanita.it/invalidicivili" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)-->

   <wsdl:message name="invioResponse">

      <wsdl:part name="invioReturn" type="soapenc:string"/>

   </wsdl:message>

   <wsdl:message name="invioRequest">

      <wsdl:part name="verbale" type="soapenc:string"/>

   </wsdl:message>

   <wsdl:portType name="VerbaleAdapter">

      <wsdl:operation name="invio" parameterOrder="verbale">

         <wsdl:input message="impl:invioRequest" name="invioRequest"/>

         <wsdl:output message="impl:invioResponse" name="invioResponse"/>

      </wsdl:operation>

   </wsdl:portType>

   <wsdl:binding name="VerbaleSoapBinding" type="impl:VerbaleAdapter">

      <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>

      <wsdl:operation name="invio">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="invioRequest">

            <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://adapter.asl.invalidicivili.sis.eng.it" use="encoded"/>

         </wsdl:input>

         <wsdl:output name="invioResponse">

            <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://sanita.it/invalidicivili" use="encoded"/>

         </wsdl:output>

      </wsdl:operation>

   </wsdl:binding>

   <wsdl:service name="VerbaleAdapterService">

      <wsdl:port binding="impl:VerbaleSoapBinding" name="Verbale">

         <wsdlsoap:address location="http://<IP NAL:PORT>/proxyInvalidiCiviliSanita/services/Verbale"/>

      </wsdl:port>

   </wsdl:service>

</wsdl:definitions>
-------------------------------------------------------------------------------

5. Bibliografia
===============
[1] Web Services Description Language (WSDL) 1.1 http://www.w3.org/TR/wsdl
[2] XML Schema http://www.w3.org/XML/Schema
[3] Latest SOAP versions http://www.w3.org/TR/soap/
[4] Apache Axis http://ws.apache.org/axis/

