namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
namespace rng = "http://relaxng.org/ns/structure/1.0"

# Schema generated 2008-11-01T14:14:38Z
# Edition: 1.2.0. Last updated on October 31st 2008.
# Copyright 2008 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.
# A copy of the GNU General Public
#	    License is stored on the TEI web site
#	    along with this file; you can also contact the Free
#	    Software Foundation, Inc., 59 Temple Place, Suite 330,
#	    Boston, MA 02111-1307, USA, for a copy.
# For information about the TEI, including contact
#		details, consult the TEI web
#	      site at http://www.tei-c.org/. 
#		Corpus texts

# Definitions from module corpus

# Set global predeclared macros

# Set predeclared macros

# 0. predeclared macros

# 1. classes

# 2. elements

activity =
  ## contains a brief informal description of what a participant in a
  ## language interaction is doing other than speaking, if anything.
  element activity { activity.content, activity.localattributes }
activity.content = macro.phraseSeq.limited
activity.localattributes = att.global.attributes, empty

channel =
  ## (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.
  element channel { channel.content, channel.localattributes }
channel.content = macro.phraseSeq.limited
channel.localattributes =
  att.global.attributes,
  ## specifies the mode of this channel with respect to speech and
  ##          writing.
  [ a:defaultValue = "x" ]
  attribute mode {
    ## (spoken) 
    "s" | ## (written) 
      "w" | ## (spoken to be written) e.g. dictation
      "sw" | ## (written to be spoken) e.g. a script
      "ws" | ## (mixed) 
      "m" | ## (unknown or inapplicable) 
      "x"
  }?,
  empty

constitution =
  ## describes the internal composition of a text or text sample,
  ## for example
  ## as fragmentary, complete, etc.
  element constitution {
    constitution.content, constitution.localattributes
  }
constitution.content = macro.phraseSeq.limited
constitution.localattributes =
  att.global.attributes,
  ## specifies how the text was constituted.
  [ a:defaultValue = "single" ]
  attribute type {
    ## a single complete text
    "single" | ## a text made by combining several smaller
      ##              items, each individually complete
      "composite" | ## (fragments) a text made by combining several smaller, not
      ##              necessarily complete, items
      "frags" | ## composition unknown or unspecified
      "unknown"
  }?,
  empty

derivation =
  ## describes the nature and extent of originality of this text.
  element derivation { derivation.content, derivation.localattributes }
derivation.content = macro.phraseSeq.limited
derivation.localattributes =
  att.global.attributes,
  ## categorizes the derivation of the text.
  ## Sample values include: 1] original; 2] revision; 3] translation; 4] abridgment; 5] plagiarism; 6] traditional
  attribute type { data.enumerated }?,
  empty

domain =
  ## (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.
  element domain { domain.content, domain.localattributes }
domain.content = macro.phraseSeq.limited
domain.localattributes =
  att.global.attributes,
  ## categorizes the domain of use.
  ## Sample values include: 1] art; 2] domestic; 3] religious; 4] business; 5] education; 6] govt (government); 7] public
  attribute type { data.enumerated }?,
  empty

factuality =
  ## 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. 
  element factuality { factuality.content, factuality.localattributes }
factuality.content = macro.phraseSeq.limited
factuality.localattributes =
  att.global.attributes,
  ## categorizes the factuality of the text.
  attribute type {
    ## the text is to be regarded as entirely imaginative
    "fiction" | ## the text is to be regarded as entirely informative or factual
      "fact" | ## the text contains a mixture of fact and fiction
      "mixed" | ## the fiction/fact distinction is not regarded
      ##     as helpful or appropriate to this text
      "inapplicable"
  }?,
  empty

interaction =
  ## describes the extent, cardinality and nature of any interaction
  ## among those producing and experiencing the text, for example in the
  ## form of response or interjection, commentary, etc.
  element interaction {
    interaction.content, interaction.localattributes
  }
