<?xml version="1.0"?>
<rng:grammar xmlns:rng="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<!--Schema generated 2006-01-30T20:23:55Z
Copyright 2005 TEI Consortium.
This 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 material 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 file; if not, write to the Free
	    Software Foundation, Inc., 59 Temple Place, Suite 330,
	    Boston, MA 02111-1307, USA.
To contact the TEI Consortium use the following addresses.
	    For general (non-technical) enquiries: 
		  target="mailto:info@tei-c.org"/>info@tei-c.orgFor membership enquiries: membership@tei-c.orgFor technical enquiries, particularly about the
		Guidelines, DTDs, schemas, or software available from
		the TEI-C: editors@tei-c.orgFor up to date information, consult the TEI web site at http://www.tei-c.org/P5-->
<!--Definitions from module corpus-->
<!--Set predeclared macros-->
<!--0. predeclared macros-->
<!--1. classes-->
<!--2. elements-->
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="activity">
    <element name="activity">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(activity) contains a brief informal description of what a participant in a
language interaction is doing other than speaking, if anything.</a:documentation>
      <ref name="activity.content"/>
      <ref name="activity.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="activity.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="activity.attributes">
    <ref name="att.global.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="affiliation">
    <element name="affiliation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(affiliation) contains an informal description of a person's present
or past affiliation with some
organization, for example an employer or sponsor.</a:documentation>
      <ref name="affiliation.content"/>
      <ref name="affiliation.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="affiliation.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="affiliation.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.datable.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="affiliation"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="birth">
    <element name="birth">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Birth details) contains information about a person's birth, such as its date
and place.</a:documentation>
      <ref name="birth.content"/>
      <ref name="birth.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="birth.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="birth.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.datable.attributes"/>
    <optional>
      <attribute name="date">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the date of birth in an ISO standard form (yyyy-mm-dd).</a:documentation>
        <ref name="data.temporal"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="birth"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="channel">
    <element name="channel">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(primary channel) describes the medium or channel by which a text is delivered or
experienced. For a written text, this might be print, manuscript, e-mail, etc.;
for a spoken one, radio, telephone, face-to-face, etc.</a:documentation>
      <ref name="channel.content"/>
      <ref name="channel.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="channel.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="channel.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" name="mode" a:defaultValue="x">
        <a:documentation>specifies the mode of this channel with respect to speech and
         writing.
   </a:documentation>
        <choice>
          <value>s</value>
          <a:documentation>(spoken
   ) </a:documentation>
          <value>w</value>
          <a:documentation>(written
   ) </a:documentation>
          <value>sw</value>
          <a:documentation>(spoken to be written (e.g. dictation)
   ) </a:documentation>
          <value>ws</value>
          <a:documentation>(written to be spoken (e.g. a script)
   ) </a:documentation>
          <value>m</value>
          <a:documentation>(mixed modes
   ) </a:documentation>
          <value>x</value>
          <a:documentation>(unknown or inapplicable
   ) </a:documentation>
        </choice>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="constitution">
    <element name="constitution">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the internal composition of a text or text sample,
for example
as fragmentary, complete, etc.</a:documentation>
      <ref name="constitution.content"/>
      <ref name="constitution.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="constitution.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="constitution.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" name="type" a:defaultValue="single">
        <a:documentation>specifies how the text was constituted.
   </a:documentation>
        <choice>
          <value>single</value>
          <a:documentation>(a single complete text
    ) </a:documentation>
          <value>composite</value>
          <a:documentation>(a text made by combining several smaller
             items, each individually complete
    ) </a:documentation>
          <value>frags</value>
          <a:documentation>(a text made by combining several smaller, not
             necessarily complete, items
    ) </a:documentation>
          <value>unknown</value>
          <a:documentation>(composition unknown or unspecified
   ) </a:documentation>
        </choice>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="death">
    <element name="death">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains information about a person's death, such as its date
and place.</a:documentation>
      <ref name="death.content"/>
      <ref name="death.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="death.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="death.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.datable.attributes"/>
    <optional>
      <attribute name="date">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the date of death in an ISO standard form (yyyy-mm-dd).</a:documentation>
        <ref name="data.temporal"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="death"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="derivation">
    <element name="derivation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the nature and extent of originality of this text.</a:documentation>
      <ref name="derivation.content"/>
      <ref name="derivation.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="derivation.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="derivation.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the derivation of the text.
   </a:documentation>
        <ref name="data.enumerated"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="domain">
    <element name="domain">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Domain of use) describes the most important social context in which the text was
realized or for which it is intended, for example private vs. public,
education, religion, etc.</a:documentation>
      <ref name="domain.content"/>
      <ref name="domain.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="domain.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="domain.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the domain of use.
   </a:documentation>
        <ref name="data.enumerated"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="education">
    <element name="education">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a description of the
