Home
Skip to main content eIDAS szerinti minősített bizalmi szolgáltató
Az e-akta formátum specifikációja

 

 

Az e-akta formátum specifikációja
- Microsec zrt. -

 

 

1. Bevezetés

Az elektronikus akta (e-akta) elnevezés alatt az Igazságügyi Minisztérium részére az elektronikus cégeljárás kapcsán a Microsec zrt. által kifejlesztett olyan fájlformátumot értünk, amely dokumentumokat, és a dokumentumokon elektronikus aláírásokat és időbélyegeket tartalmaz. A dokumentumokon elhelyezett aláírások szabványos, az ETSI által kidolgozott ETSI TS 101 903 (XAdES) specifikációnak megfelelő ún. XAdES aláírások lehetnek.

Jelen specifikáció nem tesz megkötéseket a XAdES aláírásokkal kapcsolatban, hanem azt írja le, hogy egy XML fájlban (az ún. e-aktában) hogyan helyezhetőek el dokumentumok, illetve hogyan helyezhetőek el XAdES formátumú aláírások ezen dokumentumokon, illetve a rajtuk elhelyezett aláírásokon. A gyakorlati alkalmazásokban általában nem elengedő a dokumentumokat önmagukban aláírni, hanem különféle metaadatokat is kell csatolni hozzájuk. Az e-akta specifikáció a Dublin Core Metadata Initiative által meghatározott, szabványos formátumú metaadatok csatolását támogatja, de más metaadatok csatolására is van lehetőség.

Magyarországon az e-akta formátum de facto szabvánnyá vált, számos felhasználói közösség, illetve alkalmazás e-akta formátumú elektronikusan aláírt dokumentumokat kezel.

1.1. Azonosítás

Azonosító 1.3.6.1.4.1.21528.2.1.1.28
Verzió 1.4
Biztonsági besorolás nyilvános
Dátum 2013. 08. 06.
A specifikáció aktuális változata ezen a címen érhető el.

1.2. Változások

Verzió Változás Dátum Készítette
1.0 Első változat 2008. 07. 01. Dr. Berta István Zsolt, Tóth Szilveszter
1.1 XML séma hivatkozás javítva 2009. 07. 22. Dr. Berta István Zsolt, Tóth Szilveszter
1.2 XAdES verzió váltás, elavult elemek kivétele, pontosítások 2011. 02. 04. Endrődi Csilla
1.3 Frissítés 2011. 11. 17. Endrődi Csilla
1.4 Frissítés 2013. 08. 06. Endrődi Csilla

1.3. Hivatkozott dokumentumok

1.4. Fogalmak

2. Az e-akta formátum rövid bemutatása

Az e-akta egy XML fájl, amelyben a bináris elemek (pl. dokumentumok, tanúsítványok) base64 kódolással szerepelnek. Egy e-aktában dokumentumok helyezkedhetnek el, amelyekhez Dublin Core szerinti metaadatok kapcsolódhatnak, és a dokumentumokon XAdES aláírások vagy időbélyegek lehetnek. Az aláírás vagy időbélyeg vagy csak egyetlen dokumentumhoz, vagy pedig az aktában lévő összes dokumentumhoz kapcsolódik (ez utóbbi esetben keretaláírásnak vagy keretidőbélyegnek is nevezzük). A keretaláírások (és keretidőbélyegek) az aktában lévő összes dokumentumon, valamint a dokumentumokon lévő (nem keret-) aláírásokon és időbélyegeken helyezkednek el.

Például, egy e-akta a következő struktúrát követheti:

<es:Dossier ... >
<es:DossierProfile>...</es:DossierProfile>
<es:Documents>
  <es:Document>                                 <!-- egy beillesztett dokumentum -->
    <es:DocumentProfile>...</es:DocumentProfile>
    <ds:Object>...</ds:Object>                  <!-- a dokumentum base64 kódolással -->
    <ds:Signature>...</ds:Signature>            <!-- aláírás a dokumentumon -->
    <es:TimeStamp>...</es:TimeStamp>            <!-- időbélyeg a dokumentumon -->
  </es:Document>
  <ds:Signature>...</ds:Signature>              <!-- keretaláírás -->
  <es:TimeStamp>...</es:TimeStamp>              <!-- keretidőbélyeg -->
