e.Toscana Compliance 
Request for Comments: 5.1 
Del: 20/02/2007 
Categoria: Applicativa
Destinatari: Regione Toscana, Comuni, Amministrazioni locali

Rete dei SUAP
 
Indice
------
1. Contesto di riferimento ed obiettivi
2. Integrazione dei sistemi informativi	
3. Interazioni previste tra Enti Locali e Regione
4. Interfaccia di cooperazione verso gli enti locali
5. Prodotti attesi
6. Bibliografia

1. Contesto di riferimento ed obiettivi
---------------------------------------
Nell'attuazione di un sistema di e-government,  fondamentale lo sviluppo e la 
riorganizzazione di servizi di Pubblica Amministrazione (PA) secondo un 
approccio "one-stop" (unico punto di accessso) ed un orientamento ad "eventi 
della vita e dell'impresa". 

In questo contesto, lo sportello unico delle attivit produttive rappresenta 
la porta unica attraverso cui avviene il colloquio fra amministrazione e 
imprese per l'autorizzazione all'avvio di attivit produttive. 
Con il SUAP, le attivit del procedimento di autorizzazione sono gestite internamente alla 
amministrazione e assegnate agli enti secondo un protocollo che vede la 
cooperazione di Comuni (responsabili dei SUAP) a cui vengono effettuate le 
richieste di autorizzazione, ed Enti 'terzi' che sono chiamati ad esprimere 
pareri sulle procedure. 

La definizione e l'applicazione del protocollo di cooperazione 
offre una molteplicit di vantaggi: 
- per le aziende a cui viene fornito un punto di accesso unico con 
l'amministrazione; 
- per i Comuni che vedono semplificata l'interazione con 
gli Enti terzi e possono migliorare la qualit dei loro servizi; 


2. Integrazione dei sistemi informativi
---------------------------------------
L'autorizzazione all'avvio di un'attivit coinvolge enti diversi: il Comune
responsabile del SUAP che gestisce e coordina il procedimento; 
gli Enti terzi che intervengono con l'espressione di pareri.

In questo contesto,  fondamentale la capacit, per Sistemi Informativi  
degli Enti Locali (SIL), di cooperare con i sistemi SUAP comunali attraverso 
lo scambio di richieste di pareri e/o autorizzazioni (da Comune verso Enti 
terzi) e di risposte (da Enti terzi verso Comune).

L'infrastruttura CART (Cooperazione Applicativa della Regione Toscana) abilita 
la cooperazione tra i SIL attraverso la realizzazione di interfacce applicative 
(Proxy Applicativi). 
Ogni proxy applicativo presenta una doppia interfaccia: da un lato utilizza i 
servizi infrastrutturali del CART per inviare e ricevere informazione e 
per invocare servizi; dall'altro rende disponibili i servizi ai SIL 
attraverso una molteplicit di interfacce.

Al fine di supportare l'integrazione di sistemi SIL diversi, realizzati in tempi 
diversi e con tecnologie eterogenee, ogni proxy applicativo fornisce una 
descrizione standard di ogni interfaccia esposta ai SIL. Questo riguarda 
aspetti diversi:
- documentazione delle interfacce di servizio in modo standard (es. WSDL)
- rappresentazione dell'informazione scambiata in modo standard (XML come 
indicato nelle linee guida [AP1])
- documentazione del formato dell'informazione scambiata in modo standard 
(XMLSchema)


3. Interazioni previste tra Enti e Regione
---------------------------------------------
Le differenze tecniche dei sistemi cooperanti e le differenti caratteristiche
organizzative interne del singolo Ente richiedono l'adozione di un modello di 
cooperazione che permetta un accoppiamento lasco tra i sistemi partecipanti. 
Il modello di cooperazione per eventi del CART soddisfa questa esigenza. 
Esso individua due ruoli tra i SIL partecipanti:
- Pubblicatore: un SIL assume il ruolo di pubblicatore quando invia eventi 
nel sistema; 
- Sottoscrittore: ruolo ricoperto da SIL che comunicano all'infrastruttura 
interesse per un certo tipo di eventi e vengono da questa notificati al loro arrivo. 

Nel dominio del SUAP, si individuano le seguenti tipologie di evento:
-	SUAP-E1 Eventi di attivazione di un procedimento
- SUAP-E2 Eventi di richiesta parere
-	SUAP-E3 Eventi di espressione parere
- SUAP-E4 Eventi di conclusione di un procedimento

Un tipico scenario di cooperazione che comporta lo scambio di questi quattro 
tipi di evento  il seguente:

1. All'apertura di un procedimento di autorizzazione per l'avvio di una attivit produttiva, 
il sistema informativo del Comune responsabille del SUAP invia al CART un evento di 
'Attivazione Procedimento' (SUAP-E1) che contiene i dettagli della pratica. 
L'evento  inviato alla infrastruttura che lo propaga verso gli altri enti partecipanti;

2. Se  richiesto un parere di autorizzazione da parte di Enti terzi, 
il sistema informativo del SUAP genera eventi di 'Richiesta Parere' 
(SUAP-E2) e li inoltra ai SIL destinatari attraverso il CART;

3. Ogni Ente terzo riceve le richieste e comunica 
il parere al richiedente attraverso un evento di 'Espressione Parere' (SUAP-E3)

4. Il richiedente riceve le espressioni parere e pu chiudere il procedimento. 
Questo comporta la generazione e la comunicazione di un evento di 
'Conclusione Procedimento' (SUAP-E4) agli enti interessati.      


Di seguito si riporta la definizione del formato di ogni evento attraverso 
XMLSchema


