menu di navigazione del network

Segnatura di protocollo - Circolare 60


(Marco Esposito) #1

Perdonate ma qualcuno ha gia’ notato che il dtd e l’xsd in coda alla circolare forniscono indicazioni divergenti?
xml-lang / xml:lang
IndirizzoPostale={Denominazione|Indirizzo} / IndirizzoPostale={Denominazione | (Toponimo,Civico,CAP,Comune,Provincia, Nazione?)

Forse mi sono perso qualcosa?


(Simone Piunno) #2

Salve Marco,

potresti fornire maggiori dettagli?
Di quale circolare stiamo parlando?

Simone PIunno
Team per la Trasformazione Digitale


(Luciano Siciliano) #3

Credo si riferisca alla circolare n. 60 del 23 Gennaio 2013.

https://www.agid.gov.it/sites/default/files/repository_files/circolari/circolare_23_gennaio_2013_n.60_segnatura_protocollo_informatico_-_rev_aipa_n.28-2001.pdf

<xs:complexType name="Indirizzo">
<xs:sequence>
<xs:element ref="tns:Toponimo"/>
<xs:element ref="tns:Civico"/>
<xs:element ref="tns:CAP"/>
<xs:element ref="tns:Comune"/>
<xs:element ref="tns:Provincia"/>
<xs:element ref="tns:Nazione" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:element name="Indirizzo" type="tns:Indirizzo"/>
<xs:complexType name="IndirizzoPostale">
<xs:choice>
<xs:element ref="tns:Denominazione"/>
<xs:element ref="tns:Indirizzo"/>
</xs:choice>
</xs:complexType>


<!ELEMENT IndirizzoPostale (Denominazione | (Toponimo, Civico, CAP, Comune, Provincia, Nazione?))> 

Nell’xsd c’è il tipo complesso “Indirizzo” mentre nel dtd si riferiscono direttamente gli elementi Toponimo, Civico, …


(Marco Esposito) #4

Nell’xsd c’è il tipo complesso “Indirizzo” mentre nel dtd
si riferiscono direttamente gli elementi Toponimo, Civico, …

Esattamente. Ci ha causato diversi fastidi. Ora siamo su xsd, ma se qualcun altro stesse utilizzando il vecchio dtd per loro noi non saremmo a norma….


(Luciano Siciliano) #5

Sempre in tema di schemi XML, c’è un’altra incongruenza fra l’art. 3 comma 9 del DPCM 13/11/2014 e lo schema nell’allegato 5 dove manca l’hash del documento.

  1. Al documento informatico immodificabile vengono associati i metadati che sono stati generati durante la sua formazione. L’insieme minimo dei metadati, come definiti nell’allegato 5 al presente decreto, è costituito da:

a) l’identificativo univoco e persistente;
b) il riferimento temporale di cui al comma 7;
c) l’oggetto;
d) il soggetto che ha formato il documento;
e) l’eventuale destinatario;
f) l’impronta del documento informatico.

Eventuali ulteriori metadati sono defi niti in funzione
del contesto e delle necessità gestionali e conservative.

<?xml version="1.0" encoding="ISO-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="documento">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="datachiusura" type="xs:date"/>
        <xs:element name="oggettodocumento" type="xs:string"/>
        <xs:element name="soggettoproduttore">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="nome" type="xs:string"/>
              <xs:element name="cognome" type="xs:string"/>
              <xs:element name="codicefiscale" type="xs:string"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="destinatario">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="nome" type="xs:string"/>
              <xs:element name="cognome" type="xs:string"/>
              <xs:element name="codicefiscale" type="xs:string"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="IDDocumento" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
</xs:schema>

(Marco Esposito) #6

A proposito di impronta, vi chiedo la cortesia di confermarmi le modalità di calcolo della impronta SHA-256 in BASE64. Per il calcolo noi ricaviamo l’impronta SHA256 in byte che codifichiamo come tali in base64.

                    byte[] sha256 = org.apache.commons.codec.digest.DigestUtils 
                                    .sha256(fis); 
                    return Base64.encodeBase64String(sha256); 

Non si deve convertire in base64 la stringa esadecimale, corretto?