</es:Documents>

 

Az automatizált feldolgozhatóság érdekében minden e-akta rendelkezik valamilyen sémával, amely az e-aktában lévő adatokkal kapcsolatban tartalmazhat megkötéseket. Az alapértelmezett séma csak azt mondja meg, hogy a dokumentumoknak, aláírásoknak, időbélyegeknek és leíró adatoknak milyen sorrendben, struktúrában kell szerepelniük. De egy séma például megkötheti, hogy a sémának megfelelő e-aktákban kizárólag meghatározott számú dokumentum szerepelhet, valamint megkötéseket tartalmazhat a dokumentumok címére, formátumára, illetve a hozzájuk kapcsolódó adatelemekre is. Az e-akta sémája (amely egyben egy XML séma) alapján automatizmus is könnyen tudja ellenőrizni, hogy egy e-akta teljesíti-e ezen követelményeket. Például, ellenőrizni lehet, hogy egy aláírt beadvány tartalmazza-e a szükséges mellékleteket, illetve az automatizmus is könnyen meg tudja különböztetni a beadványhoz csatolt egyes dokumentumokat egymástól (pl. meg tudja állapítani, hogy melyik dokumentum a beadvány, és melyik a csatolt melléklet).

Az e-akta kiterjesztése .es3, tértivevény esetén .et3 (korábban használt kiterjesztések: .eak, .etv).

A továbbiakban az e-akta formátum specifikációját adjuk meg szöveges formában. Elérhetővé teszünk egy formális sémadefiníciót is, azonban felhívjuk a figyelmet arra, hogy az irányadó mindig a szöveges leírás. Az xsd állomány megengedőbb feltételeket tartalmaz a specifikációban rögzítettekhez képest, egyrészt, mivel nem minden követelmény írható le formálisan, másrészt a visszafelé való kompatíbilitás fenntartása érdekében az xsd állomány opcionálisan tartalmazza a korábban használt, de már nem témogatott; illetve a jelenleg használt, de korábban esetleg nem is létező elemeket is.

A továbbiakban minden állítás kötelező követelményt fogalmaz meg, ahol nem, ott egyértelműen jelöljük, hogy opcionális követelményről van szó.

3. Az e-akta (es:Dossier) felépítése

Az e-akta egy XML fájl, amelynek gyökere egy es:Dossier elem, amely az e-aktában használt névtereket is definiálja (a metaadatokra vonatkozó névtereket nem kötelező itt definiálni). Az e-akta a következő névterekre támaszkodik:

A továbbiakban az egyes névtereket a fenti prefixekkel jelöljük. Az e-szignó névtér - amelyet az es prefix-szel jelölünk - kitüntetett szereppel bír, ez határozza meg az e-akta sémáját. Az e-akta sémája lehet a fenti "alapértelmezett" séma, amelyhez a fenti névtér tartozik. Ha az e-akta más sémával rendelkezik, akkor az adott sémához más e-szignó névtér tartozik. A továbbiakban az alapértelmezett sémának megfelelő e-aktákat mutatjuk be, de e-akták más sémákkal is rendelkezhetnek. Minden e-akta séma meg kell, hogy feleljen a fenti, alapértelmezett sémának, de ezen túl további megkötéseket tehet az e-aktában elhelyezkedő dokumentumok számára és nevére, valamint további elemeket definiálhat a /es:Dossier/es:DossierProfile és a /es:Dossier/es:Documents/es:Document/es:DocumentProfile elemek alá. (Ezek az e-akta, illetve a dokumentum további, a Dublin Core specifikációban nem definiált metaadatait tartalmazhatják.)

Az es:Dossier ezen túl hivatkozást kell, hogy tartalmazzon az e-szignó névteret leíró XML séma helyére (URL):

xsi:schemaLocation="https://www.microsec.hu/ds/e-szigno30# https://www.microsec.hu/ds/e-szigno30.xsd"

 

A gyökér elem a következő elemeket tartalmazhatja: es:DossierProfile, es:Documents, ds:Signature, es:TimeStamp. (Az AckEmail és Location attribútumok már nem használatosak.)