SUAP-E0 EventoSUAP
==================
EventoSUAP  l'evento 'astratto' di base per il dominio SUAP.
L'evento non  mai direttamente usato nel dominio SUAP ma include le definizioni 
comuni a tutti gli eventi SUAP (SUAP-E1/E4). 
Ogni evento SUAP rappresenta un'estensione di questo tipo di evento.  

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it" elementFormDefault="qualified" 
attributeFormDefault="unqualified" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://suap.toscana.it">
	<xs:complexType name="EventoSuap" abstract="true">
		<xs:annotation>
			<xs:documentation>Definizione del tipo da usare per tutti gli eventi 
      scambiati attraverso la Cooperazione Applicativa nel progetto SUAP
      </xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="Procedimento">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="IdProcedimento">
							<xs:annotation>
								<xs:documentation>Identificativo Procedimento generato dal SIL del Comune</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="DataAttivazione" type="xs:date">
							<xs:annotation>
								<xs:documentation>Data di attivazione del procedimento</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="IdUniversale">
				<xs:annotation>
					<xs:documentation>Identificativo univoco del messaggio generato dal 
          mittente del messaggio stesso</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="IdUniversaleProcedimento">
				<xs:annotation>
					<xs:documentation>Identificativo univoco del procedimento generato 
          dal Proxy Applicativo durante la pubblicazione dellevento 
          Notifica Attivazione di Procedimento</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="SoggettoAttivatore">
				<xs:annotation>
					<xs:documentation>Codice del SIL che ha originato il messaggio</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="NAL">
				<xs:annotation>
					<xs:documentation>Codice del NAL attraverso il quale 
          il messaggio  stato trasmesso </xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DataPubblicazione">
				<xs:annotation>
					<xs:documentation>Data di pubblicazione del messaggio</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="servizio" type="xs:string" use="required"/>
		<xs:attribute name="codiceUtente" type="xs:string" use="required"/>
	</xs:complexType>
</xs:schema>


SUAP-E1 AttivazioneProcedimento
===============================
Questo evento viene pubblicato dal Comune quando avviene l'apertura di un 
procedimento SUAP.
Le informazioni che devono essere trasmesse in formato XML per pubblicare 
un evento di questo tipo sono:

-	tutte le informazioni presenti in EventoSuap 
- La Descrizione del Procedimento attivato oppure la Classificazione Ateco del Procedimento.
- Il Codice Fiscale/Partita IVA del richiedente il procedimento.
-	La Denominazione del richiedente il procedimento.
-	Numero di Protocollo del procedimento unico.
- L'anagrafica del Responsabile del procedimento unico attivato.
-	Durata in giorni del procedimento unico.
-	Elenco Modelli Pratica che compongono il procedimento unico.
-	Elenco Voci Dizionario Endoprocedimenti che compongono il procedimento unico.
- Il Codice dellunit territoriale su cui viene attivato il procedimento.

Il formato dell'evento  documentato dallo schema xml seguente:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it" xmlns="http://suap.toscana.it" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="EventoSuap.xsd"/>
	<xs:element name="AttivazioneProcedimento">
		<xs:annotation>
			<xs:documentation>Levento Notifica Attivazione di Procedimento viene pubblicato da un Comune una volta avviato un procedimento tramite la propria applicazione SUAP</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="EventoSuap">
					<xs:sequence>
						<xs:choice>
							<xs:element name="DescrizioneProcedimento" type="xs:string" minOccurs="0">
								<xs:annotation>
									<xs:documentation>La Descrizione del Procedimento inserita dai SIL dei Comuni </xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:element name="ClassificazioneAtecoProcedimento" type="xs:string" minOccurs="0">
								<xs:annotation>
									<xs:documentation>La Classificazione Ateco del Procedimento </xs:documentation>
								</xs:annotation>
							</xs:element>
						</xs:choice>
						<xs:element name="Richiedente">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="CodiceFiscale" minOccurs="0">
										<xs:annotation>
											<xs:documentation>Il Codice Fiscale del richiedente il procedimento.</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:minLength value="11"/>
												<xs:maxLength value="16"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:element>
									<xs:element name="PartitaIva" minOccurs="0">
										<xs:annotation>
											<xs:documentation>La Partita IVA del richiedente il procedimento</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:length value="11"/>
												<xs:pattern value="[0-9]*"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:element>
									<xs:element name="Denominazione">
										<xs:annotation>
											<xs:documentation>La Denominazione del richiedente il procedimento</xs:documentation>
										</xs:annotation>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="NumeroProtocollo" type="xs:string">
							<xs:annotation>
								<xs:documentation>Numero di Protocollo del procedimento unico </xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="Responsabile" type="xs:string">
							<xs:annotation>
								<xs:documentation>L'anagrafica del responsabile del procedimento unico </xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="Durata" type="xs:int">
							<xs:annotation>
								<xs:documentation>Durata in giorni del procedimento unico </xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="ModelloPratica" minOccurs="0" maxOccurs="unbounded">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="CodiceModelloPratica">
										<xs:annotation>
											<xs:documentation>Codice del modello di pratica</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string"/>
										</xs:simpleType>
									</xs:element>
									<xs:element name="FlagTipoPratica">
										<xs:annotation>
											<xs:documentation>Flag indicatore del tipo di Pratica (L= Locale, R=Regionale, T=Territoriale)</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:enumeration value="L"/>
												<xs:enumeration value="R"/>
												<xs:enumeration value="T"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="Endoprocedimento" maxOccurs="unbounded">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="CodiceEndoprocedimento">
										<xs:annotation>
											<xs:documentation>La Voce di Dizionario dell'Endoprocedimento</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string"/>
										</xs:simpleType>
									</xs:element>
									<xs:element name="FlagEndoprocedimento">
										<xs:annotation>
											<xs:documentation>Flag indicatore del tipo di Endoprocedimento di riferimento (0= Globale,1=Locale)</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:enumeration value="0"/>
												<xs:enumeration value="1"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:element>
									<xs:element name="Allegati" minOccurs="0">
										<xs:annotation>
											<xs:documentation>Gli eventuali allegati dell'Endoprocedimento</xs:documentation>
										</xs:annotation>
										<xs:complexType>
											<xs:sequence>
												<xs:element name="CodiceAllegato" type="xs:int" maxOccurs="unbounded"/>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="Territorio">
							<xs:annotation>
								<xs:documentation>Il codice dell'unit territoriale su cui viene attivato il procedimento unico</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="DescrizioneProcedimento" type="xs:string" minOccurs="0">
							<xs:annotation>
								<xs:documentation>La Descrizione del Procedimento inserita dai SIL dei Comuni </xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="ClassificazioneAtecoProcedimento" type="xs:string" minOccurs="0">
							<xs:annotation>
								<xs:documentation>La Classificazione Ateco del Procedimento </xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
</xs:schema>

