<?xml version=“1.0” encoding=“UTF-8”?> <xsd:schema xmlns=“www.akomantoso.org/2.0” xmlns:xsd=“www.w3.org/2001/XMLSchema

        targetNamespace="http://www.akomantoso.org/2.0"
        elementFormDefault="qualified">

<xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="./xml.xsd"/>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================
        Akoma Ntoso main schema
        supported by Africa i-Parliaments, a project sponsored by United
        Nations Department of Economic and Social Affairs
        Copyright (C) Africa i-Parliaments

        Release 30/05/2012 - Akoma Ntoso 2.0
        Complete version.

        technical supervision Fabio Vitali - University of Bologna
        legal domain supervision Monica Palmirani - University of Bologna

        The present schema uses systematically XML design patterns as
        described in http://www.xmlpatterns.com/
        A few of them are explicitly mentioned, when their use or approach
        was not felt clear or natural enough. Others are just used without
        mentions.

        TERMS AND CONDITIONS

        This program is free software; you can redistribute it and/or
        modify it under the terms of the GNU General Public License
        as published by the Free Software Foundation; either version 2
        of the License, or (at your option) any later version.

        This program is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
        GNU General Public License for more details.

        You should have received a copy of the GNU General Public License
        along with this program; if not, write to the Free Software
        Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        Main element groups

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:group name="ANhier">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>ANhier</name>
            <comment>The group ANhier lists the elements that belong to the Akoma Ntoso legislative hierarchy
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="clause"/>
        <xsd:element ref="section"/>
        <xsd:element ref="part"/>
        <xsd:element ref="paragraph"/>
        <xsd:element ref="chapter"/>
        <xsd:element ref="title"/>
        <xsd:element ref="article"/>
        <xsd:element ref="book"/>
        <xsd:element ref="tome"/>
        <xsd:element ref="division"/>
        <xsd:element ref="list"/>
        <xsd:element ref="point"/>
        <xsd:element ref="indent"/>
        <xsd:element ref="alinea"/>
        <xsd:element ref="subsection"/>
        <xsd:element ref="subpart"/>
        <xsd:element ref="subparagraph"/>
        <xsd:element ref="subchapter"/>
        <xsd:element ref="subtitle"/>
        <xsd:element ref="subclause"/>
        <xsd:element ref="sublist"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="ANcontainers">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>ANcontainers</name>
            <comment>The group ANcontainers lists the elements that are containers and are specific to the Akoma
                Ntoso debate vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="speech"/>
        <xsd:element ref="question"/>
        <xsd:element ref="answer"/>
        <xsd:element ref="other"/>
        <xsd:element ref="scene"/>
        <xsd:element ref="narrative"/>
        <xsd:element ref="summary"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="basicContainers">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>basicContainers</name>
            <comment>The group basicContainers lists the elements that are containers and are specific to vocabulary
                of preambles, prefaces, conclusions and coverPages
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="formula"/>
        <xsd:element ref="container"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="preambleContainers">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>preambleContainers</name>
            <comment>The group preambleContainers lists the elements that are containers and are specific to the
                Akoma Ntoso preamble vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="recitals"/>
        <xsd:element ref="citations"/>
        <xsd:element ref="formula"/>
        <xsd:element ref="container"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="prefaceContainers">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>prefaceContainers</name>
            <comment>The group prefaceContainers lists the elements that are containers and are specific to the
                Akoma Ntoso preface vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="longTitle"/>
        <xsd:element ref="formula"/>
        <xsd:element ref="container"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="ANblock">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>ANblock</name>
            <comment>The group ANblock lists the elements that are blocks and are specific to the Akoma Ntoso
                vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="blockList"/>
        <xsd:element ref="toc"/>
        <xsd:element ref="tblock"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="ANinline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>ANinline</name>
            <comment>The group ANinline lists the elements that are inline and are specific to the Akoma Ntoso
                vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="ref"/>
        <xsd:element ref="mref"/>
        <xsd:element ref="rref"/>
        <xsd:element ref="mod"/>
        <xsd:element ref="mmod"/>
        <xsd:element ref="rmod"/>
        <xsd:element ref="remark"/>
        <xsd:element ref="recordedTime"/>
        <xsd:element ref="vote"/>
        <xsd:element ref="outcome"/>
        <xsd:element ref="ins"/>
        <xsd:element ref="del"/>
        <xsd:element ref="omissis"/>
        <xsd:element ref="extractText"/>
        <xsd:element ref="extractStructure"/>
        <xsd:element ref="placeholder"/>
        <xsd:element ref="fillIn"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="ANtitleInline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>ANtitleInline</name>
            <comment>The group ANtitleInline lists the elements that are inline, are specific to the Akoma Ntoso
                vocabulary, and should only be used within the title element
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="docType"/>
        <xsd:element ref="docTitle"/>
        <xsd:element ref="docNumber"/>
        <xsd:element ref="docProponent"/>
        <xsd:element ref="docDate"/>
        <xsd:element ref="legislature"/>
        <xsd:element ref="session"/>
        <xsd:element ref="shortTitle"/>
        <xsd:element ref="docPurpose"/>
        <xsd:element ref="docCommittee"/>
        <xsd:element ref="docIntroducer"/>
        <xsd:element ref="docStage"/>
        <xsd:element ref="docStatus"/>
        <xsd:element ref="docJurisdiction"/>
        <xsd:element ref="docketNumber"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="ANheaderInline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>ANheaderInline</name>
            <comment>The group ANheaderInline lists the elements that are inline, are specific to the Akoma Ntoso
                vocabulary, and should only be used within the header element
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="courtType"/>
        <xsd:element ref="neutralCitation"/>
        <xsd:element ref="party"/>
        <xsd:element ref="judge"/>
        <xsd:element ref="lawyer"/>
        <xsd:element ref="signature"/>
        <xsd:element ref="opinion"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="ANsemanticInline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>ANsemanticInline</name>
            <comment>The group ANsemanticInline lists additional elements that are inline, and are specific to the
                Akoma Ntoso vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="date"/>
        <xsd:element ref="person"/>
        <xsd:element ref="organization"/>
        <xsd:element ref="concept"/>
        <xsd:element ref="object"/>
        <xsd:element ref="event"/>
        <xsd:element ref="location"/>
        <xsd:element ref="process"/>
        <xsd:element ref="role"/>
        <xsd:element ref="term"/>
        <xsd:element ref="quantity"/>
        <xsd:element ref="def"/>
        <xsd:element ref="entity"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="ANmarker">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>ANmarker</name>
            <comment>The group ANmarker lists the elements that are markers and are specific to the Akoma Ntoso
                vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="noteRef"/>
        <xsd:element ref="eol"/>
        <xsd:element ref="eop"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="ANpopup">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>ANpopup</name>
            <comment>The group ANpopup lists the elements that are popups and are specific to the Akoma Ntoso
                vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="authorialNote"/>
    </xsd:sequence>
</xsd:group>

<xsd:group name="HTMLcontainers">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>HTMLcontainers</name>
            <comment>The group HTMLcontainers lists the elements that are containers and were inherited from the
                HTML vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="div"/>
    </xsd:sequence>
</xsd:group>

<xsd:group name="HTMLblock">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>HTMLblock</name>
            <comment>The group HTMLblock lists the elements that are blocks and were inherited from the HTML
                vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="ul"/>
        <xsd:element ref="ol"/>
        <xsd:element ref="table"/>
        <xsd:element ref="p"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="HTMLinline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>HTMLinline</name>
            <comment>The group HTMLinline lists the elements that are inline and were inherited from the HTML
                vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="b"/>
        <xsd:element ref="i"/>
        <xsd:element ref="a"/>
        <xsd:element ref="u"/>
        <xsd:element ref="sub"/>
        <xsd:element ref="sup"/>
        <xsd:element ref="span"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="HTMLmarker">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>HTMLmarker</name>
            <comment>The group HTMLmarker lists the elements that are marker and were inherited from the HTML
                vocabulary
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="img"/>
    </xsd:sequence>
</xsd:group>

<xsd:group name="judgementBlock">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>judgementBlock</name>
            <comment>The group judgementBlock lists the structures that should be found in a judgement</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="introduction"/>
        <xsd:element ref="background"/>
        <xsd:element ref="motivation"/>
        <xsd:element ref="decision"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="amendmentBlock">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>amendmentBlock</name>
            <comment>The group amendmentBlock lists the structures that should be found in an amendment</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="amendmentHeading"/>
        <xsd:element ref="amendmentContent"/>
        <xsd:element ref="amendmentReference"/>
        <xsd:element ref="amendmentJustification"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="amendmentInline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>amendmentInline</name>
            <comment>The group amendmentInline lists the inline elements that should be found in the preface of an
                amendment
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="affectedDocument"/>
        <xsd:element ref="relatedDocument"/>
        <xsd:element ref="change"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="speechSection">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>speechSection</name>
            <comment>The group speechSection lists the structures that should contain speeches</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="administrationOfOath"/>
        <xsd:element ref="rollCall"/>
        <xsd:element ref="prayers"/>
        <xsd:element ref="oralStatements"/>
        <xsd:element ref="writtenStatements"/>
        <xsd:element ref="personalStatements"/>
        <xsd:element ref="ministerialStatements"/>
        <xsd:element ref="resolutions"/>
        <xsd:element ref="nationalInterest"/>
        <xsd:element ref="declarationOfVote"/>
        <xsd:element ref="communication"/>
        <xsd:element ref="petitions"/>
        <xsd:element ref="papers"/>
        <xsd:element ref="noticesOfMotion"/>
        <xsd:element ref="questions"/>
        <xsd:element ref="address"/>
        <xsd:element ref="proceduralMotions"/>
        <xsd:element ref="pointOfOrder"/>
        <xsd:element ref="adjournment"/>
        <xsd:element ref="debateSection"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="hierElements">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>hierElements</name>
            <comment>The group hierElements lists all the elements that are hierarchical</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:group ref="ANhier"/>
        <xsd:element ref="hcontainer"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="containerElements">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>containerElements</name>
            <comment>The group containerElements lists all the elements that are containers</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:group ref="speechSection"/>
        <xsd:group ref="HTMLcontainers"/>
        <xsd:element ref="container"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="blockElements">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>blockElements</name>
            <comment>The group blockElements lists all the elements that are blocks</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:group ref="ANblock"/>
        <xsd:group ref="HTMLblock"/>
        <xsd:element ref="foreign"/>
        <xsd:element ref="block"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="inlineElements">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>inlineElements</name>
            <comment>The group inlineElements lists all the elements that are inline</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:group ref="ANinline"/>
        <xsd:group ref="HTMLinline"/>
        <xsd:group ref="ANtitleInline"/>
        <xsd:group ref="ANsemanticInline"/>
        <xsd:group ref="ANheaderInline"/>
        <xsd:group ref="amendmentInline"/>
        <xsd:element ref="inline"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="popupElements">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>popupElements</name>
            <comment>The group popupElements lists all the elements that are popups</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:group ref="ANpopup"/>
        <xsd:element ref="popup"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="markerElements">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>markerElements</name>
            <comment>The group markerElements lists all the elements that are markers</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:group ref="ANmarker"/>
        <xsd:group ref="HTMLmarker"/>
        <xsd:element ref="marker"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="inlineCM">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>inlineCM</name>
            <comment>The group inlineCM is the content model of blocks and inlines, and is composed of all the
                inlines and all the markers
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:group ref="inlineElements"/>
        <xsd:group ref="markerElements"/>
        <xsd:group ref="popupElements"/>
    </xsd:choice>
