akadálymentesítes98B80341-C60D-47E9-BFD7-4DA17C4552BEarrow-sidearrow-turn-leftarrow-turn-rightarrw-up00CBA6B5-2405-4F29-B4B4-F1FD05E515CF033FE6BD-A0A4-4F1A-AC81-DF9B82281C23FFE94B6B-B7F6-48A3-AA17-001740ACC82B2BB4E896-0693-442D-AD30-DA2CA305CFAD90096E03-5C9C-4614-8A7D-C4D8050462EE01F4B6E5-7340-4665-AD74-8B0ED3D9EFC7C793A736-E30C-4449-8677-05E8D3C8B340056F4B6D-4810-4769-8695-D9430BD7EBBA5028284F-E815-4FA8-A786-5D1CAD1C972C5FC82277-5A45-4AD5-9711-BFC1EBBC78641634DA89-134B-4658-A87A-87EE25F1F4C4EC991ECD-7C35-4F3C-AB46-DA5A7964C78CDFFBB51C-EC7E-4609-B2F1-050BE53CB79758CAA304-5CD1-40EF-BFCC-1EC7C945EEDAA7CCCDEF-64AE-497C-A61B-395F4E9D3BE1DF67BE01-C728-4DF8-91E9-0FF61372A8E8384A82E6-3ABC-497F-AF28-85F35781214457514F04-613E-45A5-BDFE-C39546EA31DE9A963E8A-A779-47DF-B336-689940784A90flagF2F396C1-4FCE-467E-9E88-234B21A9E1FAC8BD8D45-BB1E-4EE6-A42C-AE03B7320F2BD51A239C-1481-4D50-A402-62285AEB5D91A733AA99-29E0-49AB-A058-3A7921307C123764FB81-2316-4694-B99D-0FBD8AA79E20E756C8BD-B809-403C-B291-34D306FAFDFC47CA210C-8002-4454-AE9D-5587B7333A13minus-icon2C204BDA-10D0-4A6D-86B2-77BBA743439D2C204BDA-10D0-4A6D-86B2-77BBA743439D912A2873-64E7-4F35-BDD1-93FD4AAE66DD3FB8C193-49B4-432F-8C44-85AF562565F3playplus-iconDA85C601-1D55-4EDF-BF24-18A21E1519C9DA85C601-1D55-4EDF-BF24-18A21E1519C9AE6E8177-A332-4595-8237-F89B399E2FE880014403-A851-46FF-B048-C9C4E8853CB4070A1479-1417-472C-9732-6C693DDFC24490BC5F2B-9829-4956-BB7A-C2E9CDDB0D77F1E26F04-F26E-460C-AF33-4A191A7AEA7669B46B56-4EB7-4C0C-9EE5-CD64502945D42C6BAFBE-9477-41EA-BE42-8057F7FE2D46C335B2AB-C1E1-4730-90C4-0070C27B039F5148F26A-308E-4DA2-B40F-3811FA79D4435148F26A-308E-4DA2-B40F-3811FA79D443

Specification of the e-Dossier Format

> Hungarian version

 

Specification of the e-Dossier Format

- Microsec Ltd. -

 

 

1. Introduction

The concept of electronic dossier (e-dossier) refers to a file format developed by Microsec Ltd. for the Hungarian Ministry of Public Administration and Justice in connection with electronic firm registration, containing documents and digital signatures and timestamps on them. The signatures on the documents are standard XAdES signatures according to the ETSI TS 101 903 (XAdES) specification.

The present specification doesn’t define constraints on the XAdES signatures. It describes the rules how to insert documents in an XML file ( the so called e-dossier ), how to put XAdES signatures on these documents and on the signatures already present on the documents. In practical applications it is usually not sufficient to sign the documents themselves, but different metadata should be attached to them. The e-dossier specification supports the attachment of standard format metadata specified by the Dublin Core Metadata Initiative, but the attachment of other metadata is allowed as well.

In Hungary the e-dossier format has become a de facto standard, several user communities and applications are using digitally signed documents in e-dossier format.

1.1. Identification

Identifier1.3.6.1.4.1.21528.2.1.1.28
Version1.2
Classificationnyilvános
Date2011. 02. 04.
The up-to-date version of the specification is available in Hungarian at http://www.e-szigno.hu/?lap=edossier30.

1.2. 1.2. Changes