Un esempio di evento di AttivazioneProcedimento valido  il seguente:

<?xml version="1.0" encoding="UTF-8"?> 
  <AttivazioneProcedimento codiceUtente="RT04500562PA" 
    servizio="AttivazioneProcedimento" 
    xsi:schemaLocation="http://suap.toscana.it AttivazioneProcedimento.xsd" 
    xmlns="http://suap.toscana.it" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 	
    <Procedimento> 		
      <IdProcedimento>0123456789</IdProcedimento> 		
      <DataAttivazione>2004-07-08</DataAttivazione> 	
    </Procedimento> 	
    <IdUniversale>001-0001-2004-000000001</IdUniversale> 	
    <IdUniversaleProcedimento>002-0001-2004-000000001</IdUniversaleProcedimento> 	
    <SoggettoAttivatore>SIL_01</SoggettoAttivatore> 	
    <NAL>1234</NAL> 	
    <DataPubblicazione>2004-07-08</DataPubblicazione> 	
    <DescrizioneProcedimento>Apertura albergo con piscina</DescrizioneProcedimento> 	
    <Richiedente> 		
      <PartitaIva>01234567890</PartitaIva> 		
      <Denominazione>Rossi srl</Denominazione> 	
    </Richiedente> 	
    <NumeroProtocollo>TYDNBKL-2344</NumeroProtocollo> 	
    <Responsabile>Mario Rossi</Responsabile> 	
    <Durata>20</Durata> 	
    <ModelloPratica> 		
      <CodiceModelloPratica>357689</CodiceModelloPratica> 		
      <FlagTipoPratica>L</FlagTipoPratica> 	
    </ModelloPratica> 	
    <ModelloPratica> 		
      <CodiceModelloPratica>76589</CodiceModelloPratica> 		
      <FlagTipoPratica>R</FlagTipoPratica> 	
    </ModelloPratica> 	
    <Endoprocedimento> 		
      <CodiceEndoprocedimento>23764901</CodiceEndoprocedimento> 		
      <FlagEndoprocedimento>0</FlagEndoprocedimento> 	
    </Endoprocedimento> 	
    <Endoprocedimento> 		 
      <CodiceEndoprocedimento>20000901</CodiceEndoprocedimento> 		
      <FlagEndoprocedimento>0</FlagEndoprocedimento> 	
    </Endoprocedimento> 	
    <Endoprocedimento> 		
      <CodiceEndoprocedimento>34689</CodiceEndoprocedimento> 		
      <FlagEndoprocedimento>0</FlagEndoprocedimento> 	
    </Endoprocedimento> 	
    <Territorio>2349</Territorio> 
  </AttivazioneProcedimento>


SUAP-E2 RichiestaParere
==================================
Questo evento viene pubblicato dal Comune relativamente ad un proprio 
procedimento quando si vuole richiedere un parere ad un Ente terzo.
Le informazioni che devono essere trasmesse in formato XML per pubblicare 
un evento di questo tipo sono:

- tutte le informazioni presenti in EventoSuap
- la data di generazione della Richiesta di Parere
- Il Codice dellEnte terzo al quale il parere viene sottoposto
- I dati di identificazione dellendoprocedimento per cui  stato generato 
  levento RichiestaParere.
- Numero di protocollo del parere richiesto.

Il formato dell'evento  documentato dallo schema xml seguente:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it" elementFormDefault="qualified" 
attributeFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns="http://suap.toscana.it">
	<xs:include schemaLocation="EventoSuap.xsd"/>
	<xs:element name="RichiestaParere">
		<xs:annotation>
			<xs:documentation>Levento Notifica Richiesta di Parere viene pubblicato da un Comune, relativamente ad un proprio Procedimento</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="EventoSuap">
					<xs:sequence>
						<xs:element name="DataGenerazioneRichiesta" type="xs:date">
							<xs:annotation>
								<xs:documentation>La Data di Generazione della Richiesta di Parere</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="EnteTerzo">
							<xs:annotation>
								<xs:documentation>Il Codice dellEnte Terzo al quale il parere viene sottoposto</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="Endoprocedimento">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="CodiceEndoprocedimento">
										<xs:annotation>
											<xs:documentation>La Voce di Dizionario dell'Endoprocedimento</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string"/>
										</xs:simpleType>
									</xs:element>
									<xs:element name="FlagEndoprocedimento">
										<xs:annotation>
											<xs:documentation>Flag indicatore del tipo di Endoprocedimento di riferimento (0= Globale,1=Locale)</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:enumeration value="0"/>
												<xs:enumeration value="1"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="NumeroProtocollo" type="xs:string" >
							<xs:annotation>
								<xs:documentation>Numero di Protocollo del parere richiesto </xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
</xs:schema>

Un esempio di evento di RichiestaParere valido  il seguente:

<?xml version="1.0" encoding="UTF-8"?>
<RichiestaParere codiceUtente="RT04500562PA" servizio="RichiestaParere"
	xmlns="http://suap.toscana.it"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://suap.toscana.it RichiestaParere.xsd">
	<Procedimento>
		<IdProcedimento>0123456789</IdProcedimento>
		<DataAttivazione>2004-07-28</DataAttivazione>
	</Procedimento>
	<IdUniversale>001-0001-2004-000000002</IdUniversale>
	<IdUniversaleProcedimento>
		002-0001-2004-000000001
	</IdUniversaleProcedimento>
	<SoggettoAttivatore>SIL_01</SoggettoAttivatore>
	<NAL>1234</NAL>
	<DataPubblicazione>2004-07-09</DataPubblicazione>
	<DataGenerazioneRichiesta>2004-07-09</DataGenerazioneRichiesta>
	<EnteTerzo>SIL_02</EnteTerzo>
	<Endoprocedimento>
		<CodiceEndoprocedimento>20000901</CodiceEndoprocedimento>
		<FlagEndoprocedimento>0</FlagEndoprocedimento>
	</Endoprocedimento>
	<NumeroProtocollo>TYDNBKL-2344</NumeroProtocollo>
</RichiestaParere>


SUAP-E3 EspressioneParere
============================
Questo evento viene pubblicato da un Ente terzo a seguito della ricezione 
di una richiesta di parere e viene ricevuto dal Comune richiedente.