</xsd:group>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        Attribute groups

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:attributeGroup name="alt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>alt</name>
            <comment>The attribute alt is used to specify, when the element contains an alternative version of some
                content, the id of the main element which this element is an alternative copy of
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="alternativeTo" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="name">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>name</name>
            <comment>The attribute name is used to give a name to all generic elements</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="name" type="xsd:string" use="required"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="number">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>number</name>
            <comment>The attribute number is used to specify a number in the publication of the document</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="number" type="xsd:string"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="source">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>source</name>
            <comment>The attribute source links to the agent (person, organization) providing the specific
                annotation or markup
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="source" type="xsd:anyURI" use="required"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="date">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>date</name>
            <comment>The attribute date is used to give a normalized value for a date according to the XSD syntax
                YYYY-MM-DD
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="date" type="xsd:date" use="required"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="time">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>time</name>
            <comment>The attribute time is used to give a normalized value for a time according to the XSD syntax
                HH:MM:SS
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="time" type="xsd:dateTime" use="required"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="link">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>link</name>
            <comment>The attribute href is used to specify an internal or external destination for a reference, a
                citation, an access to the ontology or a hypertext link. In elements using this attribute definition
                the href attribute is required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="href" type="xsd:anyURI" use="required"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="linkopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>linkopt</name>
            <comment>The attribute href is used to specify an internal or external destination for a reference, a
                citation, an access to the ontology or a hypertext link. In elements using this attribute definition
                the href attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="href" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="value">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>value</name>
            <comment>The attribute value is used to specify a value for metadata elements. In elements using this
                attribute definition the value attribute is required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="value" type="xsd:string" use="required"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="optvalue">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>optvalue</name>
            <comment>The attribute value is used to specify a value for metadata elements. In elements using this
                attribute definition the value attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="value" type="xsd:string"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="speechAtts">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>speechAtts</name>
            <comment>The attributes in speechAtts are used in speeches to identify actors and roles of speeches. In
                particular, attribute 'by' identifies the speaker, optional attribute 'as' identifies the role under
                which the speaker is speaking, optional attribute startTime specifies the absolute date and time
                where the individual speech item started, optional attribute endTime specifies the absolute date and
                time where the individual speech item ended, and optional attribute to identifies the addressee of
                the speech. All of them are references to person or organization elements in the references section
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="by" type="xsd:anyURI" use="required"/>
    <xsd:attribute name="as" type="xsd:anyURI"/>
    <xsd:attribute name="startTime" type="xsd:dateTime"/>
    <xsd:attribute name="endTime" type="xsd:dateTime"/>
    <xsd:attribute name="to" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="voteAtts">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>voteAtts</name>
            <comment>The attributes in voteAtts are used in votes to identify actors and choices in votes. In
                particular, attribute 'by' identifies the voter, optional attribute 'as' identifies the role under
                which the voter is acting, optional attribute 'choice' specifies the voe that was casted.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="by" type="xsd:anyURI" use="required"/>
    <xsd:attribute name="as" type="xsd:anyURI"/>
    <xsd:attribute name="choice" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="show">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>show</name>
            <comment>These attributes are used in metadata to propose visible representations of the metadata
                itself. Both a full visualization (attribute showAs) and an abbreviated one (attribute shortForm)
                can be specified
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="showAs" type="xsd:string" use="required"/>
    <xsd:attribute name="shortForm" type="xsd:string"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="src">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>src</name>
            <comment>These attributes are used in manifestation-level references to specify external
                manifestation-level resources to be loaded in place. The src attribute holds the manifestation-level
                URI of the resource, whule the alt attribute holds the text to be displayed in case the loading of
                the external resource is not possible for any reason.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="src" type="xsd:anyURI" use="required"/>
    <xsd:attribute name="alt" type="xsd:string"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="period">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>period</name>
            <comment>The period attribute is used in versioned content and metadata elements to indicate a time
                interval in which they were in force, in efficacy, or in any other type of interval as specified in
                the corresponding temporalGroup.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="period" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="enactment">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>enactment</name>
            <comment>These attributes are those already defined in attribute list "period", plus the attribute
                status, that allows to specify the status of the piece of text it wraps.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="period"/>
    <xsd:attribute name="status" type="statusType"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="notes">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>notes</name>
            <comment>These attributes are used by notes, both authorial and editorial</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="marker" type="xsd:string"/>
    <xsd:attribute name="placement" type="placementType"/>
    <xsd:attribute name="placementBase" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="modifiers">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>modifiers</name>
            <comment>These attributes are used in the analysis to allow manifestation editors to specify whether the
                analysis is complete and/or ignored in the text
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="exclusion" type="xsd:boolean"/>
    <xsd:attribute name="incomplete" type="xsd:boolean"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="role">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>role</name>
            <comment>The attribute role is used to identify the role of an individual mentioned in the text. It is a
                reference to a TLCRole element in the references section
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="as" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="actor">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>actor</name>
            <comment>The attribute actor is used to identify the actor of a step of a workflow of the document. It
                is a reference to a TLCPerson or TLCOrganization element in the references section
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="actor" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="outcome">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>outcome</name>
            <comment>The attribute outcome is used to identify the outcome of a step in a workflow. It is a
                reference to a TLCConcept element in the references section
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="outcome" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="cellattrs">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>cellattrs</name>
            <comment>These attributes are used to specify that table cells span more than one row or one column,
                exactly as in HTML
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="rowspan" type="xsd:integer" default="1"/>
    <xsd:attribute name="colspan" type="xsd:integer" default="1"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="HTMLattrs">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>HTMLattrs</name>
            <comment>These attributes are used to specify class, style and title of the element, exactly as in
                HTML
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="class" type="xsd:string"/>
    <xsd:attribute name="style" type="xsd:string"/>
    <xsd:attribute name="title" type="xsd:string"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="core">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>core</name>
            <comment>This attribute list are used to specify the fact that any attribute can be specified for this
                element if it belongs to a different namespace.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="idreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>idreq</name>
            <comment>These attributes identify the element in an absolute manner. In elements using this attribute
                definition the id attribute is required. The evolvingId is used to mark the identifier that the
                structure would have in a static situation, and is usually identical to id.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="id" type="xsd:ID" use="required"/>
    <xsd:attribute name="evolvingId" type="xsd:NMTOKEN"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="idopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>idopt</name>
            <comment>These attributes identify the element in an absolute manner. In elements using this attribute
                definition the id attribute is optional. The evolvingId is used to mark the identifier that the
                structure would have in a static situation, and is usually identical to id.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="id" type="xsd:ID"/>
    <xsd:attribute name="evolvingId" type="xsd:NMTOKEN"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="refersreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>refersreq</name>
            <comment>This attribute creates a connection between the element and an element of the Akoma Ntoso
                ontology to which it refers. In elements using this attribute definition the refersTo attribute is
                required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="refersTo" type="xsd:anyURI" use="required"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="refers">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>refers</name>
            <comment>This attribute creates a connection between the element and an element of the Akoma Ntoso
                ontology to which it refers. In elements using this attribute definition the refersTo attribute is
                optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="refersTo" type="xsd:anyURI"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="xmllang">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>xmllang</name>
            <comment>This attribute specifies the human language in which the content of the element is expressed.
                Values are taken from the RFC 4646. xml:lang is a reserved attribute of XML, and cannot be used for
                any other purpose than this one.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute ref="xml:lang"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="corereq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>corereq</name>
            <comment>This is the list of the core attributes that all elements in the content part of the document
                must have. In elements using this attribute definition the refersTo attribute is optional but the id
                attribute is required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="HTMLattrs"/>
    <xsd:attributeGroup ref="enactment"/>
    <xsd:attributeGroup ref="idreq"/>
    <xsd:attributeGroup ref="refers"/>
    <xsd:attributeGroup ref="xmllang"/>
    <xsd:attributeGroup ref="alt"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="corereqreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>corereqreq</name>
            <comment>This is the list of the core attributes that all elements in the content part of the document
                must have. In elements using this attribute definition both the refersTo attribute and the id
                attribute are required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="HTMLattrs"/>
    <xsd:attributeGroup ref="enactment"/>
    <xsd:attributeGroup ref="idreq"/>
    <xsd:attributeGroup ref="refersreq"/>
    <xsd:attributeGroup ref="xmllang"/>
    <xsd:attributeGroup ref="alt"/>
</xsd:attributeGroup>

<xsd:attributeGroup name="coreopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>coreopt</name>
            <comment>This is the list of the core attributes that all elements in the content part of the document
                must have. In elements using this attribute definition both the refersTo attribute and the id
                attribute are optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="HTMLattrs"/>
    <xsd:attributeGroup ref="enactment"/>
    <xsd:attributeGroup ref="idopt"/>
    <xsd:attributeGroup ref="refers"/>
    <xsd:attributeGroup ref="xmllang"/>
    <xsd:attributeGroup ref="alt"/>
</xsd:attributeGroup>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        Simple types (data values)

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:simpleType name="language">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>language</name>
            <comment>This attribute specifies the human language in which the document the element refers to is
                expressed. Values are taken from the RFC 4646.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string"/>
</xsd:simpleType>

<xsd:simpleType name="yesNoType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>yesNoType</name>
            <comment>This is the list of allowed values for a yes/no attribute</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="yes"/>
        <xsd:enumeration value="no"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="versionType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>versionType</name>
            <comment>This is the list of allowed values for the contains attribute</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="originalVersion"/>
        <xsd:enumeration value="singleVersion"/>
        <xsd:enumeration value="multipleVersions"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="placementType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>placementType</name>
            <comment>This is the list of allowed values for the placement attribute of notes</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="side"/>
        <xsd:enumeration value="left"/>
        <xsd:enumeration value="right"/>
        <xsd:enumeration value="bottom"/>
        <xsd:enumeration value="inline"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="eventType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>eventType</name>
            <comment>This is the list of allowed values for the type attribute of the event and action elements
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="generation"/>
        <xsd:enumeration value="amendment"/>
        <xsd:enumeration value="repeal"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="statusType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>statusType</name>
            <comment>This is the list of allowed values for the status attribute</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="omissis"/>
        <xsd:enumeration value="repealed"/>
        <xsd:enumeration value="suspended"/>
        <xsd:enumeration value="editorial"/>
        <xsd:enumeration value="ignore"/>
        <xsd:enumeration value="translated"/>
        <xsd:enumeration value="edited"/>
        <xsd:enumeration value="verbatim"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="remarkType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>remarkType</name>
            <comment>This is the list of allowed values for the type attribute of the remark element</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="sceneDescription"/>
        <xsd:enumeration value="phenomenon"/>
        <xsd:enumeration value="caption"/>
        <xsd:enumeration value="translation"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="timeType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>timeType</name>
            <comment>This is the list of allowed values for the type attribute of the recordedTime element</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="startEvent"/>
        <xsd:enumeration value="endEvent"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="opinionType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>opinionType</name>
            <comment>This is the list of allowed values for the type attribute of the opinion element</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="dissenting"/>
        <xsd:enumeration value="agreeing"/>
        <xsd:enumeration value="null"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="resultType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>resultType</name>
            <comment>This is the list of allowed values for the type attribute of the result element</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="deny"/>
        <xsd:enumeration value="dismiss"/>
        <xsd:enumeration value="uphold"/>
        <xsd:enumeration value="revert"/>
        <xsd:enumeration value="replaceOrder"/>
        <xsd:enumeration value="remit"/>
        <xsd:enumeration value="decide"/>
        <xsd:enumeration value="approve"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="posType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>posType</name>
            <comment>This is the list of possible positions of the text being analyzed by the element in the
                analysis section
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="start"/>
        <xsd:enumeration value="before"/>
        <xsd:enumeration value="inside"/>
        <xsd:enumeration value="after"/>
        <xsd:enumeration value="end"/>
        <xsd:enumeration value="unspecified"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        Complex types (markup structures)

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:complexType name="basehierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>basehierarchy</name>
            <comment>The complex type basehierarchy is not used by any element, but is derived by other types to
                contain the basic structure of hierarchical elements
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="num" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="heading" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="subheading" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>hierarchy</name>
            <comment>The complex type hierarchy is used by most or all the hierarchical elements of act-like
                documents.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexContent>
        <xsd:extension base="basehierarchy">
            <xsd:choice>
                <xsd:sequence>
                    <xsd:element ref="intro" minOccurs="0" maxOccurs="1"/>
                    <xsd:choice minOccurs="1" maxOccurs="unbounded">
                        <xsd:element ref="componentRef"/>
                        <xsd:group ref="hierElements"/>
                    </xsd:choice>
                    <xsd:element ref="wrap" minOccurs="0" maxOccurs="1"/>
                </xsd:sequence>
                <xsd:element ref="content"/>
            </xsd:choice>
            <xsd:attributeGroup ref="corereq"/>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>althierarchy</name>
            <comment>The complex type althierarchy is used by most or all the hierarchical elements of documents
                that are not act-like.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexContent>
        <xsd:extension base="basehierarchy">
            <xsd:choice minOccurs="0" maxOccurs="unbounded">
                <xsd:group ref="containerElements"/>
                <xsd:element ref="componentRef"/>
                <xsd:group ref="ANcontainers"/>
                <xsd:group ref="blockElements"/>
            </xsd:choice>
            <xsd:attributeGroup ref="corereq"/>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="blocksreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>blocksreq</name>
            <comment>the complex type blocksreq defines the content model and attributes shared by all containers.
                Here the id attribute is required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="blockElements"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="corereq"/>
</xsd:complexType>