VersionChangeDateCreated by
1.0First version2008. 07. 01.Dr. István Zsolt BERTA, Szilveszter TÓTH
1.1XML schema reference corrected2009. 07. 22.Dr. István Zsolt BERTA, Szilveszter TÓTH
1.2XAdES version change, removal of obsolete elements, corrections 2011. 02. 04.Csilla ENDRŐDI

1.3. Hivatkozott dokumentumok

1.4. Fogalmak

2. A brief introduction to the e-dossier format

The e-dossier is an XML file containing base64 encoded binary elements (e.g. documents, certificates) . An e-dossier may contain documents, Dublin Core standard metadata attached to them, and XAdES signatures or timestamps or the documents. A signature or a timestamp belongs either to a single document or to all documents in the dossier (in the latter case it is called a frame signature or frame timestamp resp.) The frame signatures and frame timestamps apply to all the documents in the dossier as well as to all the (non-frame) signatures and timestamps on the documents.

An example of an e-dossier structure:

<es:Dossier ... >
<es:DossierProfile>...</es:DossierProfile>
<es:Documents>
  <es:Document>                                 <!-- inserted document -->
    <es:DocumentProfile>...</es:DocumentProfile>
    <ds:Object>...</ds:Object>                  <!-- base64 encoded document -->
    <ds:Signature>...</ds:Signature>            <!-- signature on the document -->
    <es:TimeStamp>...</es:TimeStamp>            <!-- timestamp on the document -->
  </es:Document>
  <ds:Signature>...</ds:Signature>              <!-- frame signature -->
  <es:TimeStamp>...</es:TimeStamp>              <!-- frame timestamp -->
</es:Documents>

To facilitate automated processing, each e-dossier has some schema that may contain restrictions on the data in the e-dossier. The default schema determines only the order and structure of the documents, signatures, time stamps and descriptive data. An arbitrary schema may fix the number of documents in an e-dossier complying with it, or may contain constraints on the title, on the format of the documents or on the data connected to them. The schema of the e-dossier (an XML schema at the same time) allows an automatism to easily check whether an e-dossier meets these requirements. For instance it can be checked if a submission contains the necessary appendices, an automatism can easily distinguish the individual documents attached to the submission . (E.g. it can tell which document is the submission and which is the annex attached to it.)

The file extension of an e-dossier is .es3, for a recorded delivery .et3 (legacy applications used .eak and .etv which are now deprecated).

In the following sections the format specification of an e-dossier is presented in verbal form. An XML schema definition is also available. We emphasize that it is always the verbal description that should be considered as authoritative. The xsd file represents weaker restrictions compared to the text of the specification. On one hand because not every requirement can be described formally, on the other hand, to sustain backward compatibility the xsd file optionally contains the earlier used and no more supported, as well as the actually used, previously not existing elements.

In the text to follow every statement formulates a mandatory requirement as a default. If not, then it will be explicitly mentioned as an optional requirement.

3. The Structure of the e-dossier (es:Dossier)

The e-dossier is an XML file, its root is an es:Dossier element, that also defines the namespaces referred by the e-dossier (the namespaces referring to metadata are not necessarily defined here). The e-dossier refers to the following namespaces:

The individual namespaces will be labeled with the above prefixes. The e-szigno namespace - labeled with the es prefix - has a distinguished role, it determines the schema of the e-dossier. The schema of the e-dossier can be the above „default” schema with the above namespace. If the e-dossier has a different schema , then that schema has a different namespace. Here we present e-dossiers with the default schema, but e-dossiers may have different schemas as well. Every e-dossier schema must be compliant with the above default schema, but furthermore it may contain restrictions on the number and name of the documents in the dossier and it may define additional elements under /es:Dossier/es:DossierProfile and /es:Dossier/es:Documents/es:Document/es:DocumentProfile. (These may contain additional metadata of the e-dossier or the document, not defined in Dublin Core specification.)

The es:Dossier must contain a reference to the location of the XML schema describing the e-szigno namespace. (URL):

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

The root element may contain the following elements: es:DossierProfile, es:Documents, ds:Signature, es:TimeStamp. (The AckEmail and Location attributes are not used any more.)

The sections of the present chapter define the structure of additional elements in an e-dossier. Explanation of symbols at the end of section titles:

3.1. es:DossierProfile