Le informazioni che devono essere trasmesse in formato XML per pubblicare 
un evento di questo tipo sono:

-	tutte le informazioni presenti in EventoSuap 
- la data di Espressione del Parere
-	l'esito dell'Espressione di Parere. 
  (0 per esito negativo e 1 per esito positivo)
- SoggettoRichiedente. Il SIL del SUAP che ha richiesto il parere.
- I dati di identificazione dell'endoprocedimento per cui  stato generato levento EspressioneParere.
-	Numero di protocollo del parere espresso.

Il formato dell'evento  documentato dallo schema xml seguente:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it" xmlns="http://suap.toscana.it" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="EventoSuap.xsd"/>
	<xs:element name="EspressioneParere">
		<xs:annotation>
			<xs:documentation>Levento Notifica Espressione di Parere viene sottoscritto da un Comune, e viene ricevuto quando lEnte Terzo preposto ha provveduto ad esprimere il parere richiesto</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="EventoSuap">
					<xs:sequence>
						<xs:element name="DataEspressioneParere" type="xs:date">
							<xs:annotation>
								<xs:documentation>La data  dellEspressione di Parere</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="CodiceParere">
							<xs:annotation>
								<xs:documentation>LEsito dellEspressione di Parere</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="SoggettoRichiedente">
							<xs:annotation>
								<xs:documentation>Codice del SIL del SUAP che ha richiesto il parere richiesto</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="Endoprocedimento">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="CodiceEndoprocedimento">
										<xs:annotation>
											<xs:documentation>La Voce di Dizionario dell'Endoprocedimento</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string"/>
										</xs:simpleType>
									</xs:element>
									<xs:element name="FlagEndoprocedimento">
										<xs:annotation>
											<xs:documentation>Flag indicatore del tipo di Endoprocedimento di riferimento (0= Globale,1=Locale)</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:enumeration value="0"/>
												<xs:enumeration value="1"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="NumeroProtocollo" type="xs:string">
							<xs:annotation>
								<xs:documentation>Numero di Protocollo del parere espresso </xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
</xs:schema>

Un esempio di evento di EspressioneParere valido  il seguente:

<?xml version="1.0" encoding="UTF-8"?>
<EspressioneParere codiceUtente="RT04500562PA"
	servizio="EspressioneParere"
	xsi:schemaLocation="http://suap.toscana.it EspressioneParere.xsd"
	xmlns="http://suap.toscana.it"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<Procedimento>
		<IdProcedimento>0123456789</IdProcedimento>
		<DataAttivazione>2004-11-25</DataAttivazione>
	</Procedimento>
	<IdUniversale>001-0001-2004-000000003</IdUniversale>
	<IdUniversaleProcedimento>
		002-0001-2004-000000001
	</IdUniversaleProcedimento>
	<SoggettoAttivatore>SIL_01</SoggettoAttivatore>
	<NAL>NAL_01</NAL>
	<DataPubblicazione>2004-07-09</DataPubblicazione>
	<DataEspressioneParere>2004-07-15</DataEspressioneParere>
	<CodiceParere>0001</CodiceParere>
	<SoggettoRichiedente>SIL_02</SoggettoRichiedente>
	<Endoprocedimento>
		<CodiceEndoprocedimento>20000901</CodiceEndoprocedimento>
		<FlagEndoprocedimento>0</FlagEndoprocedimento>
	</Endoprocedimento>
	<NumeroProtocollo>TYDNBKL-2344</NumeroProtocollo>
</EspressioneParere>

SUAP-E4 ConclusioneProcedimento
===============================
Questo evento viene pubblicato dal Comune che ha attivato il procedimento 
una volta terminato l'iter di approvazione. 
Le informazioni trasmesse in formato XML per pubblicare l'evento sono:

-	tutte le informazioni presenti nell'evento EventoSuap
- la data di conclusione del procedimento. 
-	l'esito della conclusione del procedimento. 
  La codifica  0 per esito negativo e 1 per esito positivo

Il formato dell'evento  documentato dallo schema xml seguente:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it"
	elementFormDefault="qualified" attributeFormDefault="unqualified"
	xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns="http://suap.toscana.it">
	<xs:include schemaLocation="EventoSuap.xsd" />
	<xs:element name="ConclusioneProcedimento">
		<xs:annotation>
			<xs:documentation>
				Levento Notifica Conclusione di Procedimento viene
				pubblicato da un Comune una volta terminato liter di
				approvazione di un procedimento, tramite la propria
				applicazione SUAP
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="EventoSuap">
					<xs:sequence>
						<xs:element name="DataConclusione"
							type="xs:date">
							<xs:annotation>
								<xs:documentation>
									La Data di Conclusione del Procedimento
								</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="CodiceEsito">
							<xs:annotation>
								<xs:documentation>
									LEsito della Conclusione del
									Procedimento
								</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
</xs:schema>

Un esempio di evento di ConclusioneProcedimento valido rispetto allo schema XML 
sopra riportato  il seguente:

<?xml version="1.0" encoding="UTF-8"?>
<ConclusioneProcedimento codiceUtente="RT04500562PA"
	servizio="ConclusioneProcedimento" xmlns="http://suap.toscana.it"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://suap.toscana.it ConclusioneProcedimento.xsd">
	<Procedimento>
		<IdProcedimento>0123456789</IdProcedimento>
		<DataAttivazione>2004-07-08</DataAttivazione>
	</Procedimento>
	<IdUniversale>001-0001-2004-000000004</IdUniversale>
	<IdUniversaleProcedimento>
		002-0001-2004-000000001
	</IdUniversaleProcedimento>
	<SoggettoAttivatore>SIL_02</SoggettoAttivatore>
	<NAL>1234</NAL>
	<DataPubblicazione>2004-07-20</DataPubblicazione>
	<DataConclusione>2004-07-19</DataConclusione>
	<CodiceEsito>1</CodiceEsito>
</ConclusioneProcedimento>



4. Interfaccia di cooperazione verso gli enti locali
----------------------------------------------------
In questa sezione si descrive l'interfaccia applicativa che al momento attuale 
abilita la comunicazione di eventi SUAP-E1/E4 tra sistemi informativi degli enti 
locali e infrastruttura di cooperazione CART. Questa interfaccia  
realizzata dal Proxy Applicativo SUAP C4 di Regione Toscana con tecnologie 
basate su web service. 