<xsd:complexType name="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>blocksopt</name>
            <comment>the complex type blocksopt defines the content model and attributes shared by all containers.
                Here the id attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="blockElements"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:complexType name="inline" mixed="true">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>inline</name>
            <comment>the complex type inline defines the content model and attributes shared by all blocks and
                inlines. Here the id attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="0" maxOccurs="unbounded">
        <xsd:group ref="inlineCM"/>
    </xsd:choice>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:complexType name="inlinereq" mixed="true">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>inlinereq</name>
            <comment>the complex type inlinereq defines the content model and attributes shared by all blocks and
                inlines. Here the id attribute is required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="0" maxOccurs="unbounded">
        <xsd:group ref="inlineCM"/>
    </xsd:choice>
    <xsd:attributeGroup ref="corereq"/>
</xsd:complexType>

<xsd:complexType name="inlinereqreq" mixed="true">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>inlinereqreq</name>
            <comment>the complex type inlinereq defines the content model and attributes shared by all blocks and
                inlines. Here the id attribute is required and also the refersTo is required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="0" maxOccurs="unbounded">
        <xsd:group ref="inlineCM"/>
    </xsd:choice>
    <xsd:attributeGroup ref="corereqreq"/>
</xsd:complexType>

<xsd:complexType name="markerreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>markerreq</name>
            <comment>the complex type markerreq defines the content model and attributes shared by all marker
                elements. Here the id attribute is required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="corereq"/>
</xsd:complexType>

<xsd:complexType name="markeropt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>markeropt</name>
            <comment>the complex type markeropt defines the content model and attributes shared by all marker
                elements. Here the id attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:complexType name="metareq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>metareq</name>
            <comment>the complex type metareq defines the content model and attributes shared by all metadata
                elements. Here the id attribute is required
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idreq"/>
</xsd:complexType>

<xsd:complexType name="metaopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>metaopt</name>
            <comment>the complex type metaopt defines the content model and attributes shared by all metadata
                elements. Here the id attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idopt"/>
</xsd:complexType>

<xsd:complexType name="maincontent">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>maincontent</name>
            <comment>the complex type maincontent is used by container elements that can contain basically any other
                Akoma Ntoso structure
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:element ref="componentRef"/>
        <xsd:group ref="hierElements"/>
        <xsd:group ref="blockElements"/>
        <xsd:group ref="containerElements"/>
    </xsd:choice>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:complexType name="speechType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>speechType</name>
            <comment>the complex type speechType defines the content model and attributes shared by all speech
                elements. Here the id attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexContent>
        <xsd:extension base="basehierarchy">
            <xsd:sequence>
                <xsd:element ref="from" minOccurs="0" maxOccurs="1"/>
                <xsd:sequence minOccurs="1" maxOccurs="unbounded">
                    <xsd:group ref="blockElements"/>
                </xsd:sequence>
            </xsd:sequence>
            <xsd:attributeGroup ref="coreopt"/>
            <xsd:attributeGroup ref="speechAtts"/>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="itemType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>itemType</name>
            <comment>The complex type itemType is similar to a hierarchical element, but is isolated and does not
                belong to a full hierarchy.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexContent>
        <xsd:extension base="basehierarchy">
            <xsd:sequence minOccurs="1" maxOccurs="unbounded">
                <xsd:group ref="blockElements"/>
            </xsd:sequence>
            <xsd:attributeGroup ref="corereq"/>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>referenceType</name>
            <comment>the complex type referenceType defines the empty content model and the list of attributes for
                metadata elements in the references section
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idreq"/>
    <xsd:attributeGroup ref="link"/>
    <xsd:attributeGroup ref="show"/>
</xsd:complexType>

<xsd:complexType name="srcType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>srcType</name>
            <comment>the complex type srcType defines the empty content model and the list of attributes for
                manifestation-level references to external resources
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idopt"/>
    <xsd:attributeGroup ref="src"/>
    <xsd:attributeGroup ref="show"/>
</xsd:complexType>

<xsd:complexType name="anyOtherType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>anyOtherType</name>
            <comment>the complex type anyOtherType defines an open content model for elements that may use elements
                from other namespaces.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:choice>
    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idopt"/>
    <xsd:attributeGroup ref="linkopt"/>
</xsd:complexType>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        Root element
        Comment: One generic root element contains all document elements
        Pattern: Universal Root
        Reference: http://www.xmlpatterns.com/UniversalRootMain.shtml

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:group name="documentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>documentType</name>
            <comment>the type documentType lists all the document types that are managed by Akoma Ntoso</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="amendmentList"/>
        <xsd:element ref="officialGazette"/>
        <xsd:element ref="documentCollection"/>
        <xsd:element ref="act"/>
        <xsd:element ref="bill"/>
        <xsd:element ref="debateReport"/>
        <xsd:element ref="debate"/>
        <xsd:element ref="amendment"/>
        <xsd:element ref="judgement"/>
        <xsd:element ref="doc"/>
    </xsd:choice>
</xsd:group>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        Document elements
        Comment: All document elements share just two content models
        Pattern: Consistent Element Set
        Reference: http://www.xmlpatterns.com/ConsistentElementSetMain.shtml

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:complexType name="akomaNtosoType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>akomaNtosoType</name>
            <comment>the complex type akomaNtosoType is the type for the root element in Akoma Ntoso.</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:sequence>
            <xsd:group ref="documentType"/>
        </xsd:sequence>
        <xsd:element ref="components" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
</xsd:complexType>