interaction.content = macro.phraseSeq.limited
interaction.localattributes =
  att.global.attributes,
  ## specifies the degree of interaction between
  ##   active and passive participants in the text. 
  attribute type {
    ## no interaction of any kind, e.g. a monologue 
    "none" | ## some degree of interaction, e.g. a monologue with set responses 
      "partial" | ## complete interaction, e.g. a face to face conversation 
      "complete" | ## this parameter is inappropriate or inapplicable in this case 
      "inapplicable"
  }?,
  ## specifies the number of active participants
  ##    (or addressors) producing parts of the text. 
  ## Suggested values include: 1] singular; 2] plural; 3] corporate; 4] unknown
  attribute active {
    ## a single addressor 
    "singular" | ## many addressors 
      "plural" | ## a corporate addressor 
      "corporate" | ## number of addressors unknown or unspecifiable 
      "unknown"
    | xsd:Name
  }?,
  ## specifies the number of passive participants
  ##    (or addressees) to whom a text is directed
  ##    or in whose presence it is created or performed.
  ## Suggested values include: 1] self; 2] single; 3] many; 4] group; 5] world
  attribute passive {
    ## text is addressed to the originator e.g. a diary 
    "self" | ## text is addressed to one other person e.g. a personal letter 
      "single" | ## text is addressed to a countable number of others
      ##     e.g. a conversation in which all participants are identified 
      "many" | ## text is addressed to an undefined but fixed
      ##     number of participants  e.g. a lecture 
      "group" | ## text is addressed to an undefined and indeterminately
      ##     large number e.g. a published book 
      "world"
    | xsd:Name
  }?,
  empty

locale =
  ## contains a brief informal description of the kind of
  ## place concerned, for example: a room, a restaurant, a park bench, etc.
  element locale { locale.content, locale.localattributes }
locale.content = macro.phraseSeq.limited
locale.localattributes = att.global.attributes, empty

particDesc =
  ## (participation description) describes the identifiable speakers, voices, or other participants
  ## in a linguistic interaction. 
  element particDesc { particDesc.content, particDesc.localattributes }
particDesc.content = model.pLike+ | (model.personLike | listPerson)+
particDesc.localattributes =
  att.global.attributes, att.declarable.attributes, empty

preparedness =
  ## describes the extent to which a text may be regarded as
  ## prepared or spontaneous. 
  element preparedness {
    preparedness.content, preparedness.localattributes
  }
preparedness.content = macro.phraseSeq.limited
preparedness.localattributes =
  att.global.attributes,
  ## a keyword characterizing the type of preparedness.
  ## Sample values include: 1] none; 2] scripted; 3] formulaic; 4] revised
  attribute type { data.enumerated }?,
  empty

purpose =
  ## characterizes a single purpose or communicative function of the
  ## text.
  element purpose { purpose.content, purpose.localattributes }
purpose.content = macro.phraseSeq.limited
purpose.localattributes =
  att.global.attributes,
  ## specifies a particular kind of purpose.
  ## Suggested values include: 1] persuade; 2] express; 3] inform; 4] entertain
  attribute type {
    ## didactic, advertising, propaganda, etc.
    "persuade" | ## self expression, confessional, etc.
      "express" | ## convey information, educate, etc.
      "inform" | ## amuse, entertain, etc.
      "entertain"
    | xsd:Name
  }?,
  ## specifies the extent to which this purpose predominates.
  attribute degree { data.certainty }?,
  empty

setting =
  ## describes one particular setting in which a language
  ##   interaction takes place.
  element setting { setting.content, setting.localattributes }
setting.content =
  model.pLike+
  | (model.nameLike.agent | model.dateLike | model.settingPart)*
setting.localattributes =
  att.global.attributes, att.ascribed.attributes, empty

settingDesc =
  ## (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.
  element settingDesc {
    settingDesc.content, settingDesc.localattributes
  }
settingDesc.content = model.pLike+ | setting+
settingDesc.localattributes =
  att.global.attributes, att.declarable.attributes, empty

textDesc =
  ## (text description) provides a description of a text in terms of its
  ## situational parameters.
  element textDesc { textDesc.content, textDesc.localattributes }
textDesc.content = model.textDescPart_sequence, purpose+
textDesc.localattributes =
  att.global.attributes, att.declarable.attributes, empty
# 3. macros