L'interfaccia espone verso i SIL tre servizi:
 - SIL-Proxy-S1 : servizio di pubblicazione di eventi SUAP-E1/E4 verso il CART
 - SIL-Proxy-S2 : di ricezione (sottoscrizione) di eventi SUAP-E1/E4 dal CART
 - SIL-Proxy-S3 : di conferma di ricezione (smarcatura) di eventi SUAP-E1/E4 
  
Attraverso il servizio di conferma di ricezione (smarcatura) in particolare, 
un SIL notifica al Proxy Applicativo la corretta ricezione di un evento. 
Il Proxy Applicativo che riceve una conferma di ricezione non ripropone 
nuovamente l'evento alle richieste successive provenienti dallo stesso SIL.     

I servizi sopra elencati sono realizzati dal proxy applicativo SUAP C4 attraverso 
tre webservice di cui, nel seguito della sezione, si descrive l'interfaccia 
utilizzando il formato standard WSDL.


4.1. Servizio SIL-Proxy-S1 pubblicazione eventi
===============================================
Di seguito  riportata l'interfaccia WSDL del servizio di pubblicazione eventi.
Si osserva come il servizio presenti una operazione "loadMessage" che accetta
in ingresso un messaggio SUAP-E1/E4 (evento del quale si richiede la 
pubblicazione)

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
	targetNamespace="http://carttestnal.rete.toscana.it/SUAP/services/loadMessageService"
	xmlns="http://schemas.xmlsoap.org/wsdl/"
	xmlns:apachesoap="http://xml.apache.org/xml-soap"
	xmlns:impl="http://carttestnal.rete.toscana.it/SUAP/services/loadMessageService"
	xmlns:intf="http://carttestnal.rete.toscana.it/SUAP/services/loadMessageService"
	xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
	xmlns:tns1="http://adapter.proxy.suap.eng.it"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
	xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<wsdl:types>
		<schema
			targetNamespace="http://adapter.proxy.suap.eng.it"
			xmlns="http://www.w3.org/2001/XMLSchema">
			<element
				name="loadMessage"
				type="xsd:anyType" />
		</schema>
		<schema
			targetNamespace="http://carttestnal.rete.toscana.it/SUAP/services/loadMessageService"
			xmlns="http://www.w3.org/2001/XMLSchema">
			<element
				name="loadMessageReturn"
				type="xsd:anyType" />
		</schema>
	</wsdl:types>
	<wsdl:message name="loadMessageResponse">
		<wsdl:part
			element="impl:loadMessageReturn"
			name="loadMessageReturn" />
	</wsdl:message>
	<wsdl:message name="loadMessageRequest">
		<wsdl:part
			element="tns1:loadMessage"
			name="part" />
	</wsdl:message>
	<wsdl:portType name="ViaSoapAdapterService">
		<wsdl:operation name="loadMessage">
			<wsdl:input
				message="impl:loadMessageRequest"
				name="loadMessageRequest" />
			<wsdl:output
				message="impl:loadMessageResponse"
				name="loadMessageResponse" />
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding
		name="loadMessageServiceSoapBinding"
		type="impl:ViaSoapAdapterService">
		<wsdlsoap:binding
			style="document"
			transport="http://schemas.xmlsoap.org/soap/http" />
		<wsdl:operation name="loadMessage">
			<wsdlsoap:operation soapAction="" />
			<wsdl:input name="loadMessageRequest">
				<wsdlsoap:body
					namespace="http://adapter.proxy.suap.eng.it"
					use="literal" />
			</wsdl:input>
			<wsdl:output name="loadMessageResponse">
				<wsdlsoap:body
					namespace="http://carttestnal.rete.toscana.it/SUAP/services/loadMessageService"
					use="literal" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="ViaSoapAdapterServiceService">
		<wsdl:port
			binding="impl:loadMessageServiceSoapBinding"
			name="loadMessageService">
			<wsdlsoap:address
				location="http://carttestnal.rete.toscana.it/SUAP/services/loadMessageService" />
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>

Un esempio di richiesta di servizio SOAP conforme al formato documentato dal 
WSDL  la seguente (l'esempio si riferisce ad una richiesta di pubblicazione di
un evento di tipo "AttivazioneProcedimento"): 

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
	xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<soapenv:Body>
		<ns1:AttivazioneProcedimento
			codiceUtente="RT04500562PA"
			servizio="AttivazioneProcedimento"
			xmlns="http://suap.toscana.it"
			xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
			xsi:schemaLocation="http://suap.toscana.it http://159.213.32.211/SUAP/xml_schema/AttivazioneProcedimento.xsd"
			xmlns:ns1="http://suap.toscana.it">
			<ns1:Procedimento>
				<ns1:IdProcedimento>
					000116022007_1450
				</ns1:IdProcedimento>
				<ns1:DataAttivazione>2007-02-16</ns1:DataAttivazione>
			</ns1:Procedimento>
			<ns1:IdUniversale>001-20070220-152057-A</ns1:IdUniversale>
			<ns1:IdUniversaleProcedimento>
				001-20070220-152057-A
			</ns1:IdUniversaleProcedimento>
			<ns1:SoggettoAttivatore>SIL_01</ns1:SoggettoAttivatore>
			<ns1:NAL>carttestnal</ns1:NAL>
			<ns1:DataPubblicazione>2007-02-16</ns1:DataPubblicazione>
			<ns1:DescrizioneProcedimento>
				Questa e' una Attivazione Procedimento di Prova
			</ns1:DescrizioneProcedimento>
			<ns1:Richiedente>
				<ns1:CodiceFiscale>DFVSDR11D04D612W</ns1:CodiceFiscale>
				<ns1:Denominazione>
					UnRichiedentediTest
				</ns1:Denominazione>
			</ns1:Richiedente>
			<ns1:NumeroProtocollo>2241ADQ232</ns1:NumeroProtocollo>
			<ns1:Responsabile>Un Responsabile di Test</ns1:Responsabile>
			<ns1:Durata>90</ns1:Durata>
			<ns1:Endoprocedimento>
				<ns1:CodiceEndoprocedimento>
					Codice 1
				</ns1:CodiceEndoprocedimento>
				<ns1:FlagEndoprocedimento>0</ns1:FlagEndoprocedimento>
			</ns1:Endoprocedimento>
			<ns1:Endoprocedimento>
				<ns1:CodiceEndoprocedimento>
					Codice 2
				</ns1:CodiceEndoprocedimento>
				<ns1:FlagEndoprocedimento>0</ns1:FlagEndoprocedimento>
			</ns1:Endoprocedimento>
			<ns1:Territorio>048</ns1:Territorio>
		</ns1:AttivazioneProcedimento>
	</soapenv:Body>