<xsd:element name="akomaNtoso" type="akomaNtosoType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element (root)</type>
            <name>akomaNtoso</name>
            <comment>the element akomaNtoso is the root element of all document types in Akoma Ntoso. It follows the
                pattern Universal Root (http://www.xmlpatterns.com/UniversalRootMain.shtml)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="openStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>openStructure</name>
            <comment>the type openStructure specifies the overall content model of all the document types that do
                not have a specific and peculiar structure
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="meta"/>
        <xsd:element ref="coverPage" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="preface" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="preamble" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="mainBody"/>
        <xsd:element ref="conclusions" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="attachments" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="name"/>
    <xsd:attribute name="contains" type="versionType" default="originalVersion"/>
</xsd:complexType>

<xsd:element name="doc" type="openStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>doc</name>
            <comment>Element doc is used for describing the structure and content of any other document that is not
                included in the list of document explicitly managed by Akoma Ntoso
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="mainBody" type="maincontent">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>mainBody</name>
            <comment>the element mainBody is the container of the main part of all other document types</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="collectionStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>collectionStructure</name>
            <comment>the type collectionStructure specifies the overall content model of the document types that are
                collections of other documents
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="meta"/>
        <xsd:element ref="coverPage" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="preface" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="collectionBody"/>
        <xsd:element ref="conclusions" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="attachments" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
    <xsd:attribute name="contains" type="versionType" default="originalVersion"/>
</xsd:complexType>

<xsd:element name="amendmentList" type="collectionStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>amendmentList</name>
            <comment>Element amendmentList is used for describing the structure and content of a collection of
                amendments
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="officialGazette" type="collectionStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>officialGazette</name>
            <comment>Element officialGazette is used for describing the structure and content of an issue of an
                official gazette
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="documentCollection">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>documentCollection</name>
            <comment>Element documentCollection is used for describing the structure and content of a collection of
                other documents chosen and combined for any reason whatsoever
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="collectionStructure">
                <xsd:attributeGroup ref="name"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="interstitial" type="blocksreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>interstitial</name>
            <comment>the element interstitial is used as a container of text elements and blocks that are placed for
                any reason between individual documents in a collection of documents
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="collectionBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>collectionBodyType</name>
            <comment>the type collectionBodyType specifies a content model of a container of a list of other
                documents (e.g, acts, bills, amendments, etc.) possibly interspersed with interstitial elements with
                content that does not form an individual document
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="documentType"/>
        <xsd:element ref="componentRef"/>
        <xsd:element ref="interstitial" minOccurs="0" maxOccurs="1"/>
    </xsd:choice>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:element name="collectionBody" type="collectionBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>collectionBody</name>
            <comment>the element collectionBody is the container of a list of other documents (e.g, acts, bills,
                amendments, etc.) possibly interspersed with interstitial elements with content that does not form
                an individual document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="fragmentStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>fragmentStructure</name>
            <comment>the type fragmentStructure specifies the overall content model of the document type that is a
                fragment of another document
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="meta"/>
        <xsd:element ref="fragmentBody"/>
    </xsd:sequence>
    <xsd:attribute name="includedIn" type="xsd:anyURI" use="required"/>
</xsd:complexType>

<xsd:element name="fragment" type="fragmentStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>fragment</name>
            <comment>Element fragment is used for describing the structure and content of an issue of an official
                gazette
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="fragmentBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>fragmentBodyType</name>
            <comment>the type fragmentBodyType specifies a content model of a container of a fragment of another
                document
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:group ref="hierElements"/>
        <xsd:group ref="containerElements"/>
    </xsd:choice>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:element name="fragmentBody" type="fragmentBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>fragmentBody</name>
            <comment>the element fragmentBody is the container of a fragment of another document</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="hierarchicalStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>hierarchicalStructure</name>
            <comment>the type hierarchicalStructure specifies the overall content model of the document types that
                are hierarchical in nature, especially acts and bills
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="meta"/>
        <xsd:element ref="coverPage" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="preface" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="preamble" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="body"/>
        <xsd:element ref="conclusions" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="attachments" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
    <xsd:attribute name="contains" type="versionType" default="originalVersion"/>
</xsd:complexType>

<xsd:element name="act" type="hierarchicalStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>act</name>
            <comment>Element act is used for describing the structure and content of an act</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="bill" type="hierarchicalStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>bill</name>
            <comment>Element bill is used for describing the structure and content of a bill</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="bodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>bodyType</name>
            <comment>the type bodyType specifies a content model of the main hierarchy of a hierarchical document
                (e.g, an act or a bill)
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:element ref="componentRef"/>
        <xsd:group ref="hierElements"/>
    </xsd:choice>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:element name="body" type="bodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>body</name>
            <comment>the element body is the container of the main hierarchy of a hierarchical document (e.g, an act
                or a bill)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="debateStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>debateStructure</name>
            <comment>the type debateStructure specifies the overall content model of the document types that
                describe debates
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="meta"/>
        <xsd:element ref="coverPage" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="preface" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="debateBody"/>
        <xsd:element ref="conclusions" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="attachments" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
    <xsd:attribute name="contains" type="versionType" default="originalVersion"/>
</xsd:complexType>

<xsd:element name="debateReport" type="openStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>debateReport</name>
            <comment>Element debateReport is used for describing the structure and content of a report</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="debate" type="debateStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>debate</name>
            <comment>Element debate is used for describing the structure and content of a debate record</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="debateBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>debateBodyType</name>
            <comment>the type debateBodyType specifies a content model of the main hierarchy of a debate</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="speechSection"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:element name="debateBody" type="debateBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>debateBody</name>
            <comment>the element debateBody is the container of the main hierarchy of a debate</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="judgementStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>judgementStructure</name>
            <comment>the type judgementStructure specifies the overall content model of the document types that
                describe judgements
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="meta"/>
        <xsd:element ref="coverPage" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="header"/>
        <xsd:element ref="judgementBody"/>
        <xsd:element ref="conclusions" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="attachments" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
    <xsd:attribute name="contains" type="versionType" default="originalVersion"/>
</xsd:complexType>

<xsd:element name="judgement" type="judgementStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>judgement</name>
            <comment>Element judgement is used for describing the structure and content of a judgement</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="judgementBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>judgementBodyType</name>
            <comment>the type judgementBodyType specifies a content model of the main hierarchy of a judgement
                document
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="judgementBlock"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:element name="judgementBody" type="judgementBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>judgementBody</name>
            <comment>the element judgementBody is the container of the main hierarchy of a judgement document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="amendmentStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>amendmentStructure</name>
            <comment>the type amendmentStructure specifies the overall content model of the document types that
                describe amendments
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="meta"/>
        <xsd:element ref="coverPage" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="preface" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="amendmentBody"/>
        <xsd:element ref="conclusions" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="attachments" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
    <xsd:attribute name="contains" type="versionType" default="originalVersion"/>
</xsd:complexType>

<xsd:element name="amendment" type="amendmentStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>amendment</name>
            <comment>Element amendment is used for describing the structure and content of an amendment</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="amendmentBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>amendmentBodyType</name>
            <comment>the type amendmentBodyType specifies a content model of the main hierarchy of a amendment
                document
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="amendmentBlock"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:element name="amendmentBody" type="amendmentBodyType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>amendmentBody</name>
            <comment>the element amendmentBody is the container of the main hierarchy of a amendment document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="recitals">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="intro" minOccurs="0" maxOccurs="1"/>
            <xsd:element ref="recital" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="coreopt"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="recital" type="itemType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>recital</name>
            <comment>the element recital is the individual element of the preface that is called recital</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="citations">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="intro" minOccurs="0" maxOccurs="1"/>
            <xsd:element ref="citation" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="coreopt"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="citation" type="itemType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>citation</name>
            <comment>the element citation is the individual element of the preface that is called citation</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="longTitle" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>longTitle</name>
            <comment>the element longTitle is the section of the preface or preamble that is called long title
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="formula" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>formula</name>
            <comment>the element formula is a section of the preface or preamble that contains a formulaic
                expression that is systematically or frequently present in a preface or a preamble and has e precise
                legal meaning (e.g. an enacting formula). Use the refersTo attribute for the specification of the
                actual type of formula.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="basicopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>basicopt</name>
            <comment>the complex type basicopt defines the content model and attributes used by basic containers
                such as coverPage and conclusions. Here the id attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="blockElements"/>
        <xsd:group ref="basicContainers"/>
    </xsd:choice>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:element name="coverPage" type="basicopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>coverPage</name>
            <comment>the element coverPage is used as a container of the text that acts as a cover page</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="preambleopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>preambleopt</name>
            <comment>the complex type preambleopt defines the content model and attributes used by preambles. Here
                the id attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="blockElements"/>
        <xsd:group ref="preambleContainers"/>
    </xsd:choice>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:element name="preamble" type="preambleopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>preamble</name>
            <comment>the element preamble is used as a container of the text that opens the main body of the
                document as a preamble
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="prefaceopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>prefaceopt</name>
            <comment>the complex type prefaceopt defines the content model and attributes used by preface. Here the
                id attribute is optional
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="blockElements"/>
        <xsd:group ref="prefaceContainers"/>
    </xsd:choice>
    <xsd:attributeGroup ref="coreopt"/>
</xsd:complexType>

<xsd:element name="preface" type="prefaceopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>preface</name>
            <comment>the element preface is used as a container of all prefacing material (e.g. headers, formulas,
                etc.)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="conclusions" type="basicopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>conclusions</name>
            <comment>the element conclusion is used as a container of all concluding material (e.g. dates,
                signatures, formulas, etc.)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="header" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>header</name>
            <comment>the element header is used as a container of all prefacing material of judgements (e.g.
                headers, formulas, etc.)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="attachments">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="componentRef" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="coreopt"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="componentRef" type="srcType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>componentRef</name>
            <comment>the element componentRef is a manifestation-level reference to a separate resource that holds
                the content of the component of the document not physically placed at the position specified. Actual
                resources can either be external (e.g. in the package or even in a different position) or internal
                (within the components element)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        Elements for hierarchical documents

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:element name="clause" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>clause</name>
            <comment>this element is a hierarchical container called "clause" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="section" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>section</name>
            <comment>this element is a hierarchical container called "section" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="part" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>part</name>
            <comment>this element is a hierarchical container called "part" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="paragraph" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>paragraph</name>
            <comment>this element is a hierarchical container called "paragraph" either explicitly or due to the
                local tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="chapter" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>chapter</name>
            <comment>this element is a hierarchical container called "chapter" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="title" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>title</name>
            <comment>this element is a hierarchical container called "title" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="book" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>book</name>
            <comment>this element is a hierarchical container called "book" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="tome" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>tome</name>
            <comment>this element is a hierarchical container called "tome" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="article" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>article</name>
            <comment>this element is a hierarchical container called "article" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="division" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>division</name>
            <comment>this element is a hierarchical container called "division" either explicitly or due to the
                local tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="list" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>list</name>
            <comment>this element is a hierarchical container called "list" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="point" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>point</name>
            <comment>this element is a hierarchical container called "point" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="indent" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>indent</name>
            <comment>this element is a hierarchical container called "indent" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="alinea" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>alinea</name>
            <comment>this element is a hierarchical container called "alinea" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="subsection" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>subsection</name>
            <comment>this element is a hierarchical container called "subsection" either explicitly or due to the
                local tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="subpart" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>subpart</name>
            <comment>this element is a hierarchical container called "subpart" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="subparagraph" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>subparagraph</name>
            <comment>this element is a hierarchical container called "subparagraph" either explicitly or due to the
                local tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="subchapter" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>subchapter</name>
            <comment>this element is a hierarchical container called "subchapter" either explicitly or due to the
                local tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="subtitle" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>subtitle</name>
            <comment>this element is a hierarchical container called "subtitle" either explicitly or due to the
                local tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="subdivision" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>subdivision</name>
            <comment>this element is a hierarchical container called "subdivision" either explicitly or due to the
                local tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="subclause" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>subclause</name>
            <comment>this element is a hierarchical container called "subclause" either explicitly or due to the
                local tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="sublist" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>sublist</name>
            <comment>this element is a hierarchical container called "sublist" either explicitly or due to the local
                tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="transitional" type="hierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>transitional</name>
            <comment>this element is a hierarchical container called "transitional" either explicitly or due to the
                local tradition
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="content" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>content</name>
            <comment>the element content is the final container in a hierarchy, and is where the blocks of text of
                the content of the structure are finally specified
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="num" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>num</name>
            <comment>the element num is a heading element in a hierarchy that contains a number or any other ordered
                mechanism to identify the structure.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="heading" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>heading</name>
            <comment>the element heading is a heading element in a hierarchy that contains a title or any other
                textual content to describe the structure.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="subheading" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>subheading</name>
            <comment>the element subheading is a heading element in a hierarchy that contains a subtitle or any
                other textual content to further describe the structure.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="intro" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>intro</name>
            <comment>the element intro is a heading element in a hierarchy that contains paragraphs introducing one
                or more lower hierarchical elements.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="wrap" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>wrap</name>
            <comment>the element wrap is a concluding element in a hierarchy that contains paragraphs wrapping up
                the preceding lower hierarchical elements.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        Elements for debates documents

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:element name="administrationOfOath" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>administrationOfOath</name>
            <comment>this element is a structural container for parts of a debates that contain the administration
                of an oath
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="rollCall" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>rollCall</name>
            <comment>this element is a structural container for parts of a debates that contain a roll call of
                individuals
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="prayers" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>prayers</name>
            <comment>this element is a structural container for parts of a debates that contain prayers</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="oralStatements" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>oralStatements</name>
            <comment>this element is a structural container for parts of a debates that contain oral statements by
                participants
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="writtenStatements" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>writtenStatements</name>
            <comment>this element is a structural container for parts of a debates that contain written statements
                by participants
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="personalStatements" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>personalStatements</name>
            <comment>this element is a structural container for parts of a debates that contain written statements
                by participants
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="ministerialStatements" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>ministerialStatements</name>
            <comment>this element is a structural container for parts of a debates that contain written statements
                by participants
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="resolutions" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>resolutions</name>
            <comment>this element is a structural container for parts of a debates that contain resolutions
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="nationalInterest" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>nationalInterest</name>
            <comment>this element is a structural container for parts of a debates that contain resolutions
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="declarationOfVote" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>declarationOfVote</name>
            <comment>this element is a structural container for parts of a debates that are relevant to the
                declaration of votes
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="communication" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>communication</name>
            <comment>this element is a structural container for parts of a debates that contain communications from
                the house
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="petitions" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>petitions</name>
            <comment>this element is a structural container for parts of a debates that are relevant to petitions
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="papers" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>papers</name>
            <comment>this element is a structural container for parts of a debates that are relevant to the display
                of papers
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="noticesOfMotion" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>noticesOfMotion</name>
            <comment>this element is a structural container for parts of a debates that are relevant to the notices
                of motions
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="questions" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>questions</name>
            <comment>this element is a structural container for parts of a debates that are relevant to questions
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="address" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>address</name>
            <comment>this element is a structural container for parts of a debates that are relevant to addresses
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="proceduralMotions" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>proceduralMotions</name>
            <comment>this element is a structural container for parts of a debates that are relevant to procedural
                motions
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="pointOfOrder" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>pointOfOrder</name>
            <comment>this element is a structural container for parts of a debates that are relevant to points of
                order
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="adjournment" type="althierarchy">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>adjournment</name>
            <comment>this element is a structural container for parts of a debates that contain adjournment
                notices
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="debateSection">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>debateSection</name>
            <comment>this element is a generic structural container for all other parts of a debates that are not
                explicitly supported with a named element
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="althierarchy">
                <xsd:attributeGroup ref="name"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="speech" type="speechType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>speech</name>
            <comment>the element speech is a container of a single speech utterance in a debate. Dialogs between
                speakers need a speech element each
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="question" type="speechType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>question</name>
            <comment>the element question is a container of a single official question as proposed by an MP to a
                person holding an official position
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="answer" type="speechType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>answer</name>
            <comment>the element answer is a container of a single official answer to a question</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="other" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>other</name>
            <comment>the element other is a container of parts of a debate that are not speeches, nor scene comments
                (e.g., lists of papers, etc.)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="scene" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>scene</name>
            <comment>the element scene is a container of descriptions of the scene elements happening in a given
                moment during a debate (e.g., applauses)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="narrative" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>narrative</name>
            <comment>the element narrative is a block element in a debate to mark description in the third person of
                events taking place in the meeting, e.g. "Mr X. takes the Chair"
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="summary" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>summary</name>
            <comment>the element summary is a block element in a debate to mark summaries of speeches that are
                individually not interesting (e.g.: "Question put and agreed to")
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="from" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>from</name>
            <comment>the element from is a heading element in a debate that contains the name or role or a reference
                to the person doing the speech
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="vote">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>vote</name>
            <comment>the element vote is an inline that wraps either the name of the voter (when organized by
                choice) or the vote (when organized by name) in a voting report.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="voteAtts"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="outcome" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>outcome</name>
            <comment>the element outcome is an inline that wraps the outcome of a vote</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="introduction" type="maincontent">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>introduction</name>
            <comment>this element is a structural container for the section of a judgement containing introductory
                material
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="background" type="maincontent">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>background</name>
            <comment>this element is a structural container for the section of a judgement containing the
                background
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="motivation" type="maincontent">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>motivation</name>
            <comment>this element is a structural container for the section of a judgement containing the
                motivation
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="decision" type="maincontent">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>decision</name>
            <comment>this element is a structural container for the section of a judgement containing the decision
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="affectedDocument">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>affectedDocument</name>
            <comment>the element affectedDocument is an inline element within preamble to identify the document that
                this amendment affects
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="link"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="relatedDocument">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>relatedDocument</name>
            <comment>the element relatedDocument is an inline element to identify the document for which this
                document is a report of
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="link"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="change" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>change</name>
            <comment>the element change is an inline element that identifies the changes expressed in the two
                columns of an amendment document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="amendmentHeading" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>amendmentHeading</name>
            <comment>this element is a structural container for the section of an amendment containing the heading
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="amendmentContent" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>amendmentContent</name>
            <comment>this element is a structural container for the section of an amendment containing the actual
                amendment text
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="amendmentReference" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>amendmentReference</name>
            <comment>this element is a structural container for the section of an amendment containing the
                reference
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="amendmentJustification" type="blocksopt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>amendmentJustification</name>
            <comment>this element is a structural container for the section of an amendment containing the
                justification
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        AN block elements
        Comment: the only AN-specific block are the table of content (TOC),
        a structure containing toc items related to the various subparts of the
        main document, the list item and the titled block

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:element name="blockList">
    <xsd:annotation>
        <xsd:documentation>
            The element item is a container belonging to a list
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="listIntroduction" minOccurs="0" maxOccurs="1"/>
            <xsd:element ref="item" minOccurs="1" maxOccurs="unbounded"/>
            <xsd:element ref="listConclusion" minOccurs="0" maxOccurs="1"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="corereq"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="item" type="itemType"/>

<xsd:element name="listIntroduction" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>listIntroduction</name>
            <comment>the element listIntroduction is an optional element of list before any item of the list
                itself.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="listConclusion" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>listConclusion</name>
            <comment>the element listConclusion is an optional element of list after all items of the list itself.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="tblock" type="itemType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>tblock</name>
            <comment>The element tblock (titled block) is used to specify a container for blocks introduced by
                heading elements, similarly to a hierarchical structure
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="toc">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="tocItem" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
    </xsd:complexType>
</xsd:element>

<xsd:element name="tocItem">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>tocItem</name>
            <comment>the element tocItem is a component of the table of content and contains header information
                about sections or parts of the rest of the document
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="link"/>
                <xsd:attribute name="level" type="xsd:integer" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="docType" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docType</name>
            <comment>the element docType is an inline element within preface to identify the string used by the
                document for its own type
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docTitle" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docTitle</name>
            <comment>the element docTitle is an inline element within preface to identify the string used by the
                document for its own title
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docNumber" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docNumber</name>
            <comment>the element docNumber is an inline element within preface to identify the string used by the
                document for its own number
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docProponent" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docProponent</name>
            <comment>the element docProponent is an inline element within preface to identify the string used by the
                document for its proponent
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docDate">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docDate</name>
            <comment>the element docDate is an inline element within preface to identify the string used by the
                document for its own date(s). Documents with multiple dates may use multiple docDate elements.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="date"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="legislature">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>legislature</name>
            <comment>the element legislature is an inline element within preface to identify the string used by the
                document for the legislature relative to the document. Use #refersTo to a TLCEvent to refer to the
                event of the specific legislature.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="optvalue"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="session">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>session</name>
            <comment>the element session is an inline element within preface to identify the string used by the
                document for the session of the legislature relative to the document. Use #refersTo to a TLCEvent to
                refer to the event of the specific session.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="optvalue"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="shortTitle" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>shortTitle</name>
            <comment>the element shortTitle is an inline element within preface to identify the string used by the
                document for the short title of the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docPurpose" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docPurpose</name>
            <comment>the element docPurpose is an inline element within preface to identify the string used by the
                document detailing its own purpose
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docCommittee">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docCommittee</name>
            <comment>the element docCommittee is an inline element within preface to identify the string used by the
                document detailing the committee within which the document originated
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="optvalue"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="docIntroducer" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docIntroducer</name>
            <comment>the element docIntroducer is an inline element within preface to identify the string used by
                the document detailing the individual introducing of the document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docStage" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docStage</name>
            <comment>the element docStage is an inline element within preface to identify the string used by the
                document detailing the stage in which the document sits
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docStatus" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docStatus</name>
            <comment>the element docStatus is an inline element within preface to identify the string used by the
                document detailing the status of the document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docJurisdiction" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docJurisdiction</name>
            <comment>the element docJurisdiction is an inline element within preface to identify the string used by
                the document detailing the jurisdiction of the document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="docketNumber" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>docketNumber</name>
            <comment>the element docketNumber is an inline element within preface to identify the string used by the
                document for the number of the docket, case, file, etc which the document belongs to
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="courtType" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>courtType</name>
            <comment>the element courtType is an inline element within judgements to identify the string used by the
                document for the type of the court doing the judgement
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="neutralCitation" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>neutralCitation</name>
            <comment>the element neutralCitation is an inline element within judgements to identify the string
                declared by the document as being the neutral citation for the judgement
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="party">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>party</name>
            <comment>the element party is an inline element within judgements to identify where the document defines
                one of the parties
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inlinereqreq">
                <xsd:attributeGroup ref="role"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="judge">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>judge</name>
            <comment>the element judge is an inline element within judgements to identify where the document defines
                one of the judges, and his/her role
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inlinereqreq">
                <xsd:attributeGroup ref="role"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="lawyer">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>lawyer</name>
            <comment>the element lawyer is an inline element within judgements to identify where the document
                defines one of the lawyers, his/her role, which party it represents, and the other lawyer, if any,
                this lawyer received the power delegation of power in some role
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inlinereqreq">
                <xsd:attributeGroup ref="role"/>
                <xsd:attribute name="for" type="xsd:anyURI"/>
                <xsd:attribute name="empoweredBy" type="xsd:anyURI"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="opinion">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>opinion</name>
            <comment>the element opinion is an inline element within judgements to identify where the document
                defines the opinion of one of the judges
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attribute name="type" type="opinionType"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="signature" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>signature</name>
            <comment>the element signature is an inline element within conclusions to identify where the document
                defines one of the signatures
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="date">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>date</name>
            <comment>the element date is an inline element to identify a date expressed in the text and to propose a
                normalized representation in the date attribute.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="date"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="entity">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>entity</name>
            <comment>the element entity is a generic inline element to identify a text fragment introducing or
                referring to a concept in the ontology
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inlinereqreq">
                <xsd:attributeGroup ref="name"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="person">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>person</name>
            <comment>the element person is an inline element to identify a text fragment introducing or referring to
                a person in the ontology. Attribute as allows to specify a TLCrole the person is holding in the
                context of the document's mention
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inlinereqreq">
                <xsd:attribute name="as" type="xsd:anyURI"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="organization" type="inlinereqreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>organization</name>
            <comment>The element organization is an inline element to identify a text fragment introducing or
                referring to an organization in the ontology
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="concept" type="inlinereqreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>concept</name>
            <comment>The element concept is is an inline element to identify a text fragment introducing or
                referring to a concept in the ontology
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="object" type="inlinereqreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>object</name>
            <comment>The element object is is an inline element to identify a text fragment introducing or referring
                to an object in the ontology
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="event" type="inlinereqreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>event</name>
            <comment>The element event is an inline element to identify a text fragment introducing or referring to
                an event in the ontology
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="location" type="inlinereqreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>location</name>
            <comment>The element location is an inline element to identify a text fragment introducing or referring
                to a location in the ontology
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="process" type="inlinereqreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>process</name>
            <comment>The element process is an inline element to identify a text fragment introducing or referring
                to a process in the ontology
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="role" type="inlinereqreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>role</name>
            <comment>The element role is an inline element to identify a text fragment introducing or referring to a
                role in the ontology
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="term" type="inlinereqreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>term</name>
            <comment>The element term is an inline element to identify a text fragment introducing or referring to a
                term in the ontology
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="quantity">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>quantity</name>
            <comment>The element quantity is an inline element to identify a text fragment introducing or referring
                to a quantity. This could be a dimensionless number, or a number referring to a length, weight,
                duration, etc. or even a sum of money. The attribute normalized contains the value normalized in a
                number, if appropriate.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inlinereqreq">
                <xsd:attribute name="normalized" type="xsd:string"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="def" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>def</name>
            <comment>the element def is an inline element used for the definition of a term used in the rest of the
                document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="ref">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>ref</name>
            <comment>the element ref is an inline element containing a legal references (i.e. a reference to a
                document with legal status and for which an Akoma Ntoso URI exists)
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inlinereq">
                <xsd:attributeGroup ref="link"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="mref" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>mref</name>
            <comment>the element mref is an inline element containing multiple references (each in turn represented
                by a ref element)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="rref">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>rref</name>
            <comment>the element rref is an inline element containing a range of references between the URI
                specified in the href attribute and the one specified in the upTo attribute.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inlinereq">
                <xsd:attribute name="from" type="xsd:anyURI" use="required"/>
                <xsd:attribute name="upTo" type="xsd:anyURI" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:complexType name="modType" mixed="true">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>modType</name>
            <comment>the complex type modType specifies the content that is allowed within mod, mmod and rmod
                elements, i.e. it adds quotedText and quotedStructure to the normal list of inline elements
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="0" maxOccurs="unbounded">
        <xsd:group ref="inlineCM"/>
        <xsd:element ref="quotedText"/>
        <xsd:element ref="quotedStructure"/>
    </xsd:choice>
    <xsd:attributeGroup ref="corereq"/>
</xsd:complexType>

<xsd:element name="mod" type="modType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>mod</name>
            <comment>the element mod is an inline element containing the specification of a modification on another
                document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="mmod" type="modType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>mmod</name>
            <comment>the element mmod is an inline element containing multiple specifications of modifications on
                another document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="rmod">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>rmod</name>
            <comment>the element rmod is an inline element containing the specification of a range of modifications
                on another document
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="modType">
                <xsd:attribute name="from" type="xsd:anyURI" use="required"/>
                <xsd:attribute name="upTo" type="xsd:anyURI" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="quotedText">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>quotedText</name>
            <comment>the element quotedText is an inline element containing a small string that is used either as
                the text being replaced, or the replacement, or the positioning at which some modification should
                take place. Use attribute for when quotedText is used in a mmod or rmod to point to the id of the
                corresponding ref element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attribute name="for" type="xsd:anyURI"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="remark">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>remark</name>
            <comment>the element remark is an inline element for the specification of editorial remarks (e.g.,
                applauses, laughters, etc.) especially within debate records
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attribute name="type" type="remarkType"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="recordedTime">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>recordedTime</name>
            <comment>the element recordedTime is an inline element for the specification of an explicit mention of a
                time (e.g., in a debate)
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attribute name="type" type="timeType"/>
                <xsd:attributeGroup ref="time"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="ins" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>ins</name>
            <comment>the element ins is an inline element for the specification of editorial insertions</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="del" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>del</name>
            <comment>the element del is an inline element for the specification of editorial deletions</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="omissis" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>omissis</name>
            <comment>the element omissis is an inline element for the specification of a text that substitutes a
                textual omission (e.g., dots, spaces, the word "omissis", etc.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="placeholder">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>placeholder</name>
            <comment>the element placeholder is an inline element containing the text of a computable expression
                (e.g., '30 days after the publication of this act') that can be replaced editorially with an actual
                value
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attribute name="originalText" type="xsd:string"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="fillIn">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>fillIn</name>
            <comment>the element fillIn is an inline element shown as a dotted line or any other typoaphical
                characteristics to represent a fill-in element in a printed form, that is as ane example of an
                actual form. It is NOT meant to be used for form elements as in HTML, i.e. as a way to collect input
                from the reader and deliver to some server-side process.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attribute name="width" type="xsd:string"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="noteRef">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>noteRef</name>
            <comment>the element noteRef is a reference to a editorial note placed in the notes metadata section
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="markeropt">
                <xsd:attributeGroup ref="notes"/>
                <xsd:attributeGroup ref="link"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:complexType name="eolType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>eolType</name>
            <comment>the complex type eolType is shared by eol and eop elements as being able to specify a position
                within the next word in which the break can happen
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexContent>
        <xsd:extension base="markeropt">
            <xsd:attribute name="breakat" type="xsd:integer"/>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:element name="eol" type="eolType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>eol</name>
            <comment>the element eol (end of line) is a marker for where in the original text the line breaks. If
                the line breaks within a word, place the element BEFORE the word and place the number of characters
                before the break in the attribute breakat
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="eop" type="eolType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>eop</name>
            <comment>the element eop (end of page) is a marker for where in the original text the page breaks. Do
                NOT use a eol element, too. If the page breaks within a word, place the element BEFORE the word and
                place the number of characters before the break in the attribute breakat
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        AN popup elements
        Comment: AN-specific popup elements are connected to the
        identification of structural elements that contain full structures
        within a text content, but are not of textual nature.

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:complexType name="popupStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>popupStructure</name>
            <comment>the type popupStructure specifies the overall content model of the elements that are popups
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="hierElements"/>
        <xsd:group ref="blockElements"/>
        <xsd:element ref="intro"/>
        <xsd:element ref="wrap"/>
        <xsd:element ref="heading"/>
        <xsd:element ref="subheading"/>
        <xsd:element ref="content"/>
        <xsd:element ref="num"/>
        <xsd:group ref="containerElements"/>
        <xsd:group ref="ANcontainers"/>
        <xsd:element ref="recital"/>
        <xsd:element ref="citation"/>
        <xsd:element ref="componentRef"/>
    </xsd:choice>
    <xsd:attributeGroup ref="corereq"/>
</xsd:complexType>

<xsd:element name="quotedStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>quotedStructure</name>
            <comment>the element quotedStructure is a popup element containing a full structure proposed as an
                insertion or a replacement. Use attribute for when quotedStructure is used in a mmod or rmod to
                point to the id of the corresponding refelement.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="popupStructure">
                <xsd:attribute name="for" type="xsd:anyURI"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="extractText" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>extractText</name>
            <comment>the element extractText is an inline element containing a string used as an extract from
                another document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="extractStructure" type="popupStructure">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>extractStructure</name>
            <comment>the element extractStructure is a popup element containing a full structure used as an extract
                from another document or position.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="authorialNote">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>authorialNote</name>
            <comment>the element authorialNote is a popup element containing an authorial (non-editorial) note in
                the main flow of the text.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="popupStructure">
                <xsd:attributeGroup ref="notes"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="popup" type="popupStructure"/>

<xsd:element name="foreign" type="anyOtherType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>foreign</name>
            <comment>the element foreign is a generic container for elements not belonging to the Akoma Ntoso (e.g.,
                mathematical formulas). It is an inline element and thus can be placed in a block.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:annotation>
    <xsd:documentation>
        =====================================================================

        Generic elements
        Comment: All elements in this schema fall under one of five
        content models: hierarchical container, container, block, inline
        and mark. Besides named elements, the schema also provides for a
        generic element for each of them, that can be used for markup that
        fits the content models but can be specified by a precise name that
        is not used in this schema. The 'name' attribute must be used for
        naming the element.
        It is also a characteristic of this schema that all named elements
        are equivalent, and can be substituted to, the corresponding generic
        element with their name as the value of the name attribute. Thus, by
        definition, &lt;p&gt; = &lt;block name="p"&gt; , &lt;part&gt; = &lt;hcontainer name="part"&gt; ,
        &lt;act&gt; = &lt;container name="act"&gt; , etc.
        Pattern: Generic Document + Role Attribute
        Reference: http://www.xmlpatterns.com/GenericDocumentMain.shtml +
        http://www.xmlpatterns.com/RoleAttributeMain.shtml

        =====================================================================
    </xsd:documentation>
</xsd:annotation>

<xsd:element name="hcontainer">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>hcontainer</name>
            <comment>the element hcontainer is a generic element for a hierarchical container. It can be placed in a
                hierarchy instead of any of the other hierarchical containers. The attribute name is required and
                gives a name to the element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="hierarchy">
                <xsd:attributeGroup ref="name"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:complexType name="containerType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>containerType</name>
            <comment>the complex type containerType is the content model for the generic element for a container. It
                can be placed in a container instead of any of the other containers. The attribute name is required
                and gives a name to the element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="blockElements"/>
        <xsd:element ref="container"/>
    </xsd:choice>
    <xsd:attributeGroup ref="corereq"/>
    <xsd:attributeGroup ref="name"/>
</xsd:complexType>

<xsd:element name="container" type="containerType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>container</name>
            <comment>the element container is a generic element for a container.</comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="block">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>block</name>
            <comment>the element block is a generic element for a container. It can be placed in a container instead
                of any of the other blocks. The attribute name is required and gives a name to the element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="name"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>inline</name>
            <comment>the element inline is a generic element for an inline. It can be placed inside a block instead
                of any of the other inlines. The attribute name is required and gives a name to the element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="name"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="marker">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>marker</name>
            <comment>the element marker is a generic element for a marker. It can be placed in a block instead of
                any of the other markers. The attribute name is required and gives a name to the element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="markerreq">
                <xsd:attributeGroup ref="name"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="div" type="blocksreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>div</name>
            <comment>The element div is an HTML element, but is NOT used in Akoma Ntoso as in HTML. Instead of being
                used as a generic block, Akoma Ntoso uses div as a generic container (as in common practice)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="p" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>p</name>
            <comment>The element p is an HTML element and is used in Akoma Ntoso as in HTML, for the generic
                paragraph of text (a block)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="span" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>span</name>
            <comment>The element span is an HTML element and is used in Akoma Ntoso as in HTML, for the generic
                inline
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="br" type="markeropt">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>br</name>
            <comment>The element br is an HTML element and is used in Akoma Ntoso as in HTML, for the breaking of a
                line
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="b" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>b</name>
            <comment>The element b is an HTML element and is used in Akoma Ntoso as in HTML, for the bold style (an
                inline)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="i" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>i</name>
            <comment>The element i is an HTML element and is used in Akoma Ntoso as in HTML, for the italic style
                (an inline)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="u" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>u</name>
            <comment>The element u is an HTML element and is used in Akoma Ntoso as in HTML, for the underline style
                (an inline)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="sup" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>sup</name>
            <comment>The element sup is an HTML element and is used in Akoma Ntoso as in HTML, for the superscript
                style (an inline)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="sub" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>sub</name>
            <comment>The element sub is an HTML element and is used in Akoma Ntoso as in HTML, for the subscript
                style (an inline)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="a">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>a</name>
            <comment>The element a is an HTML element and is used in Akoma Ntoso as in HTML, for the generic link to
                a web resource (NOT to an Akoma Ntoso document: use ref for that). It is an inline.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:complexContent>
            <xsd:extension base="inline">
                <xsd:attributeGroup ref="link"/>
                <xsd:attribute name="target" type="xsd:string"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="img">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>img</name>
            <comment>The element img is an HTML element and is used in Akoma Ntoso as in HTML, for including an
                image. It is a marker.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="markeropt">
                <xsd:attributeGroup ref="src"/>
                <xsd:attribute name="width" type="xsd:integer"/>
                <xsd:attribute name="height" type="xsd:integer"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:complexType name="listItems">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>listItems</name>
            <comment>the complex type listItems specifies the content model of elements ul and ol, and specifies
                just a sequence of list items (elements li).
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="li" minOccurs="1" maxOccurs="unbounded"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="corereq"/>
</xsd:complexType>

<xsd:element name="ul" type="listItems">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>ul</name>
            <comment>The element ul is an HTML element and is used in Akoma Ntoso as in HTML, for an unordered list
                of list item (elements li)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="ol" type="listItems">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>ol</name>
            <comment>The element ol is an HTML element and is used in Akoma Ntoso as in HTML, for an ordered list of
                list item (elements li)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="li">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>li</name>
            <comment>TYPEElementNAMEliThe element li is an HTML element and is used in Akoma Ntoso as in HTML, for
                the generic list item (not a pattern)
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType mixed="true">
        <xsd:choice minOccurs="0" maxOccurs="unbounded">
            <xsd:group ref="inlineCM"/>
            <xsd:element ref="ul"/>
            <xsd:element ref="ol"/>
            <xsd:element ref="p"/>
        </xsd:choice>
        <xsd:attributeGroup ref="optvalue"/>
        <xsd:attributeGroup ref="coreopt"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="table">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="caption" minOccurs="0" maxOccurs="1"/>
            <xsd:element ref="tr" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="corereq"/>
        <xsd:attribute name="width" type="xsd:integer"/>
        <xsd:attribute name="border" type="xsd:integer"/>
        <xsd:attribute name="cellspacing" type="xsd:integer"/>
        <xsd:attribute name="cellpadding" type="xsd:integer"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="caption" type="inline">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>caption</name>
            <comment>The element caption is an HTML element and is used in Akoma Ntoso as in HTML, for the caption
                of a table (a block)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="tr">
    <xsd:complexType>
        <xsd:choice minOccurs="1" maxOccurs="unbounded">
            <xsd:element ref="th"/>
            <xsd:element ref="td"/>
        </xsd:choice>
        <xsd:attributeGroup ref="coreopt"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="th">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>th</name>
            <comment>The element th is an HTML element and is used in Akoma Ntoso as in HTML, for a header cell of a
                table
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="blocksopt">
                <xsd:attributeGroup ref="cellattrs"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="td">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>td</name>
            <comment>The element td is an HTML element and is used in Akoma Ntoso as in HTML, for a data cell of a
                table
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="blocksopt">
                <xsd:attributeGroup ref="cellattrs"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="meta">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="identification"/>
            <xsd:element ref="publication" minOccurs="0" maxOccurs="1"/>
            <xsd:element ref="classification" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="lifecycle" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="workflow" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="analysis" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="temporalData" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="references" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="notes" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="proprietary" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="presentation" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
    </xsd:complexType>
</xsd:element>

<xsd:element name="identification">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="FRBRWork"/>
            <xsd:element ref="FRBRExpression"/>
            <xsd:element ref="FRBRManifestation"/>
            <xsd:element ref="FRBRItem" minOccurs="0" maxOccurs="1"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="source"/>
    </xsd:complexType>
</xsd:element>

<xsd:complexType name="coreProperties">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>coreProperties</name>
            <comment>The complexType coreProperties lists the identifying properties available at any of the FRBR
                hierarchy levels.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="FRBRthis"/>
        <xsd:element ref="FRBRuri" minOccurs="1" maxOccurs="unbounded"/>
        <xsd:element ref="FRBRalias" minOccurs="0" maxOccurs="unbounded"/>
        <xsd:element ref="FRBRdate" minOccurs="1" maxOccurs="unbounded"/>
        <xsd:element ref="FRBRauthor" minOccurs="1" maxOccurs="unbounded"/>
        <xsd:element ref="componentInfo" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="preservation" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
</xsd:complexType>

<xsd:group name="workProperties">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>workProperties</name>
            <comment>The group workProperties lists the properties that are characteristics of the FRBR Work
                level.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="FRBRcountry"/>
        <xsd:element ref="FRBRsubtype" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="FRBRnumber" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="FRBRname" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
</xsd:group>

<xsd:group name="exprProperties">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>exprProperties</name>
            <comment>The group exprProperties lists the properties that are characteristics of the FRBR Expression
                level.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="FRBRlanguage" minOccurs="1" maxOccurs="unbounded"/>
        <xsd:element ref="FRBRtranslation" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
</xsd:group>

<xsd:group name="manifProperties">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>manifProperties</name>
            <comment>The group manifProperties lists the properties that are characteristics of the FRBR Expression
                level.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="FRBRformat" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
</xsd:group>

<xsd:element name="FRBRWork">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRWork</name>
            <comment>The element FRBRWork is the metadata container of identifying properties related to the Work
                level according to the FRBR hierarchy
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="coreProperties">
                <xsd:sequence>
                    <xsd:group ref="workProperties"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="FRBRExpression">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRExpression</name>
            <comment>The element FRBRExpression is the metadata container of identifying properties related to the
                Expression level according to the FRBR hierarchy
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="coreProperties">
                <xsd:sequence>
                    <xsd:group ref="exprProperties"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="FRBRManifestation">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRManifestation</name>
            <comment>The element FRBRManifestation is the metadata container of identifying properties related to
                the Manifestation level according to the FRBR hierarchy
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="coreProperties">
                <xsd:sequence>
                    <xsd:group ref="manifProperties"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="FRBRItem" type="coreProperties">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRItem</name>
            <comment>The element FRBRItem is the metadata container of identifying properties related to the Item
                level according to the FRBR hierarchy.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="valueType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>valueType</name>
            <comment>The type valueType specifies a value attribute to FRBR elements.</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexContent>
        <xsd:extension base="metaopt">
            <xsd:attributeGroup ref="value"/>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:element name="FRBRthis" type="valueType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRthis</name>
            <comment>The element FRBRthis is the metadata property containing the URI of the specific component of
                the document in the respective level of the FRBR hierarchy
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="FRBRuri" type="valueType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRuri</name>
            <comment>The element FRBRuri is the metadata property containing the URI of the whole document in the
                respective level of the FRBR hierarchy
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="FRBRalias" type="valueType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRalias</name>
            <comment>The element FRBRalias is the metadata property containing additional well-known names of the
                document in the respective level of the FRBR hierarchy
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="FRBRdate">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRdate</name>
            <comment>The element FRBRdate is the metadata property containing a relevant date of the document in the
                respective level of the FRBR hierarchy. Attribute name specifies which actual date is contained
                here.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="metaopt">
                <xsd:attributeGroup ref="date"/>
                <xsd:attributeGroup ref="name"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="FRBRauthor">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRauthor</name>
            <comment>The element FRBRauthor is the metadata property containing a relevant author of the document in
                the respective level of the FRBR hierarchy. Attribute as specifies the role of the author.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="metaopt">
                <xsd:attributeGroup ref="link"/>
                <xsd:attribute name="as" type="xsd:anyURI"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="FRBRlanguage">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRlanguage</name>
            <comment>The element FRBRlanguage is the metadata property containing a RFC4646 (three-letter code) of
                the main human language used in the content of this expression
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="metaopt">
                <xsd:attribute name="language" type="language" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="FRBRtranslation">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRtranslation</name>
            <comment>The element FRBRtranslation is the metadata property specifying the source of which this
                expression is a translation of.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="metaopt">
                <xsd:attributeGroup ref="link"/>
                <xsd:attribute name="fromLanguage" type="language" use="required"/>
                <xsd:attribute name="authoritative" type="yesNoType"/>
                <xsd:attribute name="pivot" type="language"/>
                <xsd:attribute name="by" type="xsd:anyURI" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="FRBRsubtype" type="valueType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRsubtype</name>
            <comment>The element FRBRsubtype is the metadata property containing a string for the specific subtype
                of the document to be used in the work-level URI of this document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="FRBRcountry" type="valueType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRcountry</name>
            <comment>The element FRBRcountry is the metadata property containing a ISO 3166-1 Alpha-2 code for the
                country or jurisdiction to be used in the work-level URI of this document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="FRBRnumber" type="valueType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRnumber</name>
            <comment>The element FRBRnumber is the metadata property containing a string or number for the number to
                be used in the work-level URI of this document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="FRBRname" type="valueType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRname</name>
            <comment>The element FRBRname is the metadata property containing a string for the title to be used in
                the work-level URI of this document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="FRBRformat" type="valueType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>FRBRformat</name>
            <comment>The element FRBRformat is the metadata property containing a string for the data format to be
                used in the manifestation-level URI of this document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="componentInfo">
    <xsd:complexType>
        <xsd:sequence minOccurs="0" maxOccurs="unbounded">
            <xsd:element ref="componentData"/>
        </xsd:sequence>
    </xsd:complexType>
</xsd:element>

<xsd:element name="componentData">
    <xsd:complexType>
        <xsd:sequence minOccurs="0" maxOccurs="unbounded">
            <xsd:element ref="componentData"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="core"/>
        <xsd:attributeGroup ref="idreq"/>
        <xsd:attributeGroup ref="name"/>
        <xsd:attributeGroup ref="link"/>
        <xsd:attributeGroup ref="show"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="preservation" type="anyOtherType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>preservation</name>
            <comment>The element preservation is the metadata property containing an arbitrary list of elements
                detailing the preservation actions taken for the document is the respective level of the FRBR
                hierarchy..
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="publication">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>publication</name>
            <comment>The element publication is the metadata container specifying a publication event for the FRBR
                expression of the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="metaopt">
                <xsd:attributeGroup ref="date"/>
                <xsd:attributeGroup ref="show"/>
                <xsd:attributeGroup ref="name"/>
                <xsd:attributeGroup ref="number"/>
                <xsd:attributeGroup ref="refers"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="classification">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="keyword" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="source"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="keyword">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>keyword</name>
            <comment>The element keyword is a metadata element specifying a keyword associated to the FRBR
                expression of the document. Attribute dictionary (required) specifies the thesaurus out of which the
                keyword has been taken.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="metaopt">
                <xsd:attributeGroup ref="value"/>
                <xsd:attributeGroup ref="show"/>
                <xsd:attribute name="dictionary" type="xsd:anyURI" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="lifecycle">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="eventRef" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="source"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="eventRef">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>eventRef</name>
            <comment>The element eventInfo is a metadata element specifying facts about an event that had an effect
                on the document. For each event, a date, a type and a document that generated the event must be
                referenced.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="anyOtherType">
                <xsd:attributeGroup ref="date"/>
                <xsd:attributeGroup ref="source"/>
                <xsd:attribute name="type" type="eventType"/>
                <xsd:attribute name="originatingExpression" type="yesNoType"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="workflow">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="step" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="source"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="step">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>step</name>
            <comment>The element step is a metadata element specifying facts about a workflow step occurred to the
                document. For each event, a date, a type, an actor (and the corresponding role) that generated the
                action must be referenced. The outcome, too, can be specified.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="anyOtherType">
                <xsd:attributeGroup ref="date"/>
                <xsd:attributeGroup ref="actor"/>
                <xsd:attributeGroup ref="role"/>
                <xsd:attributeGroup ref="outcome"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="analysis">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="activeModifications" minOccurs="0" maxOccurs="1"/>
            <xsd:element ref="passiveModifications" minOccurs="0" maxOccurs="1"/>
            <xsd:element ref="judicial" minOccurs="0" maxOccurs="1"/>
            <xsd:element ref="parliamentary" minOccurs="0" maxOccurs="1"/>
            <xsd:element ref="otherAnalysis" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="source"/>
    </xsd:complexType>
</xsd:element>

<xsd:complexType name="Amendments">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>Amendments</name>
            <comment>The complex type Amendments is a list of all the amendment elements that can be used on a
                document analysis
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:element ref="textualMod"/>
        <xsd:element ref="meaningMod"/>
        <xsd:element ref="scopeMod"/>
        <xsd:element ref="forceMod"/>
        <xsd:element ref="efficacyMod"/>
        <xsd:element ref="legalSystemMod"/>
    </xsd:choice>
</xsd:complexType>

<xsd:complexType name="modificationType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>modificationType</name>
            <comment>The complex type modificationType lists all the properties associated to modification
                elements.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="source" minOccurs="1" maxOccurs="unbounded"/>
        <xsd:element ref="destination" minOccurs="1" maxOccurs="unbounded"/>
        <xsd:element ref="force" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="efficacy" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="application" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="duration" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="condition" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idreq"/>
    <xsd:attributeGroup ref="enactment"/>
    <xsd:attributeGroup ref="modifiers"/>
    <xsd:attributeGroup ref="refers"/>
</xsd:complexType>

<xsd:simpleType name="TextualMods">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>TextualMods</name>
            <comment>The simple type TextualMods lists all the types of textual modifications as values for the type
                attribute of the textualMod element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="repeal"/>
        <xsd:enumeration value="substitution"/>
        <xsd:enumeration value="insertion"/>
        <xsd:enumeration value="replacement"/>
        <xsd:enumeration value="renumbering"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="MeaningMods">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>MeaningMods</name>
            <comment>The simple type MeaningMods lists all the types of modifications in meaning as values for the
                type attribute of the meaningMod element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="variation"/>
        <xsd:enumeration value="termModification"/>
        <xsd:enumeration value="authenticInterpretation"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="ScopeMods">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>ScopeMods</name>
            <comment>The simple type ScopeMods lists all the types of modifications in scope as values for the type
                attribute of the scopeMod element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="exceptionOfScope"/>
        <xsd:enumeration value="extensionOfScope"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="ForceMods">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>ForceMods</name>
            <comment>The simple type ForceMods lists all the types of modifications in force as values for the type
                attribute of the forceMod element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="entryIntoForce"/>
        <xsd:enumeration value="endOfEnactment"/>
        <xsd:enumeration value="postponementOfEntryIntoForce"/>
        <xsd:enumeration value="prorogationOfForce"/>
        <xsd:enumeration value="reEnactment"/>
        <xsd:enumeration value="uncostitutionality"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="EfficacyMods">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>EfficacyMods</name>
            <comment>The simple type EfficacyMods lists all the types of modifications in efficacy as values for the
                type attribute of the efficacyMod element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="entryIntoEfficacy"/>
        <xsd:enumeration value="endOfEfficacy"/>
        <xsd:enumeration value="inapplication"/>
        <xsd:enumeration value="retroactivity"/>
        <xsd:enumeration value="extraefficacy"/>
        <xsd:enumeration value="postponementOfEfficacy"/>
        <xsd:enumeration value="prorogationOfEfficacy"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:simpleType name="LegalSystemMods">
    <xsd:annotation>
        <xsd:documentation>
            <type>Simple</type>
            <name>LegalSystemMods</name>
            <comment>The simple type LegalSystemMods lists all the types of modifications in the legal system as
                values for the type attribute of the LegalSystemMod element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:restriction base="xsd:string">
        <xsd:enumeration value="staticReference"/>
        <xsd:enumeration value="implementation"/>
        <xsd:enumeration value="ratification"/>
        <xsd:enumeration value="application"/>
        <xsd:enumeration value="legislativeDelegation"/>
        <xsd:enumeration value="deregulation"/>
        <xsd:enumeration value="conversion"/>
        <xsd:enumeration value="expiration"/>
        <xsd:enumeration value="reiteration"/>
        <xsd:enumeration value="remaking"/>
        <xsd:enumeration value="republication"/>
        <xsd:enumeration value="coordination"/>
    </xsd:restriction>
</xsd:simpleType>

<xsd:element name="activeModifications" type="Amendments">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>activeModifications</name>
            <comment>The element activeModifications is a metadata container of the active modifications generated
                by the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="passiveModifications" type="Amendments">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>passiveModifications</name>
            <comment>The element passiveModifications is a metadata container of the passive modifications affecting
                the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="textualMod">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>textualMod</name>
            <comment>The element textualMod is a metadata element specifying an (active or passive) textual
                modification for the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="modificationType">
                <xsd:sequence>
                    <xsd:element ref="old" minOccurs="0" maxOccurs="1"/>
                    <xsd:element ref="new" minOccurs="0" maxOccurs="1"/>
                </xsd:sequence>
                <xsd:attribute name="type" type="TextualMods" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="meaningMod">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>meaningMod</name>
            <comment>The element meaningMod is a metadata element specifying an (active or passive) modification in
                meaning for the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="modificationType">
                <xsd:sequence>
                    <xsd:element ref="domain" minOccurs="0" maxOccurs="1"/>
                </xsd:sequence>
                <xsd:attribute name="type" type="MeaningMods" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="scopeMod">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>scopeMod</name>
            <comment>The element scopeMod is a metadata element specifying an (active or passive) modification in
                scope for the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="modificationType">
                <xsd:sequence>
                    <xsd:element ref="domain" minOccurs="0" maxOccurs="1"/>
                </xsd:sequence>
                <xsd:attribute name="type" type="ScopeMods" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="forceMod">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>forceMod</name>
            <comment>The element forceMod is a metadata element specifying an (active or passive) modification in
                force for the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="modificationType">
                <xsd:attribute name="type" type="ForceMods" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="efficacyMod">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>efficacyMod</name>
            <comment>The element efficacyMod is a metadata element specifying an (active or passive) modification in
                efficacy for the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="modificationType">
                <xsd:attribute name="type" type="EfficacyMods" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="legalSystemMod">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>legalSystemMod</name>
            <comment>The element legalSystemMod is a metadata element specifying an (active or passive) modification
                in the legal system for the document.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="modificationType">
                <xsd:attribute name="type" type="LegalSystemMods" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:complexType name="judicialArguments">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>judicialArguments</name>
            <comment>The complex type judicialArguments is a list of all the judicial analysis elements that can be
                used on the analysis of a judgement
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="result"/>
        <xsd:choice minOccurs="1" maxOccurs="unbounded">
            <xsd:element ref="supports"/>
            <xsd:element ref="isAnalogTo"/>
            <xsd:element ref="applies"/>
            <xsd:element ref="extends"/>
            <xsd:element ref="restricts"/>
            <xsd:element ref="derogates"/>
            <xsd:element ref="contrasts"/>
            <xsd:element ref="overrules"/>
            <xsd:element ref="dissentsFrom"/>
            <xsd:element ref="putsInQuestion"/>
            <xsd:element ref="distinguishes"/>
        </xsd:choice>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>judicialArgumentType</name>
            <comment>The complex type judicialArgumentType lists all the properties associated to judicial
                elements.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:sequence>
        <xsd:element ref="source" minOccurs="1" maxOccurs="unbounded"/>
        <xsd:element ref="destination" minOccurs="1" maxOccurs="unbounded"/>
        <xsd:element ref="condition" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idreq"/>
    <xsd:attributeGroup ref="enactment"/>
    <xsd:attributeGroup ref="modifiers"/>
    <xsd:attributeGroup ref="refers"/>
</xsd:complexType>

<xsd:element name="judicial" type="judicialArguments">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>judicial</name>
            <comment>The element judicial is a metadata container of the analysis of the judicial arguments of a
                judgement.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="result">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>result</name>
            <comment>The element result is a metadata element specifying the overall result of the judgement.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="anyOtherType">
                <xsd:attribute name="type" type="resultType" use="required"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="supports" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>supports</name>
            <comment>The element supports is a metadata element specifying a reference to a source supported by the
                argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="isAnalogTo" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>isAnalogTo</name>
            <comment>The element isAnalogTo is a metadata element specifying a reference to a source analog to the
                argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="applies" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>applies</name>
            <comment>The element applies is a metadata element specifying a reference to a source applyed by the
                argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="extends" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>extends</name>
            <comment>The element extends is a metadata element specifying a reference to a source extended by the
                argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="restricts" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>restricts</name>
            <comment>The element restricts is a metadata element specifying a reference to a source restricted by
                the argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="derogates" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>derogates</name>
            <comment>The element derogates is a metadata element specifying a reference to a source derogated by the
                argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="contrasts" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>contrasts</name>
            <comment>The element contrasts is a metadata element specifying a reference to a source contrasted by
                the argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="overrules" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>overrules</name>
            <comment>The element overrules is a metadata element specifying a reference to a source overruled by the
                argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="dissentsFrom" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>dissentsFrom</name>
            <comment>The element dissentsFrom is a metadata element specifying a reference to a source dissented
                from the argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="putsInQuestion" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>putsInQuestion</name>
            <comment>The element questions is a metadata element specifying a reference to a source questioned by
                the argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="distinguishes" type="judicialArgumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>distinguishes</name>
            <comment>The element distinguishes is a metadata element specifying a reference to a source being
                distinguished by the argument being described.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="parliamentaryAnalysis">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>parliamentaryAnalysis</name>
            <comment>The complex type parliamentaryAnalysis is a list of all the parliamentary analysis elements
                that can be used on the analysis of a debate
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:element ref="quorumVerification"/>
        <xsd:element ref="voting"/>
        <xsd:element ref="recount"/>
    </xsd:choice>
</xsd:complexType>

<xsd:element name="parliamentary" type="parliamentaryAnalysis">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>parliamentary</name>
            <comment>The element parliamentary is a metadata container of the analysis of the events of a debate.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="parliamentaryAnalysisType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>parliamentaryAnalysisType</name>
            <comment>The complex type parliamentaryAnalysisType lists all the properties associated to elements in
                the parliamentary analysis.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:element ref="quorum"/>
        <xsd:element ref="count"/>
    </xsd:choice>
    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idreq"/>
    <xsd:attributeGroup ref="outcome"/>
    <xsd:attributeGroup ref="refers"/>
    <xsd:attributeGroup ref="linkopt"/>
</xsd:complexType>

<xsd:element name="quorumVerification" type="parliamentaryAnalysisType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>quorumVerification</name>
            <comment>The element quorumVerification is a metadata container containing information about an event of
                quorum verification happened within a debate.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="voting" type="parliamentaryAnalysisType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>voting</name>
            <comment>The element voting is a metadata container containing information about an event of a vote
                happened within a debate.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="recount" type="parliamentaryAnalysisType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>recount</name>
            <comment>The element recount is a metadata container containing information about an event of a recount
                happened within a debate.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="countType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>countType</name>
            <comment>The complex type countType lists all the properties associated to elements of parliamentary
                count.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:choice>
    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idreq"/>
    <xsd:attributeGroup ref="value"/>
    <xsd:attributeGroup ref="refers"/>
    <xsd:attributeGroup ref="linkopt"/>
</xsd:complexType>

<xsd:element name="quorum" type="countType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>quorum</name>
            <comment>The element quorum is a metadata container containing the value of a quorum in a vote or a
                quorum verification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="count" type="countType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>count</name>
            <comment>The element count is a metadata container containing the value of a count in a vote or a quorum
                verification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="otherAnalysis">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>otherAnalysis</name>
            <comment>The element otherAnalysis is a metadata container of any additional metadata analysis element
                that does not belong to the specific categories provided before. Anything can be placed in this
                element..
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="anyOtherType">
                <xsd:attributeGroup ref="source"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:attributeGroup name="pos">
    <xsd:annotation>
        <xsd:documentation>
            <type>Attlist</type>
            <name>pos</name>
            <comment>The attribute pos is used to identify the specific position of the reference (e.g., in source
                or destination)with respect to the element being identified with the relative id.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attribute name="pos" type="posType"/>
</xsd:attributeGroup>

<xsd:complexType name="argumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>argumentType</name>
            <comment>the complex type argumentType defines the empty content model and the list of attributes for
                metadata elements in the analysis section
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idopt"/>
    <xsd:attributeGroup ref="link"/>
    <xsd:attributeGroup ref="pos"/>
    <xsd:attribute name="upTo" type="xsd:anyURI"/>
</xsd:complexType>

<xsd:complexType name="periodType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>periodType</name>
            <comment>the complex type periodType defines the empty content model and the list of attributes for
                metadata elements in the analysis section using periods
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:attributeGroup ref="core"/>
    <xsd:attributeGroup ref="idopt"/>
    <xsd:attributeGroup ref="period"/>
</xsd:complexType>

<xsd:element name="source" type="argumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>source</name>
            <comment>The element source is a metadata element specifying the URI of the source of the
                modification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="destination" type="argumentType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>destination</name>
            <comment>The element destination is a metadata element specifying the URI of the destination of the
                modification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="force" type="periodType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>force</name>
            <comment>The element force is a metadata element specifying the period of the force modification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="efficacy" type="periodType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>efficacy</name>
            <comment>The element efficacy is a metadata element specifying the period of the efficacy
                modification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="application" type="periodType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>application</name>
            <comment>The element efficacy is a metadata element specifying the period of the efficacy
                modification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="duration" type="periodType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>duration</name>
            <comment>The element duration is a metadata element specifying the period of the duration
                modification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="condition">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>condition</name>
            <comment>The element condition is a metadata element specifying an open set (non managed by Akoma Ntoso)
                of conditions on the modification
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="anyOtherType">
                <xsd:attribute name="frozen" type="xsd:boolean"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="old" type="anyOtherType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>old</name>
            <comment>The element old is a metadata element containing (in some non-managed form) the old text of the
                modification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="new" type="anyOtherType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>new</name>
            <comment>The element new is a metadata element containing (in some non-managed form) the new text of the
                modification.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="domain" type="anyOtherType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>domain</name>
            <comment>The element domain is a metadata element containing (in some non-managed form) the domain to
                which the modification applies.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="temporalData">
    <xsd:annotation>
        <xsd:documentation>
            The element temporalGroup contains a list of time Intervals that need to be applied together to an
            element of the document that is associated to time information. Each temporal group can contain any
            number of time interval associated via the refersTo to a different time-specific concept.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
        <xsd:sequence minOccurs="1" maxOccurs="unbounded">
            <xsd:element ref="temporalGroup"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="source"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="temporalGroup">
    <xsd:annotation>
        <xsd:documentation>
            The element timeInterval contains all the data needed to identify a specific time interval. It is built
            either with two dates or with a date and a duration (exactly two of the 'start', 'end' and 'duration'
            attributes can be specified). Values of the 'start' and 'end' attributes are NOT dates, but references
            to event elements in the corresponding metadata section. The refers attribute is a reference to a
            temporal concept belonging to the Akoma Ntoso ontology and specified in the references section
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element ref="timeInterval" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="core"/>
        <xsd:attributeGroup ref="idreq"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="timeInterval">

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="metaopt">
                <xsd:attributeGroup ref="refersreq"/>
                <xsd:attribute name="start" type="xsd:anyURI"/>
                <xsd:attribute name="end" type="xsd:anyURI"/>
                <xsd:attribute name="duration" type="xsd:duration"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:group name="docRefs">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>docRefs</name>
            <comment>The group docrefs is a list of types of legal references to documents.</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="original"/>
        <xsd:element ref="passiveRef"/>
        <xsd:element ref="activeRef"/>
        <xsd:element ref="jurisprudence"/>
        <xsd:element ref="hasAttachment"/>
        <xsd:element ref="attachmentOf"/>
    </xsd:choice>
</xsd:group>

<xsd:group name="TLCs">
    <xsd:annotation>
        <xsd:documentation>
            <type>Group</type>
            <name>TLCs</name>
            <comment>The group TLCs is a list of types of Top Level classes of the Akoma Ntoso ontology.</comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice>
        <xsd:element ref="TLCPerson"/>
        <xsd:element ref="TLCOrganization"/>
        <xsd:element ref="TLCConcept"/>
        <xsd:element ref="TLCObject"/>
        <xsd:element ref="TLCEvent"/>
        <xsd:element ref="TLCLocation"/>
        <xsd:element ref="TLCProcess"/>
        <xsd:element ref="TLCRole"/>
        <xsd:element ref="TLCTerm"/>
        <xsd:element ref="TLCReference"/>
    </xsd:choice>
</xsd:group>

<xsd:complexType name="refItems">
    <xsd:annotation>
        <xsd:documentation>
            <type>Complex</type>
            <name>refItems</name>
            <comment>The complex type refItems is a list of types of references used in the references section.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:choice minOccurs="1" maxOccurs="unbounded">
        <xsd:group ref="docRefs"/>
        <xsd:group ref="TLCs"/>
    </xsd:choice>
    <xsd:attributeGroup ref="source"/>
</xsd:complexType>

<xsd:element name="references" type="refItems">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>references</name>
            <comment>The element references is a metadata container of all the references to entities external to
                the document mentioned in the document. They include references to legal documents of any form,a s
                well as references to people, organizations, events, roles, concepts, and anything else is managed
                by the Akoma Ntoso ontology.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="original" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>original</name>
            <comment>The element original is a metadata reference to the Akoma Ntoso URI of the original version of
                this document (i.e., the first expression)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="passiveRef" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>passiveRef</name>
            <comment>The element passiveRef is a metadata reference to the Akoma Ntoso URI of a document providing
                modifications on this document (i.e., a passive references)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="activeRef" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>activeRef</name>
            <comment>The element activeRef is a metadata reference to the Akoma Ntoso URI of a document that is
                modified by this document (i.e., an active references)
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="jurisprudence" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>jurisprudence</name>
            <comment>The element jurisprudence is a metadata reference to the Akoma Ntoso URI of a document
                providing jurisprudence on this document
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="hasAttachment">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>hasAttachment</name>
            <comment>The element hasAttachment is a metadata reference to the Akoma Ntoso URI of an attachment of
                this document
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="referenceType">
                <xsd:attribute name="type" type="xsd:string"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="attachmentOf">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>attachmentOf</name>
            <comment>The element attachmentOf is a metadata reference to the Akoma Ntoso URI of a document of which
                this document is an attachment
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="referenceType">
                <xsd:attribute name="type" type="xsd:string"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="TLCPerson" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCPerson</name>
            <comment>The element TLCPerson is a metadata reference to the Akoma Ntoso URI of an ontology instance of
                the class Person
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="TLCOrganization" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCOrganization</name>
            <comment>The element TLCOrganization is a metadata reference to the Akoma Ntoso URI of an ontology
                instance of the class Organization
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="TLCConcept" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCConcept</name>
            <comment>The element TLCConcept is a metadata reference to the Akoma Ntoso URI of an ontology instance
                of the class Concept
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="TLCObject" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCObject</name>
            <comment>The element TLCObject is a metadata reference to the Akoma Ntoso URI of an ontology instance of
                the class Object
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="TLCEvent" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCEvent</name>
            <comment>The element TLCEvent is a metadata reference to the Akoma Ntoso URI of an ontology instance of
                the class Event
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="TLCLocation" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCLocation</name>
            <comment>The element TLCLocation is a metadata reference to the Akoma Ntoso URI of an ontology instance
                of the class Location
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="TLCProcess" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCProcess</name>
            <comment>The element TLCProcess is a metadata reference to the Akoma Ntoso URI of an ontology instance
                of the class Process
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="TLCRole" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCRole</name>
            <comment>The element TLCRole is a metadata reference to the Akoma Ntoso URI of an ontology instance of
                the class Role
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="TLCTerm" type="referenceType">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCTerm</name>
            <comment>The element TLCTerm is a metadata reference to the Akoma Ntoso URI of an ontology instance of
                the class Term
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="TLCReference">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>TLCReference</name>
            <comment>The element TLCreference is a generic metadata reference to the Akoma Ntoso URI of an ontology
                instance of a class specified through the name attribute
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="referenceType">
                <xsd:attributeGroup ref="name"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="notes">
    <xsd:complexType>
        <xsd:sequence minOccurs="1" maxOccurs="unbounded">
            <xsd:element ref="note"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="source"/>
    </xsd:complexType>
</xsd:element>

<xsd:element name="note" type="blocksreq">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>note</name>
            <comment>The element note is a metadata element containing the text of the footnote and endnote
                specified.
            </comment>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:element name="proprietary">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>proprietary</name>
            <comment>The element proprietary is a metadata container of any additional metadata property that does
                not belong to the Akoma Ntoso properties. Anything can be placed in this element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="anyOtherType">
                <xsd:attributeGroup ref="source"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="presentation">
    <xsd:annotation>
        <xsd:documentation>
            <type>Element</type>
            <name>presentation</name>
            <comment>The element presentation is a metadata container of any presentation specification for the
                visual rendering of Akoam Ntoso elements. Anything can be placed in this element.
            </comment>
        </xsd:documentation>
    </xsd:annotation>

    <xsd:complexType>
        <xsd:complexContent>
            <xsd:extension base="anyOtherType">
                <xsd:attributeGroup ref="source"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:element>

<xsd:element name="components">
    <xsd:complexType>
        <xsd:sequence minOccurs="1" maxOccurs="unbounded">
            <xsd:element ref="component"/>
        </xsd:sequence>
    </xsd:complexType>
</xsd:element>

<xsd:element name="component">
    <xsd:annotation>
        <xsd:documentation>
            =====================================================================

            End of Schema

            =====================================================================
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
        <xsd:sequence>
            <xsd:group ref="documentType"/>
        </xsd:sequence>
        <xsd:attributeGroup ref="core"/>
        <xsd:attributeGroup ref="idreq"/>
    </xsd:complexType>
</xsd:element>

</xsd:schema>