Il file di interscambio

Il file di interscambio è uno strumento per caricare automaticamente i dati dal sistema della scuola al sistema centrale della banca dati della formazione.

In questa fase sarà possibile trasferire i dati relativi a:

  • corsi
  • studenti appartenenti ai corsi

Qui di seguito potete trovare la spiegazione di ogni singolo nodo del file di interscambio.

Un esempio di file di interscambio commentato e vuoto può essere scaricato dal link qui di seguito:
File di interscambio – modello.

Nel dettaglio:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?xml version="1.0" encoding="UTF-8"?>
<interscambio>
    <corso>
        <sys_scuola_id>...</sys_scuola_id>
        <scuola_id>...</scuola_id>
        <nome_corso>...</nome_corso>
        <durata>...</durata>
        <data_inizio>...</data_inizio>
        <data_fine>...</data_fine>
        <m_formative>...</m_formative>
        <sede>...</sede>
        <attestazione>...</attestazione>
        <finanziamento presente="valore">
            <canale>...</canale>
            <codice>...</codice>
        </finanziamento>
        <studenti>
            <studente>
               <cf>...</cf>
               <cognome>...</cognome>
               <nome>...</nome>
               <residenza domicilio="valore">
                  <indirizzo>...</indirizzo>
                  <comune>...</comune>
                  <stato>...</stato>
                  <cap>...</cap>
               </residenza>
               <domicilio>
                   <indirizzo>...</indirizzo>
                   <comune>...</comune>
                   <stato>...</stato>
                   <cap>...</cap>
               </domicilio>
               <contatti>
                   <telefono>...</telefono>
                   <cellulare>...</cellulare>
                   <fax>...</fax>
                   <email>...</email>
               </contatti>
            </studente>
        </studenti>
    </corso>
</interscambio>



Descrizione nodi

2
<interscambio>

E’ il nodo radice. Può contenere n corsi con n>0.

3
<corso>

Nodo corso contenente i dati relativi al corso.

4
<sys_scuola_id> [stringa max. 255 caratteri]

Questo nodo contiene l’identificativo del corso della banca dati della scuola. Può essere una qualsiasi stringa alfanumerica purchè univoca.

Questo dato è indispensabile, poichè nel sistema online sarà l’accoppiata identificativo della scuola – identificativo del corso nel db della scuola ad individuare univocamente il corso consentendo così l’aggiornamento dei dati.

Dal sistema della scuola occorre perciò estrarre tale dato e, se non presente, crearne uno ad hoc: il sistema online fermerà il processamento del file xml in mancanza di tale dato.

5
<scuola_id> [numerico intero senza segno max. 10 cifre]

Il dato scuola_id è l’identificativo della scuola nel sistema online. Tale dato è univoco e verrà fornito ai singoli tecnici durante la fase di implementazione. E’ necessario per i motivi scritti sopra e il sistema bloccherà il processamento in due casi:

  • dato mancante
  • identificativo della scuola non uguale a quello dell’account da cui si sta caricando il file


6
<nome_corso> [stringa max. 255 caratteri]

Contiene il dato relativo al nome del corso. Tale dato è necessario.
Il sistema si bloccherà in questi due casi:

  • dato mancante
  • nome del corso associato ad un sys_scuola_id già presente nel sistema online ma con nome diverso


7
<durata> [stringa max. 255 caratteri]

Dato relativo alla durata del corso. Tale dato è opzionale.

8
9
<data_inizio> [data nel formato ISO-8601]
<data_fine> [data nel formato ISO-8601]

I due dati si riferiscono, com’è evidente, alla data di inizio e alla data di fine del corso.

Il formato dev’essere aaaa-mm-gg: nel caso la data fosse il 16 settembre del 1970, il dato corretto, passato nel file xml, dovrà essere 1970-09-16.
Questi due dati sono necessari.
Il sistema bloccherà il parsing nei seguenti casi:

  • entrambi i dati, o anche uno solo dei due, non ci sono
  • il formato della data non è corretto
  • la data di inizio è maggiore della data di fine corso
  • una delle due date, o entrambe, riportano una data inesistente (es. 29 febbraio 2007)


10
<m_formative>  [numerico intero senza segno a 1 cifra]

Il dato si riferisce alla modalità formativa principale di erogazione del corso.

E’ un dato opzionale.

La codifica delle modalità è la seguente:

  • 1: aula
  • 2: cantiere
  • 3: laboratorio