</soapenv:Envelope>

Il proxy applicativo risponde al SIL con un messaggio che indica l'esito della 
richiesta di pubblicazione:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
	xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<soapenv:Body>
		<response>
			<SoggettoAttivatore>SIL_01</SoggettoAttivatore>
			<Event>AttivazioneProcedimento</Event>
			<IdUniversale>001-20070220-152057-A</IdUniversale>
			<error>false</error>
			<errorMessage>No error</errorMessage>
		</response>
	</soapenv:Body>
</soapenv:Envelope>

Il formato del messaggio di risposta  descritto dallo XMLSchema seguente:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it" xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns="http://suap.toscana.it" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="Response">
		<xs:annotation>
			<xs:documentation>Messaggio di riposta che il SIL deve comunicare al Proxy</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="SoggettoAttivatore">
					<xs:annotation>
						<xs:documentation>Codice del SIL che ha generato l'evento</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="Event">
					<xs:annotation>
						<xs:documentation>Tipo di evento</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="IdUniversale">
					<xs:annotation>
						<xs:documentation>Identificativo univoco del messaggio generato dal mittente del messaggio</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="error">
					<xs:annotation>
						<xs:documentation>Indica se l'operazione si  conclusa con errore</xs:documentation>
					</xs:annotation>
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:enumeration value="true"/>
							<xs:enumeration value="false"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="errorMessage">
					<xs:annotation>
						<xs:documentation>Messaggio di errore</xs:documentation>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>


4.2. Servizio SIL-Proxy-S2 ricezione (sottoscrizione) eventi
============================================================
Di seguito  riportata l'interfaccia WSDL del servizio di ricezione eventi.
Si osserva come il servizio presenti un'operazione "readMessages" 
che accetta in ingresso un messaggio XML contenente i parametri di ricerca 
(intervallo temporale per il quale  richiesta la ricezione degli eventi, 
tipo di eventi che si desidera ricevere, identificativo del SIL richiedente) e 
restituisce un messaggio che contiene la lista degli eventi destinati al SIL. 


<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
	targetNamespace="http://carttestnal.rete.toscana.it/SUAP/services/readMessagesService"
	xmlns="http://schemas.xmlsoap.org/wsdl/"
	xmlns:apachesoap="http://xml.apache.org/xml-soap"
	xmlns:impl="http://carttestnal.rete.toscana.it/SUAP/services/readMessagesService"
	xmlns:intf="http://carttestnal.rete.toscana.it/SUAP/services/readMessagesService"
	xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
	xmlns:tns1="http://webservice.proxy.suap.eng.it"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
	xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<wsdl:types>
		<schema
			targetNamespace="http://webservice.proxy.suap.eng.it"
			xmlns="http://www.w3.org/2001/XMLSchema">
			<element
				name="readMessages"
				type="xsd:anyType" />
		</schema>
		<schema
			targetNamespace="http://carttestnal.rete.toscana.it/SUAP/services/readMessagesService"
			xmlns="http://www.w3.org/2001/XMLSchema">
			<element
				name="readMessagesReturn"
				type="xsd:anyType" />
		</schema>
	</wsdl:types>
	<wsdl:message name="readMessagesResponse">
		<wsdl:part
			element="impl:readMessagesReturn"
			name="readMessagesReturn" />
	</wsdl:message>
	<wsdl:message name="readMessagesRequest">
		<wsdl:part
			element="tns1:readMessages"
			name="part" />
	</wsdl:message>
	<wsdl:portType name="ViaSoapSubscriber">
		<wsdl:operation name="readMessages">
			<wsdl:input
				message="impl:readMessagesRequest"
				name="readMessagesRequest" />
			<wsdl:output
				message="impl:readMessagesResponse"
				name="readMessagesResponse" />
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding
		name="readMessagesServiceSoapBinding"
		type="impl:ViaSoapSubscriber">
		<wsdlsoap:binding
			style="document"
			transport="http://schemas.xmlsoap.org/soap/http" />
		<wsdl:operation name="readMessages">
			<wsdlsoap:operation soapAction="" />
			<wsdl:input name="readMessagesRequest">
				<wsdlsoap:body
					namespace="http://webservice.proxy.suap.eng.it"
					use="literal" />
			</wsdl:input>
			<wsdl:output name="readMessagesResponse">
				<wsdlsoap:body
					namespace="http://carttestnal.rete.toscana.it/SUAP/services/readMessagesService"
					use="literal" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="ViaSoapSubscriberService">
		<wsdl:port
			binding="impl:readMessagesServiceSoapBinding"
			name="readMessagesService">
			<wsdlsoap:address
				location="http://carttestnal.rete.toscana.it/SUAP/services/readMessagesService" />
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>

Un esempio di richiesta di servizio SOAP conforme al formato documentato dal 
WSDL  la seguente (l'esempio si riferisce ad una richiesta di ricezione di
eventi di tipo "AttivazioneProcedimento" pubblicati in data 20/02/2007): 

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
	xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<soapenv:Body>
		<ns1:RichiestaMessaggi
			codiceUtente="RT04500562PA"
			servizio="AttivazioneProcedimento"
			xmlns="http://suap.toscana.it"
			xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
			xsi:schemaLocation="http://suap.toscana.it http://159.213.32.211/SUAP/xml_schema/RichiestaMessaggi.xsd"
			xmlns:ns1="http://suap.toscana.it">
			<ns1:SIL>SIL_02</ns1:SIL>
			<ns1:DataIni>20/02/2007</ns1:DataIni>
			<ns1:DataFine>20/02/2007</ns1:DataFine>
		</ns1:RichiestaMessaggi>
	</soapenv:Body>