educational experience of a person.</a:documentation>
      <ref name="education.content"/>
      <ref name="education.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="education.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="education.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.datable.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="education"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="factuality">
    <element name="factuality">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the extent to which the text may be regarded as
imaginative or non-imaginative, that is, as describing a fictional
or a non-fictional world. </a:documentation>
      <ref name="factuality.content"/>
      <ref name="factuality.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="factuality.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="factuality.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the factuality of the text.
   </a:documentation>
        <choice>
          <value>fiction</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(the text is to be regarded as entirely imaginative
  ) </a:documentation>
          <value>fact</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(the text is to be regarded as entirely informative or factual
  ) </a:documentation>
          <value>mixed</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(the text contains a mixture of fact and fiction
  ) </a:documentation>
          <value>inapplicable</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(the fiction/fact distinction is not regarded
    as helpful or appropriate to this text
   ) </a:documentation>
        </choice>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="firstLang">
    <element name="firstLang">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(First language) specifies the first language of a participant.</a:documentation>
      <ref name="firstLang.content"/>
      <ref name="firstLang.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="firstLang.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="firstLang.attributes">
    <ref name="att.global.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="firstLang"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="interaction">
    <element name="interaction">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the extant, cardinality and nature of any interaction
among those producing and experiencing the text, for example in the
form of response or interjection, commentary etc.</a:documentation>
      <ref name="interaction.content"/>
      <ref name="interaction.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="interaction.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="interaction.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the degree of interaction between
  active and passive participants in the text. </a:documentation>
        <choice>
          <value>none</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(no interaction of any kind, e.g. a monologue ) </a:documentation>
          <value>partial</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(some degree of interaction, e.g. a monologue with set responses ) </a:documentation>
          <value>complete</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(complete interaction, e.g. a face to face conversation ) </a:documentation>
          <value>inapplicable</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(this parameter is inappropriate or inapplicable in this case ) </a:documentation>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="active">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the number of active participants
   (or addressors) producing parts of the text. </a:documentation>
        <ref name="data.enumerated"/>
      </attribute>
    </optional>
    <optional>
      <attribute name="passive">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the number of passive participants
   (or addressees) to whom a text is directed
   or in whose presence it is created or performed.
   </a:documentation>
        <ref name="data.enumerated"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="langKnown">
    <element name="langKnown">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(linguistic competence) contains an informal description of a person's competence in
different languages, dialects, etc.</a:documentation>
      <ref name="langKnown.content"/>
      <ref name="langKnown.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="langKnown.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="langKnown.attributes">
    <ref name="att.global.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="langKnown"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="listPerson">
    <element name="listPerson">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a list of descriptions, each of which provides information about an identifiable individual, for
example the participants in a language interaction, or the people referred
to in a historical source. </a:documentation>
      <ref name="listPerson.content"/>
      <ref name="listPerson.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="listPerson.content">
    <choice xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:oneOrMore>
        <rng:ref name="model.pLike"/>
      </rng:oneOrMore>
      <rng:group>
        <rng:oneOrMore>
          <rng:choice>
            <rng:ref name="person"/>
            <rng:ref name="personGrp"/>
          </rng:choice>
        </rng:oneOrMore>
        <rng:optional>
          <rng:ref name="particLinks"/>
        </rng:optional>
      </rng:group>
    </choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="listPerson.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.declarable.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.profileDescPart" combine="choice">
    <ref name="listPerson"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="locale">
    <element name="locale">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(locale) contains a brief informal description of the nature of a
place for example a room, a restaurant, a park bench etc.</a:documentation>
      <ref name="locale.content"/>
      <ref name="locale.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="locale.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="locale.attributes">
    <ref name="att.global.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="nationality">
    <element name="nationality">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an informal description of a person's present
or past nationality or citizenship.</a:documentation>
      <ref name="nationality.content"/>
      <ref name="nationality.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="nationality.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="nationality.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.datable.attributes"/>
    <optional>
      <attribute name="reg">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a regularized form of the country name using a
	name or	code from ISO 3166</a:documentation>
        <ref name="data.code"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="nationality"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="occupation">
    <element name="occupation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains an informal description of a person's trade,
profession or occupation.</a:documentation>
      <ref name="occupation.content"/>
      <ref name="occupation.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="occupation.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="occupation.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="scheme">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the classification system or taxonomy in use by supplying
the identifier of a taxonomy element elsewhere in the header.</a:documentation>
        <ref name="data.pointer"/>
      </attribute>
    </optional>
    <optional>
      <attribute name="code">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies an occupation code defined within the