Jelen fejezet alfejezetei azon struktúrát határozzák meg, ahogy az e-aktában további elemek helyezkedhetnek el. Amennyiben egy fejezet címe mellett

3.1. es:DossierProfile

Az e-akta adatait taralmazhatja. Amennyiben az e-aktán keretaláírás vagy keretidőbélyeg helyezkedik el, ezek az es:DossierProfile elem integritását is védik. Az es:DossierProfile egy OBJREF attribútummal rendelkezik, amellyel az //es:Documents elem Id attribútumára hivatkozik, illetve maga is rendelkezik egy Id attribútummal.

3.1.1. es:Title

Az e-akta címe, típusa string.

3.1.2. es:E-category (*)

Annak meghatározása, hogy az e-akta egyszerű e-akta vagy átvételi elismervény. Típusa string. A következő értékekkel rendelkezhet:

3.1.3. es:CreationDate

Az e-akta létrehozásának időpontja.

3.1.4. es:Metadata (?)

Az e-akta Dublin Core szerinti metaadatait tartalmazhatja. Ezen kívül további metaadatokat is tartalmazhat (amelyekre például a séma tehet megkötéseket). A szükséges névtereket itt, az es:Metadataelemben kell definiálni.

Az es:Metadata kötelezően rendelkezik egy Custom nevű attribútummal, amelynek értéke "true".

3.2. es:Documents

Az es:Documents az e-aktában lévő dokumentumokat és a hozzájuk tartozó metaadatokat, XAdES aláírásokat, időbélyegeket, ellenjegyzéseket stb. tartalmazza. Az es:Documentskizárólag Id attribútummal rendelkezik.

3.2.1. es:Document (*)

Az aktában minden egyes dokumentumhoz egy-egy es:Documentelem tartozik. Ezen elem tartalmazza magát a dokumentumot, a dokumentumhoz tartozó metaadatokat, a dokumentumon lévő aláírásokat (azaz a keretaláírásokat nem), időbélyegeket (a keretidőbélyegeket nem), és az aláírásokhoz tartozó különféle információkat (tanúsítványok, ellenjegyzések stb).

3.2.1.1. es:DocumentProfile

A dokumentum profilját, azaz metaadatait (pl. címét), és a dokumentum megjelenítéséhez szükséges információkat tartalmazza.
Már nem támogatott, de korábban használt elemek az es:UsedDispApplication, az es:SourceLocation és az es:MimeChecked(ezek a sémadefinícióban opcionálisként szerepelnek).

Az Id attribútum tartalmazza a dokumentum-profil azonosítóját (amivel pl. az aláírások hivatkozhatnak rá), és egy OBJREF attribútummal hivatkozik a dokumentumra (../ds:Object), aminek a profilját tartalmazza. (Mind a ds:Object helyére, mind a referenciára vonatkozó követelménynek teljesülnie kell.)

3.2.1.1.1. es:Title

A dokumentum címe, típusa string.

3.2.1.1.2. es:E-category (*)

Annak meghatározása, hogy a szóban forgó dokumentum milyen kategóriába sorolható. Típusa string. A következő értékekkel rendelkezhet:

Ennek a leíró adatnak a használata idővel gyakorlatilag értelmét vesztette; jelenleg -- automatikus kitöltés esetén -- mindig "electronic data" értéket kap.
Az elektronikus adat, dokumentum és irat (data, document és record) szerinti kategorizálás eredetileg az elektronikus aláírásról szóló törvényből származik, de ezen megkülönböztetés a törvény 2004. évi módosításával megszűnt.
A magyar nyelvű elnevezések már nem használatosak, azok csak az e-akta specifikáció korábbi verzióival való kompatibilitás végett szerepelnek a sémában.
Az "electronic profile" és az "electronic adatlap" értékek szintén nem használatosak már, a specifikáció korábbi verzióival való kompatibilitás végett szerepelnek a sémában.

3.2.1.1.3. es:CreationDate

Dátum, annak a dátuma, amikor a felhasználó beillesztette a dokumentumot az e-aktába.

3.2.1.1.4. es:Format