</soapenv:Envelope>

Il formato del documento "RichiestaMessaggi" che rappresenta il corpo della 
richiesta di servizio SOAP  documentato dallo schema seguente:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it" 
elementFormDefault="qualified" attributeFormDefault="unqualified" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://suap.toscana.it">
	<xs:element name="RichiestaMessaggi">
		<xs:annotation>
			<xs:documentation>Definizione del tipo da usare per richiedere il 
      download dei messaggi di un determinato SIL</xs:documentation>
		</xs:annotation>
	<xs:complexType>
		<xs:sequence>
			<xs:element name="SIL">
				<xs:annotation>
					<xs:documentation>Codice del SIL sottoscrittore</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DataIni">
				<xs:annotation>
					<xs:documentation>Data di sottoscrizione del messaggio</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DataFine">
				<xs:annotation>
					<xs:documentation>Data di sottoscrizione del messaggio</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="servizio" type="xs:string" use="required"/>
		<xs:attribute name="codiceUtente" type="xs:string" use="required"/>
	</xs:complexType>
	</xs:element>
</xs:schema> 

A seguito della invocazione del servizio SIL-Proxy-S2, 
il proxy restituisce un messaggio SOAP contenente la lista degli eventi 
destinati al SIL. Un esempio di messaggio di risposta  il seguente:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
	xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<soapenv:Body>
		<RichiestaMessaggiResponse>
			<error>false</error>
			<errorMessage>---</errorMessage>
			<AttivazioneProcedimento
				...
			</AttivazioneProcedimento>
			<AttivazioneProcedimento
				...
			</AttivazioneProcedimento>
			<AttivazioneProcedimento
				...
			</AttivazioneProcedimento>
		</RichiestaMessaggiResponse>
	</soapenv:Body>
</soapenv:Envelope>    