classification system or taxonomy defined by the scheme
attribute.</a:documentation>
        <ref name="data.pointer"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="occupation"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="particDesc">
    <element name="particDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(participation description) describes the identifiable speakers, voices, or other participants
in a linguistic interaction. </a:documentation>
      <ref name="particDesc.content"/>
      <ref name="particDesc.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="particDesc.content">
    <choice xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:oneOrMore>
        <rng:ref name="model.pLike"/>
      </rng:oneOrMore>
      <rng:group>
        <rng:oneOrMore>
          <rng:choice>
            <rng:ref name="listPerson"/>
            <rng:ref name="personGrp"/>
          </rng:choice>
        </rng:oneOrMore>
        <rng:optional>
          <rng:ref name="particLinks"/>
        </rng:optional>
      </rng:group>
    </choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="particDesc.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.declarable.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.profileDescPart" combine="choice">
    <ref name="particDesc"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="particLinks">
    <element name="particLinks">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(participant relationships) describes the relationships or social links existing between
participants in a linguistic interaction. </a:documentation>
      <ref name="particLinks.content"/>
      <ref name="particLinks.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="particLinks.content">
    <choice xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:oneOrMore>
        <rng:ref name="model.pLike"/>
      </rng:oneOrMore>
      <rng:oneOrMore>
        <rng:ref name="relation"/>
      </rng:oneOrMore>
    </choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="particLinks.attributes">
    <ref name="att.global.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="person">
    <element name="person">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">provides information about an identifiable individual, for
example a participant in a language interaction, or a person referred
to in a historical source.</a:documentation>
      <ref name="person.content"/>
      <ref name="person.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="person.content">
    <choice xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:oneOrMore>
        <rng:ref name="model.pLike"/>
      </rng:oneOrMore>
      <rng:zeroOrMore>
        <rng:ref name="model.personPart"/>
      </rng:zeroOrMore>
    </choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="person.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="role">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a primary role or classification for the person.</a:documentation>
        <ref name="data.words"/>
      </attribute>
    </optional>
    <optional>
      <attribute name="sex">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the sex of the person.</a:documentation>
        <ref name="data.sex"/>
      </attribute>
    </optional>
    <optional>
      <attribute name="age">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies an age group for the person.</a:documentation>
        <ref name="data.word"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="personGrp">
    <element name="personGrp">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(personal group) describes a group of individuals treated as a single person for
  analytic purposes.</a:documentation>
      <ref name="personGrp.content"/>
      <ref name="personGrp.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="personGrp.content">
    <choice xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:oneOrMore>
        <rng:ref name="model.pLike"/>
      </rng:oneOrMore>
      <rng:zeroOrMore>
        <rng:ref name="model.personPart"/>
      </rng:zeroOrMore>
    </choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="personGrp.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="role">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the role of this group of participants in the
        interaction.</a:documentation>
        <ref name="data.code"/>
      </attribute>
    </optional>
    <optional>
      <attribute name="sex">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the sex of the participant group.</a:documentation>
        <choice>
          <ref name="data.sex"/>
          <value>mixed</value>
        </choice>
      </attribute>
    </optional>
    <optional>
      <attribute name="age">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the age group of the participants.</a:documentation>
        <ref name="data.word"/>
      </attribute>
    </optional>
    <optional>
      <attribute name="size">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the size or approximate size of the group.</a:documentation>
        <ref name="data.words"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="preparedness">
    <element name="preparedness">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the extent to which a text may be regarded as
prepared or spontaneous. </a:documentation>
      <ref name="preparedness.content"/>
      <ref name="preparedness.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="preparedness.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="preparedness.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a keyword characterizing the type of preparedness.
   </a:documentation>
        <ref name="data.enumerated"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="purpose">
    <element name="purpose">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes a single purpose or communicative function of the
text.</a:documentation>
      <ref name="purpose.content"/>
      <ref name="purpose.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="purpose.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="purpose.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="type">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies a particular kind of purpose.
   </a:documentation>
        <ref name="data.enumerated"/>
      </attribute>
    </optional>
    <optional>
      <attribute name="degree">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the extent to which this purpose predominates.</a:documentation>
        <choice>
          <value>high</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(this purpose is predominant
  ) </a:documentation>
          <value>medium</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(this purpose is intermediate
  ) </a:documentation>
          <value>low</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(this purpose is weak
  ) </a:documentation>
          <value>unknown</value>
          <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(extent unknown
   ) </a:documentation>
        </choice>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="relation">
    <element name="relation">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(relationship) describes any kind of relationship or linkage amongst a specified