A dokumentum formátumára vonatkozó információt tartalmaz.
Ha a dokumentum tömörítve került beillesztésre, akkor ez az elem tartalmazza a tömörítés előtti formátumot; egyébként megegyezik a xades132:Signature elem található xades132:DataObjectFormat elem tartalmával.

3.2.1.1.4.1. es:MIME-Type

A dokumentum mime típusát adja meg. Attribútumai:

3.2.1.1.5. es:SourceSize

A ../../ds:Objectdokumentum forrásának mérete. A sizeValue attribútum a byte-okban vett méretet tartalmazza, a sizeUnit attribútum értéke "B", azt jelenti, hogy a méretet byte-okban kell érteni.

3.2.1.1.6. es:BaseTransform

Megadja, hogy milyen transzformációk során jött létre a beillesztett forrásdokumentumból a ../../ds:Object elemben lévő bas64 kódolt dokumentum. Minden es:Transformgyermeke egy-egy transzformációt jelent. Az e-akta specifikáció jelen verziója szerint a következő három transzformáció szerepelhet itt, kizárólag a következő sorrendben:

3.2.1.1.6.1. es:Transform +

Egy transzformációt ad meg, egy Algorithm nevű kötelező attribútummal rendelkezhet, amely az előző pontban szereplő értékeket veheti fel.

3.2.1.1.7. es:RecipientCertificateList (?)

Titkosított dokumentum esetén megadható, hogy a titkosítás milyen nyilvános kulcsokkal történt. Ezen elem minden egyes gyermeke egy-egy titkosító tanúsítványt sorol fel.

3.2.1.1.7.1. es:RecipientCertificate (+)

Egy base64 kódolású tanúsítványt tartalmaz. Az ezen tanúsítványhoz tartozó magánkulcs segítségével az ../../../ds:Objectelemben lévő dokumentum visszafejthető.

3.2.1.1.8. es:Metadata (?)

Metaadatok, tartalma, felépítése megegyezik a //es:Dossier/es:DossierProfile/es:Metadataelemével.

3.2.1.2. ds:Object

A beillesztett dokumentumot tartalmazza, base64 kódolással.

Megjegyzés: Az e-akta formátum szerint a base64 kódolás akkor is kötelező, ha a beillesztett dokumentum egy TXT vagy egy XML fájl.

3.2.1.3. ds:Signature (*)

Ezen elem (leszármazottaival együtt) egy XAdES formátumú (alapértelmezett esetben XAdES v1.3.2.) elektronikus aláírást tartalmaz, amelynek szerkezetét a XAdES és az XMLDSIG specifikációk írják le. Jelen specifikációnak nem célja a ds:Signature elemeinek részletes ismertetése, így csak olyan mértékben tárgyaljuk a ds:Signature tartalmát, amennyire az az e-akta formátumból eredő megszorítások alkalmazásához szükséges. Az e-akta formátum az aláírással kapcsolatban nem tesz megkötéseket (így az aláírás megfelelhet más ETSI TS 101 903alapú specifikációknak), az e-akta formátum megszorításai arra vonatkoznak, hogy az aláírás hogyan kapcsolódik az XML fájl többi részéhez, illetve mely részeihez kapcsolódhat.

Megjegyzések:

3.2.1.3.1. ds:SignedInfo

Ezen elem azt írja le, hogy az aláírás mely más elemekre vonatkozik, felépítését az XMLDSIG specifikáció határozza meg. Az e-akta formátum szerint a //es:Document/ds:Signature/ds:SignedInfoa következő elemekre hivatkozik:

3.2.1.3.2. ds:SignatureValue

Az aláírás értéke az XMLDSIG specifikáció szerint.

3.2.1.3.3. ds:KeyInfo

Az aláíráshoz használt kulcspárról tartalmaz információt, jellemzően egy X.509 tanúsítvány szerepel benne. Felépítését az XMLDSIG specifikáció határozza meg.

3.2.1.3.4. ds:Object

Az aláírás profilját tartalmazó aláírt objektum, Id attribútummal rendelkezik.

3.2.1.3.4.1. es:SignatureProfile

Az aláírás profilját fejti ki. A következő attribútumokat tartalmazza:

3.2.1.3.4.1.1. es:SignerName

Az aláíró neve, az aláíró tanúsítványának Subject DN / common name mezeje szerint. Típusa string.

3.2.1.3.4.1.2. es:SDPresented ?

Értéke true vagy false lehet, azt mondja meg, hogy az aláírás-létrehozó alkalmazás szerint az aláírómegtekintette-e egy biztonságos megjelenítővel az aláírni kívánt dokumentumot.

3.2.1.3.4.1.3. es:Type

Típusa string, az aláírás típusát adja meg. A következő értékeket veheti fel: A magyar elnevezések már nem használatosak, az e-akta formátum korábbi verzióival való kompatibilitás miatt szerepelnek a sémában.

3.2.1.3.4.1.4. es:Generator

3.2.1.3.4.1.4.1. es:Program

Az aláírás-létrehozó alkalmazásneve és verziószáma. Két kötelező attribútuma van, mindkettő string. A name az alkalmazás nevét, a version a verziószámát adja meg.

Példa:

<es:Program name="e-Szigno" type="3.1.28.0"/>

 

3.2.1.3.4.1.4.2. es:Device

Az aláírás-létrehozó eszköz neve és típusa. A name kötelező attribútum, az eszköz nevét adja meg. A típus opcionális attribútum. Mindkét attribútum string.

Példa:

<es:Device name="OpenSSL 0.9.8c" type=""/>

 

3.2.1.3.4.1.4.3. es:Comment ?

Az aláíró aláíráskor megjegyzést (vagy pl. záradékot) fűzhet az aláíráshoz, e megjegyzés az aláírás szerepét határozhatja meg. A megjegyzés jellemzően egy csatolt dokumentum. Az es:Commentrendelkezhet egy Type nevű attribútummal, amely a megjegyzés típusát adja meg. A Type a következő értékeket veheti fel:

3.2.1.3.4.1.4.3.1. es:Document ?

A megjegyzés, mint dokumentum. E dokumentum annyiban tér el a /es:Dossier/es:Documents/es:Documentelemtől, hogy nem lehet rajta sem aláírás, sem időbélyeg.

Megjegyzés: E megszorítás a sémában nem jelenik meg.

3.2.1.3.4.1.4.4. es:SigPolChecked ?

Megadható, hogy az aláírás-létrehozó alkalmazás ellenőrizte, hogy az aláírás valóban egy adott elektronikus aláírási szabályzatszerint készült-e. Az elem true vagy false értékeket vehet fel, és opcionális.

3.2.1.3.4.1.4.5. es:CustomData (?)

Az aláírás tetszőleges metaadatait tartalmazhatja (amelyekre például a séma tehet megkötéseket). A szükséges névtereket itt, az es:CustomDataelemben kell definiálni.

3.2.1.3.5. ds:Object

Aláírt objektum, amely a XAdES kiterjesztéseket tartalmazza.

3.2.1.3.5.1. xades132:QualifyingProperties

Felépítését, tartalmát a XAdES specifikáció határozza meg.

3.2.1.3.5.1.1. xades132:SignedProperties

Aláírt elemek a XAdES szerint.

3.2.1.3.5.1.2. xades132:UnsignedProperties

Nem aláírt elemek a XAdES szerint (pl. az aláírásra kerülő időbélyeg stb).

3.2.1.4. es:TimeStamp (*)

A szülő es:Document elemen elhelyezett XAdES időbélyeget tartalmaz, a típusa xades:TimeStampType. Az időbélyeg a következő elemekre hivatkozik: A ds:Signatureelemnél tett megjegyzések itt is érvényesek.

3.3. ds:Signature (*)

Az aktán lévő keretaláírások. Felépítésükben megegyeznek a //es:Document/ds:Signature elemmel, egyedüli különbség, hogy keretaláírás esetén a ds:SignedInfo elemben lévő referenciák máshova mutatnak. Az es:Dossier/ds:Signature/ds:SignedInfo elemben a következő elemekre lehetnek referenciák:

 

A dokumentumon lévő aláírásnál lévő ds:Signatureelemnél tett megjegyzések itt is érvényesek.