Si osserva come il corpo della busta SOAP contenga un elemento "error" che 
descrive l'esito dell'operazione e la sequenza dei messaggi richiesti 
(nell'esempio una lista di eventi "AttivazioneProcedimento" SUAP-E1).

Lo schema XML seguente riporta la descrizione formale del corpo del messaggio 
SOAP di risposta.

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it" xmlns="http://suap.toscana.it" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" 
attributeFormDefault="unqualified">
	<xs:include schemaLocation="AttivazioneProcedimento.xsd"/>
	<xs:include schemaLocation="ConclusioneProcedimento.xsd"/>
	<xs:include schemaLocation="RichiestaParere.xsd"/>
	<xs:include schemaLocation="EspressioneParere.xsd"/>
	<xs:element name="RichiestaMessaggiResponse">
		<xs:annotation>
			<xs:documentation>Messaggio di riposta alla richiesta di sottoscrizione</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="error">
					<xs:annotation>
						<xs:documentation>Indica se l'operazione di sottoscrizione si  conclusa con errore</xs:documentation>
					</xs:annotation>
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:enumeration value="true"/>
							<xs:enumeration value="false"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="errorMessage">
					<xs:annotation>
						<xs:documentation>Messaggio di errore</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:choice>
					<xs:element name="AttivazioneProcedimento" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="ConclusioneProcedimento" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="RichiestaParere" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="EspressioneParere" minOccurs="0" maxOccurs="unbounded"/>
				</xs:choice>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>  


4.3. Servizio SIL-Proxy-S3 conferma di ricezione (smarcatura) di eventi 
=======================================================================
Di seguito  riportata l'interfaccia WSDL del servizio di smarcatura eventi.
Si osserva come il servizio presenti un'operazione "downloadedMessages" che 
accetta in ingresso un messaggio XML contenente i parametri identificativi del 
messaggio per il quale  richiesta la smarcatura (Identificativo del messaggio,
codice del SIL che richiede la smarcatura, tipo di evento SUAP). 


<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
	targetNamespace="http://carttestnal.rete.toscana.it/SUAP/services/downloadedMessagesService"
	xmlns="http://schemas.xmlsoap.org/wsdl/"
	xmlns:apachesoap="http://xml.apache.org/xml-soap"
	xmlns:impl="http://carttestnal.rete.toscana.it/SUAP/services/downloadedMessagesService"
	xmlns:intf="http://carttestnal.rete.toscana.it/SUAP/services/downloadedMessagesService"
	xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
	xmlns:tns1="http://webservice.proxy.suap.eng.it"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
	xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<wsdl:types>
		<schema
			targetNamespace="http://webservice.proxy.suap.eng.it"
			xmlns="http://www.w3.org/2001/XMLSchema">
			<element
				name="downloadedMessages"
				type="xsd:anyType" />
		</schema>
		<schema
			targetNamespace="http://carttestnal.rete.toscana.it/SUAP/services/downloadedMessagesService"
			xmlns="http://www.w3.org/2001/XMLSchema">
			<element
				name="downloadedMessagesReturn"
				type="xsd:anyType" />
		</schema>
	</wsdl:types>
	<wsdl:message name="downloadedMessagesResponse">
		<wsdl:part
			element="impl:downloadedMessagesReturn"
			name="downloadedMessagesReturn" />
	</wsdl:message>
	<wsdl:message name="downloadedMessagesRequest">
		<wsdl:part
			element="tns1:downloadedMessages"
			name="part" />
	</wsdl:message>
	<wsdl:portType name="ViaSoapAlreadyDownloaded">
		<wsdl:operation name="downloadedMessages">
			<wsdl:input
				message="impl:downloadedMessagesRequest"
				name="downloadedMessagesRequest" />
			<wsdl:output
				message="impl:downloadedMessagesResponse"
				name="downloadedMessagesResponse" />
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding
		name="downloadedMessagesServiceSoapBinding"
		type="impl:ViaSoapAlreadyDownloaded">
		<wsdlsoap:binding
			style="document"
			transport="http://schemas.xmlsoap.org/soap/http" />
		<wsdl:operation name="downloadedMessages">
			<wsdlsoap:operation soapAction="" />
			<wsdl:input name="downloadedMessagesRequest">
				<wsdlsoap:body
					namespace="http://webservice.proxy.suap.eng.it"
					use="literal" />
			</wsdl:input>
			<wsdl:output name="downloadedMessagesResponse">
				<wsdlsoap:body
					namespace="http://carttestnal.rete.toscana.it/SUAP/services/downloadedMessagesService"
					use="literal" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="ViaSoapAlreadyDownloadedService">
		<wsdl:port
			binding="impl:downloadedMessagesServiceSoapBinding"
			name="downloadedMessagesService">
			<wsdlsoap:address
				location="http://carttestnal.rete.toscana.it/SUAP/services/downloadedMessagesService" />
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>

Un esempio di richiesta di servizio SOAP conforme al formato documentato dal 
WSDL  la seguente (l'esempio si riferisce ad una richiesta di smarcatura di
un evento di tipo "AttivazioneProcedimento" per il SIL "SIL_02"):

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
	xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<soapenv:Body>
		<ns1:SmarcaMessaggi
			SIL="SIL_02"
			codiceUtente="RT04500562PA"
			xmlns="http://suap.toscana.it"
			xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
			xsi:schemaLocation="http://suap.toscana.it http://159.213.32.211/SUAP/xml_schema/SmarcaMessaggi.xsd"
			xmlns:ns1="http://suap.toscana.it">
			<ns1:ListaEventi tipoEvento="AttivazioneProcedimento">
				<ns1:IdUniversale>
					001-20070220-152057-A
				</ns1:IdUniversale>
			</ns1:ListaEventi>
		</ns1:SmarcaMessaggi>
	</soapenv:Body>
</soapenv:Envelope>

Il formato del messaggio di richiesta  formalmente descritto dallo schema XML
seguente:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it" xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns="http://suap.toscana.it" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="SmarcaMessaggi">
		<xs:annotation>
			<xs:documentation>Elenco del tipo eventi per cui ci sono messaggi da smarcare come sottoscritti</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:annotation>
				<xs:documentation>Definizione del tipo da usare per smarcare i messaggi letti</xs:documentation>
			</xs:annotation>
			<xs:sequence>
				<xs:element name="ListaEventi" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>Elenco dei messaggi di un tipo evento da smarcare come sottoscritti</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:annotation>
								<xs:documentation>Identificativo del messaggio</xs:documentation>
							</xs:annotation>
							<xs:element name="IdUniversale" maxOccurs="unbounded"/>
						</xs:sequence>
						<xs:attribute name="tipoEvento" type="xs:string" />
					</xs:complexType>
				</xs:element>
			</xs:sequence>
			<xs:attribute name="SIL" type="xs:string"/>
			<xs:attribute name="codiceUtente" type="xs:string"/>
		</xs:complexType>
	</xs:element>
</xs:schema>
 
 
A seguito della invocazione del servizio di smarcatura SIL-Proxy-S3, 
il proxy restituisce un messaggio SOAP contenente l'esito dell'operazione. 
Un esempio di messaggio di risposta  il seguente:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
	xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<soapenv:Body>
		<SmarcaMessaggiResponse SIL="SIL_02">
			<error>false</error>
			<errorMessage>No error</errorMessage>
			<ListaEventi tipoEvento="AttivazioneProcedimento">
				<Evento>
					<IdUniversale>001-20070220-152057-A</IdUniversale>
					<Esito>1</Esito>
				</Evento>
			</ListaEventi>
		</SmarcaMessaggiResponse>
	</soapenv:Body>
</soapenv:Envelope>

Si osserva come il corpo della busta SOAP contenga un elemento "error" che 
descrive l'esito globale dell'operazione e una sequenza di elementi "Evento"
che indicano, per ogni messaggio di cui  stata richiesta la smarcatura, se 
questa  avvenuta con successo o meno.

Lo schema XML seguente riporta la descrizione formale del corpo del messaggio 
SOAP di risposta.

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://suap.toscana.it" xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns="http://suap.toscana.it" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="SmarcaMessaggiResponse">
		<xs:annotation>
			<xs:documentation>Messaggio di riposta contenente l'esito della smarcatura
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="error">
					<xs:annotation>
						<xs:documentation>Indica se l'operazione di smarcatura si  conclusa con errore</xs:documentation>
					</xs:annotation>
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:enumeration value="true"/>
							<xs:enumeration value="false"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="errorMessage">
					<xs:annotation>
						<xs:documentation>Messaggio di errore</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="ListaEventi" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>Elenco del'esito dell'operazione di smarcatura sui singoli messaggi di un tipo evento da smarcare come sottoscritti</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:annotation>
								<xs:documentation>Identificativo del messaggio</xs:documentation>
							</xs:annotation>
							<xs:element name="Evento" maxOccurs="unbounded">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="IdUniversale" type="xs:string"/>
										<xs:element name="Esito">
											<xs:annotation>
												<xs:documentation>
                        1: Messaggio cancellato, 2: Messaggio gi cancellato, 
                        3: Messaggio non trovato, 4:Errore</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:int">
													<xs:enumeration value="1"/>
													<xs:enumeration value="2"/>
													<xs:enumeration value="3"/>
													<xs:enumeration value="4"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
						<xs:attribute name="tipoEvento" type="xs:string"/>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
			<xs:attribute name="SIL" type="xs:string"/>
		</xs:complexType>
	</xs:element>
</xs:schema>


5. Prodotti attesi
------------------



6. Bibliografia
------------
Documenti rilasciati dal Centro Nazionale per lInformatica nella Pubblica
Amministrazione (AIPA-CNIPA):
[AP1] AIPA, "Servizio di cooperazione applicativa basata su eventi", Quaderni 
AIPA Dicembre 1999 
[CN1] SPC, Sistema pubblico di cooperazione: Architettura, Versione 1.0, 
CNIPA, 25 Novembre 2004. 
[CN2] SPC, Sistema pubblico di cooperazione: Porta di Dominio, Versione 1.0, 
CNIPA, 14 Ottobre 2005

Documenti rilasciati dal W3C:
[W1] D. Box, D. Ehnebuske, G. Kakivaya, A. Layman, N. Mendelsohn, H. F. Nielsen,
S. Thatte, D. Winer, Simple Object Access Protocolo (SOAP) 1.1, W3C, 8 Maggio
2000 
[W2] E. Christensen, F. Curbera, G. Meredith, S. Weerawarena, Web Services
Description Language (WSDL) 1.1, W3C, 15 Marzo 200