group of participants.</a:documentation>
      <ref name="relation.content"/>
      <ref name="relation.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="relation.content">
    <empty xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="relation.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" name="type" a:defaultValue="personal">
        <a:documentation>categorizes the relationship in some respect, e.g.
as social, personal or other.</a:documentation>
        <ref name="data.enumerated"/>
      </attribute>
    </optional>
    <attribute name="name">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">supplies a name for the kind of  relationship of which
	this is an instance.</a:documentation>
      <ref name="data.enumerated"/>
    </attribute>
    <attribute name="active">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the active participants in a non-mutual
relationship, or all the participants in a mutual one.</a:documentation>
      <ref name="data.pointers"/>
    </attribute>
    <attribute name="passive">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the passive participants in a non-mutual
relationship.</a:documentation>
      <ref name="data.pointers"/>
    </attribute>
    <optional>
      <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" name="mutual" a:defaultValue="true">
        <a:documentation>indicates whether the relationship holds equally amongst all the
participants.</a:documentation>
        <choice>
          <value>true</value>
          <a:documentation>(the relationship is mutual) </a:documentation>
          <value>false</value>
          <a:documentation>(the relationship is directed) </a:documentation>
        </choice>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="residence">
    <element name="residence">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(residence) describes a person's present or past places of residence.</a:documentation>
      <ref name="residence.content"/>
      <ref name="residence.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="residence.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="residence.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.datable.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="residence"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="setting">
    <element name="setting">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(setting) describes one particular setting in which a language
  interaction takes place.</a:documentation>
      <ref name="setting.content"/>
      <ref name="setting.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="setting.content">
    <choice xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:oneOrMore>
        <rng:ref name="model.pLike"/>
      </rng:oneOrMore>
      <rng:zeroOrMore>
        <rng:choice>
          <rng:ref name="model.nameLike.agent"/>
          <rng:ref name="model.dateLike"/>
          <rng:ref name="model.timeLike"/>
          <rng:ref name="activity"/>
          <rng:ref name="locale"/>
          <rng:ref name="rs"/>
        </rng:choice>
      </rng:zeroOrMore>
    </choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="setting.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.ascribed.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="settingDesc">
    <element name="settingDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(setting description) describes the setting or settings within which a language
interaction takes place, either as a prose description or as a
series of setting elements.</a:documentation>
      <ref name="settingDesc.content"/>
      <ref name="settingDesc.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="settingDesc.content">
    <choice xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:oneOrMore>
        <rng:ref name="model.pLike"/>
      </rng:oneOrMore>
      <rng:oneOrMore>
        <rng:ref name="setting"/>
      </rng:oneOrMore>
    </choice>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="settingDesc.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.declarable.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.profileDescPart" combine="choice">
    <ref name="settingDesc"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="socecStatus">
    <element name="socecStatus">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(socio-economic status) contains an informal description of a person's perceived social or
economic status.</a:documentation>
      <ref name="socecStatus.content"/>
      <ref name="socecStatus.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="socecStatus.content">
    <ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="macro.phraseSeq"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="socecStatus.attributes">
    <ref name="att.global.attributes"/>
    <optional>
      <attribute name="scheme">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies the classification system or taxonomy in use.</a:documentation>
        <ref name="data.pointer"/>
      </attribute>
    </optional>
    <optional>
      <attribute name="code">
        <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">identifies a status code defined within the
classification system or taxonomy defined by the source
attribute.</a:documentation>
        <ref name="data.pointer"/>
      </attribute>
    </optional>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.personPart" combine="choice">
    <ref name="socecStatus"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="textDesc">
    <element name="textDesc">
      <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(text description) provides a description of a text in terms of its
situational parameters.</a:documentation>
      <ref name="textDesc.content"/>
      <ref name="textDesc.attributes"/>
    </element>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="textDesc.content">
    <group xmlns:rng="http://relaxng.org/ns/structure/1.0">
      <rng:ref name="channel"/>
      <rng:ref name="constitution"/>
      <rng:ref name="derivation"/>
      <rng:ref name="domain"/>
      <rng:ref name="factuality"/>
      <rng:ref name="interaction"/>
      <rng:ref name="preparedness"/>
      <rng:oneOrMore>
        <rng:ref name="purpose"/>
      </rng:oneOrMore>
    </group>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="textDesc.attributes">
    <ref name="att.global.attributes"/>
    <ref name="att.declarable.attributes"/>
    <empty/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.catDescPart" combine="choice">
    <ref name="textDesc"/>
  </define>
  <define xmlns="http://relaxng.org/ns/structure/1.0" name="model.profileDescPart" combine="choice">
    <ref name="textDesc"/>
  </define>
<!--3. macros-->
</rng:grammar>