It may contain the data of the e-dossier. If there is a frame signature or frame timestamp on the e-dossier, they protect the integrity of the es:DossierProfile element as well. The es:DossierProfile has an OBJREF attribute referring to the Id attribute of the //es:Documents element. At the same time it has its own Id attribute.

3.1.1. es:Title

The title of the e-dossier of datatype string.

3.1.2. es:E-category

Defines whether the e-dossier is a simple e-dossier or a proof of receipt. Its type is string. Its value is one of the following:

3.1.3. es:CreationDate

Date of creation of an e-dossier.

3.1.4. es:Metadata (?)

It may contain the Dublin Core metadata of the e-dossier. It may contain additional metadata as well (with constraints defined for them in the schema). The necessary namespaces must be defined here in the es:Metadata element.

The es:Metadata element has a mandatory attribute „Custom” with value „true”.

3.2. es:Documents

The es:Documents contains the documents of the e-dossier and their metadata, XadES signatures, timestamps, countersigns, etc. The only attribute of es:Documents is Id.

3.2.1. es:Document (*)

An es:Document element belongs to each document of the e-dossier . This element contains the document itself, the metadata of the document, the signatures on the document ( i.e. not the frame signatures ) , timestamps ( i.e. not the frame timestamps ) and different information pertaining to the signatures ( certificates, countersigns, etc. ).

3.2.1.1. es:DocumentProfile

It contains the profile of the document, i.e. its metadata ( e.g. title ), and the information needed to display the document.
No more supported, but earlier used elements are es:UsedDispApplication, es:SourceLocation and es:MimeChecked ( these are optional elements of the schema definition )..

The Id attribute contains the profile identifier of the document ( e.g. the signatures use it as a reference ) and has an OBJREF attribute to refer to the document (../ds:Object) (Requirements must be met both for the location of ds:Object and for the reference.)

3.2.1.1.1. es:Title

The title of the document (datatype: string).

3.2.1.1.2. es:E-category

Defines the category of the document in question. Its type is string. The allowed values are:

The use of this descriptor has become practically obsolete. At the present - in case of automatic input - it always gets the value "electronic data”.)
The categories electronic data, document and record originate from the Act on Electronic Signature, but this distinction has become obsolete by the 2004. modification of the Act.
The Hungarian denominations are no more in use, the schema contains them for compatibility with the earlier versions of the specification. The "electronic profile" and "electronic adatlap" values are also out of use, the schema contains them for compatibility with the earlier versions of the specification.

3.2.1.1.3. es:CreationDate

The date when the user inserted the document in the e-dossier.

3.2.1.1.4. es:Format

This element contains information on the format of the document. If the document is inserted in a compressed form, then this element contains the format before compression; otherwise it is identical to the contents of the xades132:DataObjectFormat element of the xades132:Signature element.

3.2.1.1.4.1. es:MIME-Type

This element contains the mime type of the document. The attributes are:

3.2.1.1.5. es:SourceSize

The size of the ../../ds:Object document source. The attribute sizeValue contains the size in bytes, the sizeUnit attribute value „B” means that the size is the number of bytes.

3.2.1.1.6. es:BaseTransform

This element describes the set of transformations performed on the inserted source document to create the base64 encoded document in ../../ds:Object. Each es:Transform child represents a single transformation. According to the present specification of the e-dossier three transformations may be present here, in the following order only:

3.2.1.1.6.1. es:Transform +

This element defines a transformation that has a mandatory attribute Algorithm. Its value is one of the three values of the above element.

3.2.1.1.7. es:RecipientCertificateList (?)

For encrypted documents the public keys of the encryption may be given here. Each child of this element lists an encryption certificate.

3.2.1.1.7.1. es:RecipientCertificate (+)

This element contains a base64 encoded certificate. The document in ../../../ds:Object can be decrypted by the private key of the certificate.

3.2.1.1.8. es:Metadata (?)

This element contains metadata, its content and structure are identical to that of the element //es:Dossier/es:DossierProfile/es:Metadata.

3.2.1.2. ds:Object

This element contains the inserted document in base64 encoding.

Note: According to e-dossier format the base64 encoding is obligatory even if the inserted document is a TXT or XML file.

3.2.1.3. ds:Signature (*)

