Segnatura di protocollo - Circolare 60

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?

Salve Marco,

potresti fornire maggiori dettagli?
Di quale circolare stiamo parlando?

Simone PIunno
Team per la Trasformazione Digitale

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, …

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….

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>

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?