3.4. es:TimeStamp (*)

Az e-aktán elhelyezett keretidőbélyeget tartalmaz, a típusa xades:TimeStampType. Az időbélyeg a következő elemekre hivatkozik:

 

A dokumentumon lévő aláírásnál lévő ds:Signature elemnél tett megjegyzések itt is érvényesek.

4. Alapértelmezett e-akta XML séma

<?xml version="1.0" encoding="ISO-8859-2"?>
<schema targetNamespace="https://www.microsec.hu/ds/e-szigno30#" xmlns:es="https://www.microsec.hu/ds/e-szigno30#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xades="http://uri.etsi.org/01903/v1.2.2#" xmlns:mireg="http://mireg.org/schema/1.0/" xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
  <import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/>
  <import namespace="http://uri.etsi.org/01903/v1.2.2#" schemaLocation="XAdES.xsd"/>
  <import namespace="http://uri.etsi.org/01903/v1.3.2#" schemaLocation="XAdES-1.3.2.xsd"/>
  <import namespace="http://mireg.org/schema/1.0/" schemaLocation="metadata.xsd"/>
  <element name="Dossier">
    <complexType>
      <sequence>
        <element name="DossierProfile">
          <complexType>
            <sequence>
              <element name="Title" type="string"/>
              <element name="E-category" minOccurs="0">
                <simpleType>
                  <restriction base="string">
                    <enumeration value="electronic dossier"/>
                    <enumeration value="electronic acknowledgement"/>
                    <enumeration value="elektronikus akta"/>
                    <enumeration value="elektronikus átvételi elismervény"/>
                  </restriction>
                </simpleType>
              </element>
              <element name="CreationDate" type="dateTime"/>
              <any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
            </sequence>
            <attribute name="Id" type="ID" use="required"/>
            <attribute name="OBJREF" type="string"/>
          </complexType>
        </element>
        <element name="Documents">
          <complexType>
            <sequence>
              <element ref="es:Document" minOccurs="0" maxOccurs="unbounded"/>
            </sequence>
            <attribute name="Id" use="required">
              <simpleType>
                <restriction base="ID">
                  <enumeration value="Object0"/>
                </restriction>
              </simpleType>
            </attribute>
          </complexType>
        </element>
        <choice minOccurs="0" maxOccurs="unbounded">
          <element ref="ds:Signature"/>
          <element name="TimeStamp" type="xades:TimeStampType"/>
        </choice>
      </sequence>
      <attribute name="AckEmail">
        <simpleType>
          <restriction base="string">
            <pattern value="([^@]+@[^\.]+\..+)?"/>
          </restriction>
        </simpleType>
      </attribute>
      <attribute name="Location" type="string"/>
    </complexType>
  </element>
  <element name="Document">
    <complexType>
      <sequence>
        <element name="DocumentProfile">
          <complexType>
            <sequence>
              <element name="Title" type="string"/>
              <element name="E-category" minOccurs="0">
                <simpleType>
                  <restriction base="string">
                    <enumeration value="electronic data"/>
                    <enumeration value="electronic document"/>
                    <enumeration value="electronic record"/>
                    <enumeration value="elektronikus adat"/>
                    <enumeration value="elektronikus dokumentum"/>
                    <enumeration value="elektronikus irat"/>
                    <enumeration value="electronic profile"/>
                    <enumeration value="elektronikus adatlap"/>
                  </restriction>
                </simpleType>
              </element>
              <element name="CreationDate" type="dateTime"/>
              <element name="Format">
                <complexType>
                  <sequence>
                    <element name="MIME-Type">
                      <complexType>
                        <attribute name="type"/>
                        <attribute name="subtype"/>
                        <attribute name="extension"/>
                        <attribute name="charSet"/>
                      </complexType>
                    </element>
                  </sequence>
                </complexType>
              </element>
              <element name="UsedDispApplication" minOccurs="0">
                <complexType>
                  <attribute name="name"/>
                  <attribute name="version"/>
                </complexType>
              </element>
              <element name="MimeChecked" minOccurs="0">
                <complexType>
                  <simpleContent>
                    <extension base="boolean">
                      <attribute name="executed" type="boolean"/>
                    </extension>
                  </simpleContent>
                </complexType>
              </element>
              <element name="SourceLocation" type="string" minOccurs="0"/>
              <element name="SourceSize">
                <complexType>
                  <attribute name="sizeValue" type="integer"/>
                  <attribute name="sizeUnit" fixed="B"/>
                </complexType>
              </element>
              <element name="BaseTransform">
                <complexType>
                  <sequence maxOccurs="unbounded">
                    <element name="Transform">
                      <complexType>
                        <attribute name="Algorithm">
                          <simpleType>
                            <restriction base="string">
                              <enumeration value="zip"/>
                              <enumeration value="encrypt"/>
                              <enumeration value="base64"/>
                            </restriction>
                          </simpleType>
                        </attribute>
                      </complexType>
                    </element>
                  </sequence>
                </complexType>
              </element>
              <element name="RecipientCertificateList" minOccurs="0">
                <complexType>
                  <sequence>
                    <element name="RecipientCertificate" maxOccurs="unbounded"/>
                  </sequence>
                </complexType>
              </element>
              <element name="Metadata" minOccurs="0">
                <complexType>
                  <sequence>
                    <element ref="mireg:metadata"/>
                  </sequence>
                  <attribute name="Custom" type="boolean" fixed="true"/>
                </complexType>
              </element>
            </sequence>
            <attribute name="Id" type="ID" use="required"/>
            <attribute name="OBJREF" type="string"/>
          </complexType>
        </element>
        <element ref="ds:Object"/>
        <choice minOccurs="0" maxOccurs="unbounded">
          <element ref="ds:Signature"/>
          <element name="TimeStamp" type="xades:TimeStampType"/>
        </choice>
      </sequence>
    </complexType>
  </element>
  <element name="SignatureProfile">
    <complexType>
      <sequence>
        <element name="SignerName" type="string"/>
        <element name="SDPresented" minOccurs="0">
          <complexType>
            <simpleContent>
              <extension base="boolean">
                <attribute name="server" type="boolean"/>
              </extension>
            </simpleContent>
          </complexType>
        </element>
        <element name="Type">
          <simpleType>
            <restriction base="string">
              <enumeration value="signature"/>
              <enumeration value="countersignature"/>
              <enumeration value="aláírás"/>
              <enumeration value="ellenjegyzés"/>
            </restriction>
          </simpleType>
        </element>
        <element name="Generator">
          <complexType>
            <sequence>
              <element name="Program">
                <complexType>
                  <attribute name="name"/>
                  <attribute name="version"/>
                </complexType>
              </element>
              <element name="Device" minOccurs="0">
                <complexType>
                  <attribute name="name"/>
                  <attribute name="type"/>
                </complexType>
              </element>
            </sequence>
          </complexType>
        </element>
        <element name="Comment" minOccurs="0">
          <complexType mixed="true">
            <sequence>
              <element ref="es:Document" minOccurs="0"/>
            </sequence>
            <attribute name="Type">
              <simpleType>
                <restriction base="string">
                  <enumeration value="clause"/>
                  <enumeration value="gloss"/>
                  <enumeration value="comment"/>
                  <enumeration value="opinion"/>
                  <enumeration value="záradék"/>
                  <enumeration value="széljegyzet"/>
                  <enumeration value="megjegyzés"/>
                  <enumeration value="vélemény"/>
                </restriction>
              </simpleType>
            </attribute>
          </complexType>
        </element>
        <element name="SigPolChecked" type="boolean" minOccurs="0"/>
        <element name="CustomData" minOccurs="0">
          <complexType>
            <sequence>
              <any namespace="##any" minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
            </sequence>
          </complexType>
        </element>
      </sequence>
      <attribute name="Id" type="ID" use="required"/>
      <attribute name="OBJREF" type="string"/>
      <attribute name="SIGREF" type="string"/>
      <attribute name="SIGREFLIST" type="string"/>
    </complexType>
  </element>
  <element name="Metadata">
    <complexType>
      <sequence>
        <element ref="mireg:metadata"/>
      </sequence>
      <attribute name="Custom" type="boolean" fixed="true"/>
    </complexType>
  </element>
</schema>