This element (together with its descendents) contains a XAdES (default: XAdES v1.3.2.) digital signature, with structure described in XAdES and XMLDSIG specifications. The present specification doesn’t aim to review in detail the elements of ds:Signature, so the contents of ds:Signature will only be discussed to such an extent as it is necessary to handle the restrictions following from the e-dossier format. The e-dossier format doesn’t imply restrictions on the signature (so the signature may correspond to other ETSI TS 101 903 based specifications). The restrictions of the e-dossier format concern the way the signature is connected to other parts of the XML file, and to which parts it may be connected.

Notes:

3.2.1.3.1. ds:SignedInfo

This element describes which other elements the signature applies to, its structure is defined by the XMLDSIG specification. In e-dossier format the //es:Document/ds:Signature/ds:SignedInfo refers to the following elements:

3.2.1.3.2. ds:SignatureValue

The signature value according to XMLDSIG specification

3.2.1.3.3. ds:KeyInfo

This element contains information on the key pair used for the signature. Typically an X.509 certificate is present. Its structure is defined by the XMLDSIG specification.

3.2.1.3.4. ds:Object

A signed object containing the signature profile. It has an Id attribute.

3.2.1.3.4.1. es:SignatureProfile

This element details the signature profile. It contains the following attributes.

3.2.1.3.4.1.1. es:SignerName

The name of the signer, according to the Subject DN / common name field of the signers certificate. Its type is string.

3.2.1.3.4.1.2. es:SDPresented ?

This value can be true or false, depending whether according to the signature application the document to be signed was presented to the signer by a secure display application.

3.2.1.3.4.1.3. es:Type

This element describes the type of the signature. Its data type is string. Its value can be one of the following: The Hungarian denominations are no more in use, the schema contains them for compatibility with the earlier versions of the specification.

3.2.1.3.4.1.4. es:Generator

3.2.1.3.4.1.4.1. es:Program

The name and version number of the signature application. It has two mandatory attributes, both of text type. name defines the name, version is the version number.

Example:

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

3.2.1.3.4.1.4.2. es:Device

The name and type of the signature-creation device. name is a mandatory attribute, it contains the name of the device. type is optional. Both are of data typa string.

Example:

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

3.2.1.3.4.1.4.3. es:Comment ?

On signing the signer may add a comment (or a clause) to the signature, this comment can define the role of the signature. The comment is typically an attached document. The es:Comment element may have an attribute called Type, that gives the type of the comment. Its value is one of the following:

The second value in each row is the Hungarian equivalent of the first one.

3.2.1.3.4.1.4.3.1. es:Document ?

The comment as a document. It differs from the element /es:Dossier/es:Documents/es:Document in so much that there can not be signature or timestamp on it.

Note: This constraint is not present in the XML schema.

3.2.1.3.4.1.4.4. es:SigPolChecked ?

It can be given that the signature application has checked that the signature was created according to a specific signature policy. The value of the element is true or false, and it is optional.

3.2.1.3.4.1.4.5. es:CustomData (?)

The element may contain arbitrary metadata of the signature (for which the shema may have restrictions). The necessary namespaces should be defined here in the es:CustomData element.

3.2.1.3.5. ds:Object

Signed object containing the XAdES extensions.

3.2.1.3.5.1. xades132:QualifyingProperties

The structure and content of this element is defined by the XAdES specification.

3.2.1.3.5.1.1. xades132:SignedProperties

Signed elements according to XAdES.

3.2.1.3.5.1.2. xades132:UnsignedProperties

Not signed elements according to XAdES (e.g. the timestamp on the signature, etc).

3.2.1.4. es:TimeStamp (*)

This element contains a XAdES timestamp put on the es:Document parent element. Its type is xades:TimeStampType. The timestamp refers to the following elements:

Notes made for the ds:Signature element apply here as well.

3.3. ds:Signature (*)

The frame signatures on the dossier. Their structure is identical to that of the //es:Document/ds:Signature element, the only difference is that in case of a frame signature the references concern different locations. In the es:Dossier/ds:Signature/ds:SignedInfo element references may exist to the following elements:

Notes made for the ds:Signature element at the signatures on the document apply here as well.

3.4. es:TimeStamp (*)

This element contains a frame timestamp on the e-dossier. Its data type is xades:TimeStampType. The timestamp refers to the following elements:

Notes made for the ds:Signature element at the signatures on the document apply here as well.

4. XML schema of the default e-dossier

<?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>