Esempio: prevalenza di erogazione in laboratorio, <m_formative>3</m_formative>.

11
<sede>  [testo]

Indica la sede dove è stato erogato il corso.

E’ un dato opzionale.

12
<attestazione>  [numerico intero senza segno a 1 cifra]

Dato che riporta il tipo di attestazione rilasciata alla fine del corso.

Esistono tre tipologie già codificate:

  • 1: attestato di frequenza
  • 2: certificato di competenze
  • 3: attestato di qualifica

E’ un dato opzionale.

13
<finanziamento presente="valore">  ["valore" = numerico intero senza segno a 1 cifra]

Nodo contenente le specificazioni dell’eventuale finanziamento del corso.

I valori accettati sono due:

  • 0: non finanziato
  • 1: finanziato

Il dato è necessario, anche se non ci sarà un blocco del parsing da parte del sistema. Nel caso l’attributo non avesse alcun valore, si attribuirà il valore 0 (non finanziato) di default.

I due nodi figli vengono parsati soltanto se il valore dell’attributo è 1.

14
<canale>  [stringa max. 255 caratteri]

Dato riguardante il canale del finanziamento. Dato opzionale.

15
<codice>  [stringa max. 255 caratteri]

Dato riguardante il codice del finanziamento. Dato opzionale.

17
<studenti>

Nodo degli studenti appartenenti al corso. Può contenere n studenti con n>0.

18
<studente>

Nodo contenente i dati relativi al singolo studente.

19
<cf> [stringa max. 16 caratteri]

Dato relativo al codice fiscale. Tale dato è necessario e deve, ovviamente, essere univoco.
Il sistema bloccherà il parsing per i seguenti errori:

  • dato mancante
  • dato con formato non valido (numero caratteri diverso da 16)

Il sistema bloccherà il parsing presentando una finestra di dialogo all’operatore nel caso il codice fiscale sia già presente nel database ma il nome e il cognome non combacino. In tale caso, non si avrà l’arresto della procedura, ma una volta che l’operatore avrà scelto quale informazioni tenere (quelle del file o quelle già presenti), il parsing potrà riprendere.

Dal dato del codice fiscale verranno automaticamente ricavati anche i dati relativi a sesso, data di nascita e luogo di nascita.

20
21
<cognome> [stringa max. 255 caratteri]
<nome> [stringa max. 255 caratteri]

Dati relativi al cognome e al nome dello studente. Tali dati sono necessari.

Il sistema bloccherà parzialmente il parsing nel caso spiegato al punto sopra.

22
<residenza domicilio="valore"> ["valore" = numerico intero senza segno a 1 cifra]

Nel caso i dati relativi a residenza e domicilio siano gli stessi, occorre impostare il valore dell’attributo domicilio a 0.

I valori permessi sono perciò:

  • 0: corrispondente a domicilio
  • 1: diverso da domicilio

In caso di assenza del valore dell’attributo, il sistema interpreterà tale mancanza come valore 0.

23
<indirizzo> [stringa max. 255 caratteri]

Indirizzo dello studente. Tale dato è opzionale.

24
<comune> [stringa max 4 caratteri]

Il dato del comune dev’essere codificato col sistema del codice catastale, (1 lettera e 3 numeri. Es. A001 = Abano Terme).
Il dato è opzionale.

25
<stato> [stringa max 4 caratteri]

Anche qui occorre utlizzare la codifica dello stato adottata nel codice fiscale. ( Es. Z100 = Albania).

Il dato è opzionale.

26
<cap> [stringa a 5 caratteri]

Dato relativo al CAP.

Il dato è opzionale.



Per brevità non si tratteranno in dettaglio i dati del nodo domicilio, essendo simili in tutto e per tutto a quelli della residenza. Si fa presente soltanto che in caso di valore impostato a 0 per l’attributo domicilio del nodo residenza, i figli del nodo domicilio non verranno parsati.


34
<contatti>

Nodo contatti: contiene i contatti dello studente.

35
36
37
38
<telefono> [stringa max 20 caratteri]
<cellulare> [stringa max 20 caratteri]
<fax> [stringa max 20 caratteri]
<email> [stringa max 50 caratteri]

I dati relativi ai contatti sono opzionali.



Nel caso il sistema trovasse un’occorrenza del codice fiscale nel database, procederà all’aggiornamento di tutti i dati opzionali legati allo studente, tranne, come già detto in precedenza, nome e cognome che saranno trattati interattivamente.