[osis-core] OSISCore_1.test6 osisCorpus/osisText/Header

Chris Little osis-core@bibletechnologieswg.org
Wed, 22 May 2002 18:36:03 -0700


This is a multi-part message in MIME format.

------=_NextPart_000_0003_01C201BF.8799F370
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Looking at the current content model, I really like the addition of
osisCorpus, but I think it raises possible issues with the header
element.

I believe a majority of instances where osisCorpus would be used, it
would make sense to have a header element that applies to the whole
document (osisCorpus) rather than the component osisTexts.  I would
recommend that we add Header as a required element of osisCorpus.

An alternate solution would be to make Header a required element of osis
and only optional in osisText (and not at all part of osisCorpus.  The
osisText's Header element would be used only when the osisText is a
child of an osisCorpus.

--Chris

------=_NextPart_000_0003_01C201BF.8799F370
Content-Type: text/xml;
	name="OSISCore_1.test6.xsd"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="OSISCore_1.test6.xsd"

<?xml version=3D"1.0" encoding=3D"UTF-8"?>

<xs:schema xmlns:xs=3D"http://www.w3.org/2001/XMLSchema"

	elementFormDefault=3D"unqualified">





<!-- note that I have added a higher level root element so we can have =
collections of independent texts for a collection -->



<xs:element name=3D"osis">

	    <xs:complexType>

		<xs:choice>

			<xs:element ref=3D"osisCorpus"/>

			<xs:element ref=3D"osisText"/>

		</xs:choice>

	    </xs:complexType>

</xs:element>



<xs:element name=3D"osisCorpus">

	    <xs:complexType>

		<xs:sequence minOccurs=3D"1" maxOccurs=3D"unbounded">

			<xs:element ref=3D"osisText"/>

		</xs:sequence>

	    </xs:complexType>

</xs:element>



<xs:element name=3D"osisText">

	<xs:complexType>

		<xs:sequence>

			<xs:element ref=3D"header" minOccurs=3D"1" maxOccurs=3D"1"/>

			<xs:element ref=3D"front" minOccurs=3D"0" maxOccurs=3D"1"/>

			<xs:element ref=3D"body" minOccurs=3D"1" maxOccurs=3D"1"/>

			<xs:element ref=3D"back" minOccurs=3D"0" maxOccurs=3D"1"/>

		</xs:sequence>

			<xs:attribute name=3D"work" type=3D"osisRef" use=3D"optional"/>

			<xs:attribute name=3D"refSys" type=3D"osisRef" use=3D"optional"/>

			<xs:attributeGroup ref=3D"globalAttributes"/>

	</xs:complexType>

</xs:element>



<xs:element name=3D"header">

	<xs:complexType>

		<xs:sequence>

			<xs:element ref=3D"title" minOccurs=3D"0"/>

			<xs:element ref=3D"contributor" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

			<xs:element name=3D"creator" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

			<xs:element name=3D"subject" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

			<xs:element name=3D"description" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

			<xs:element name=3D"publisher" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

			<xs:element name=3D"type" minOccurs=3D"0" maxOccurs=3D"unbounded"/>

			<xs:element name=3D"format" minOccurs=3D"0" maxOccurs=3D"unbounded"/>

			<xs:element name=3D"identifier" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

			<xs:element name=3D"source" minOccurs=3D"0" maxOccurs=3D"unbounded"/>

			<xs:element name=3D"language" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

			<xs:element name=3D"relation" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

			<xs:element name=3D"coverage" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

			<xs:element name=3D"rights" minOccurs=3D"0" maxOccurs=3D"unbounded"/>

			<xs:element name=3D"revisionDesc" minOccurs=3D"0" =
maxOccurs=3D"unbounded"/>

		</xs:sequence>

	</xs:complexType>

</xs:element>



<!-- elements for header, with exception of title -->



<xs:element name=3D"contributor">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"creator">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attribute name=3D"role" type=3D"roleType" use=3D"optional"/>

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"subject">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"description">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"publisher">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"type">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"format">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"identifier">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"source">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"language">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"relation">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"coverage">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"rights">

	<xs:complexType>

		<xs:simpleContent> =09

			<xs:extension base=3D"xs:string">

				<xs:attributeGroup ref=3D"globalAttributes"/>

			</xs:extension>

		</xs:simpleContent>

	</xs:complexType>

</xs:element>



<xs:element name=3D"revisionDesc">

	<xs:complexType>

		<xs:sequence>

			<xs:element ref=3D"date" minOccurs=3D"1"/>

			<xs:element ref=3D"p" maxOccurs=3D"unbounded"/>

		</xs:sequence>

		<xs:attributeGroup ref=3D"globalAttributes"/>

		<xs:attribute name=3D"TEIform" fixed=3D"revisionDesc"/>

	</xs:complexType>

</xs:element>





<!-- end of header elements -->



<!-- major structural elements -->



<!-- note that title recurs (within title) so even though only one title =
element, can have as many subtitles as desired -->

<!-- Todd has noted that since the content models for front, body and =
back are the same that we could handle these with a common element with =
an attribute for those divisions. I tend to agree but suspect it will be =
easier to explain if we retain the semantics of having different =
elements names for these divisions. -->



<xs:element name=3D"front">

	<xs:complexType>

		<xs:sequence>

			<xs:element ref=3D"title" minOccurs=3D"0"/>

			<xs:element ref=3D"div" minOccurs=3D"1" maxOccurs=3D"unbounded"/>

		</xs:sequence>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	</xs:complexType>

</xs:element>



<xs:element name=3D"body">

	<xs:complexType>

		<xs:sequence>

			<xs:element ref=3D"title" minOccurs=3D"0"/>

			<xs:element ref=3D"div" maxOccurs=3D"unbounded"/>

		</xs:sequence>

		<xs:attributeGroup ref=3D"globalAttributes"/>

		<xs:attribute name=3D"TEIform" fixed=3D"body"/>

	</xs:complexType>

</xs:element>

=09

<xs:element name=3D"back">

	<xs:complexType>

		<xs:sequence>

			<xs:element ref=3D"title" minOccurs=3D"0"/>

			<xs:element ref=3D"div" maxOccurs=3D"unbounded"/>

		</xs:sequence>

		<xs:attributeGroup ref=3D"globalAttributes"/>

		<xs:attribute name=3D"TEIform" fixed=3D"back"/>

	</xs:complexType>

</xs:element>



<!-- end of major structural elements -->



<!-- abbr element contains abbreviations and expansion of abbreviations =
is carried in the expansion attribute. Note allowed since people may =
want to annotate the abbreviation with other information. Have allowed =
unbounded number of notes, probably should be the general case for notes =
as there is no way to anticipate how many notes any text may have at a =
given point. Can be changed for validation in particular production =
environments -->



<xs:element name=3D"abbr">

	    <xs:complexType mixed=3D"true">

		<xs:sequence minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"note"/>

		</xs:sequence>

		<xs:attribute name=3D"expansion" type=3D"xs:string"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>





<!-- blockQuote is a child of blockQuote, div and p. Can contain p which =
form part of the blockQuote. If used to surround verses for denoting =
blockQuote, use next/prev attributes on verses to span the close of the =
blockQuote element -->



<xs:element name=3D"blockQuote">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"close"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"p"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"salute"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"speaker"/>

			   <xs:element ref=3D"speech"/>

			   <xs:element ref=3D"transChange"/>

			   <xs:element ref=3D"verse"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

		<xs:attributeGroup ref=3D"outReferenceAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- caption is used within figure to contain short descriptive =
information that may appear with an illustration, photo or other =
illustration - caption is allowed to contain abbr, foreign, name, note, =
q, reference -->=20



<xs:element name=3D"caption">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reference"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- catchWord is used to contain text in a note that is part of the =
main text and used to alert the reader to the materila from the main =
text that is under discussion. may contain PCDATA and note. -->



<xs:element name=3D"catchWord">

	    <xs:complexType mixed=3D"true">

		<xs:sequence minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"note"/>

		</xs:sequence>

		<xs:attribute name=3D"expansion" type=3D"xs:string"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- close is a child of div and blockQuote, meant to deal with close of =
letters (Pauline for example) -->



<xs:element name=3D"close">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"divineName"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"p"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"verse"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attribute name=3D"expansion" type=3D"xs:string"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- date includes note for cases where in addition to recording the =
calendar type, the encoder wishes to make some other claim about the =
date -->



<xs:element name=3D"date">

	    <xs:complexType mixed=3D"true">

		<xs:sequence minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"note"/>

		</xs:sequence>

		<xs:attribute name=3D"calendarType" type=3D"calendar" use=3D"optional" =
default=3D"ISO"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- div is the largest generic container below the main structural =
elements - should be used for subsections in commentaries and the like =
-->



<xs:element name=3D"div">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"blockQuote"/>

			   <xs:element ref=3D"figure"/>

			   <xs:element ref=3D"lineGroup"/>

			   <xs:element ref=3D"list"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"p"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"title"/>

			   <xs:element ref=3D"verse"/>

		</xs:choice>

			<xs:attribute name=3D"divType" type=3D"divType" use=3D"optional"/>

			<xs:attribute name=3D"divTitle" type=3D"xs:string" use=3D"optional"/>

			<xs:attributeGroup ref=3D"inReferenceAttributes"/>

			<xs:attributeGroup ref=3D"globalAttributes"/>

			<xs:attribute name=3D"TEIform" fixed=3D"div"/>

	    </xs:complexType>

</xs:element>



<!-- used to mark occurrences of the divine name, the treatment of which =
varies from tradtional to tradition. The type attribute should be used =
if the encoder wishes to create a typology of of the divine name as =
found or translated in the text. -->



<xs:element name=3D"divineName">

	    <xs:complexType mixed=3D"true">

		<xs:sequence minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"note"/>

		</xs:sequence>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- figure contains only an optional caption element - the source for =
the figure should be specified using the src attribute -->



<xs:element name=3D"figure">

	    <xs:complexType>

		<xs:sequence minOccurs=3D"0">

			   <xs:element ref=3D"caption"/>

		</xs:sequence>

		<xs:attribute name=3D"src" type=3D"xs:string"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- foreign is used to mark foreign words or phrases that occur in a =
text. such words are usually offset from the main text by quotes or =
italics but that is a function of styling and not reflected in the =
attributes to this element, i.e., no rend, sorry Chris! -->



<xs:element name=3D"foreign">

	<xs:complexType mixed=3D"true">

		<xs:sequence minOccurs=3D"0" maxOccurs=3D"unbounded">

			<xs:element ref=3D"note"/>

		</xs:sequence>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	</xs:complexType>

</xs:element>





<!-- head, allowed in list only, does recur so can have multiple level =
of headings for a list, note that list recurs as well -->



<xs:element name=3D"head">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"head"/>

			   <xs:element ref=3D"note"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- inscription, fairly low level element to record short inscriptions, =
should not be used for quotes -->



<xs:element name=3D"inscription">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- item is solely a child of list and contains mixed content, note and =
w -->



<xs:element name=3D"item">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- label, optional element in list -->



<xs:element name=3D"label">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- line is a member of lineGroup and should be used for poetic =
sections, not the recording of orthographic lines, such as when encoding =
a manuscript witness. markup for recording original mss. will be =
included in the scholarly module. Note that line can include a verse and =
this is the most likely place for crossing boundaries where verses will =
need to be split to cross line boundaries. -->



<xs:element name=3D"line">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"speaker"/>

			   <xs:element ref=3D"transChange"/>

			   <xs:element ref=3D"verse"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- lineGroup is a container element for line. use for poetic texts and =
embed verses, by splitting them, into the line elements -->=20



<xs:element name=3D"lineGroup">

	    <xs:complexType>

		<xs:sequence minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"line"/>

		</xs:sequence>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- list, allowed to recur for embedded lists -->



<xs:element name=3D"list">

	    <xs:complexType mixed=3D"true">

		<xs:sequence minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"label" minOccurs=3D"0" maxOccurs=3D"1"/>

			   <xs:element ref=3D"item" minOccurs=3D"1" maxOccurs=3D"1"/>

		</xs:sequence>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- mentioned -->



<xs:element name=3D"mentioned">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"date"/>

			   <xs:element ref=3D"divineName"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- milestone, true milestone so no begin/end -->



<xs:element name=3D"milestone">

	    <xs:complexType>

		<xs:attributeGroup ref=3D"inReferenceAttributes"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	    </xs:complexType>

</xs:element> =20



<!-- name is used to mark any variety of names, such as person, =
geographic, festival, etc. -->



<xs:element name=3D"name">

	    <xs:complexType mixed=3D"true">

		<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attribute name=3D"nameType" type=3D"nameType" use=3D"required"/>

		<xs:attribute name=3D"regular" type=3D"xs:string" use=3D"optional"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- note is used inline to record notes about a particular text - note =
has attributes that allow the attachment of the note to a particular =
place or passage in the text -->



<xs:element name=3D"note">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"p"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reading"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"verse"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- the standard paragraph container element -->



<xs:element name=3D"p">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"blockQuote"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"inscription"/>

			   <xs:element ref=3D"mentioned"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"salute"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"speaker"/>

			   <xs:element ref=3D"speech"/>

			   <xs:element ref=3D"verse"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>





<!-- note that q does not allow verse. In secondary materials where a =
verse is being quoted by a speaker, for example, it whould be encoded as =
a reference with the appropriate attributes -->



<xs:element name=3D"q">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attribute name=3D"qID" type=3D"xs:string"/>

		<xs:attribute name=3D"next" type=3D"xs:string" use=3D"optional"/>

		<xs:attribute name=3D"prev" type=3D"xs:string" use=3D"optional"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

	   <xs:key name=3D"prevQKey">

		   <xs:selector xpath=3D".//q"/>

		   <xs:field xpath=3D"@qID"/>

	   </xs:key>

	   <xs:keyref name=3D"prevQRef" refer=3D"prevQKey">

		   <xs:selector xpath=3D".//q"/>

		   <xs:field xpath=3D"@prev"/>

	   </xs:keyref>

</xs:element>



<!-- reading occurs only in note, records alternative readings -->



<xs:element name=3D"reading">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- reference is used to mark any reference in a text to another, =
whether direct or an allusion. The type of reference being should be =
classified by the encoder. References from the NT to passages in the OT =
would be examples of a reference. -->



<xs:element name=3D"reference">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- salute occurs in both blockQuote as well as p since encoders may =
choose to use different mechanisms contain material where a salute =
occurs -->



<xs:element name=3D"salute">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- seg is a generic container element that can contain phrase level =
elements -->



<xs:element name=3D"seg">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attribute name=3D"segID" type=3D"xs:string"/>

		<xs:attribute name=3D"next" type=3D"xs:string" use=3D"optional"/>

		<xs:attribute name=3D"prev" type=3D"xs:string" use=3D"optional"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

	   <xs:key name=3D"prevSegKey">

		   <xs:selector xpath=3D".//seg"/>

		   <xs:field xpath=3D"@segID"/>

	   </xs:key>

	   <xs:keyref name=3D"prevSegRef" refer=3D"prevSegKey">

		   <xs:selector xpath=3D".//seg"/>

		   <xs:field xpath=3D"@prev"/>

	   </xs:keyref>

</xs:element>



<!-- signed is used to record the ending of a text where the author =
indicates that they have issued a particular work -->



<xs:element name=3D"signed">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- speaker will usually have content but is not required to do so, =
shifts in the character in poetic dialogue may not be explicitly marked =
in a text but the encoder wishes to make a claim about such speakers -->



<xs:element name=3D"speaker">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"reference"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- speech is used to mark direct speeches, reported speeches should be =
recorded using the q element -->



<xs:element name=3D"speech">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"blockQuote"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"inscription"/>

			   <xs:element ref=3D"mentioned"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"salute"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"speaker"/>

			   <xs:element ref=3D"speech"/>

			   <xs:element ref=3D"verse"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attribute name=3D"speechID" type=3D"xs:string"/>

		<xs:attribute name=3D"next" type=3D"xs:string" use=3D"optional"/>

		<xs:attribute name=3D"prev" type=3D"xs:string" use=3D"optional"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

	   <xs:key name=3D"prevSpeechKey">

		   <xs:selector xpath=3D".//speech"/>

		   <xs:field xpath=3D"@speechID"/>

	   </xs:key>

	   <xs:keyref name=3D"prevSpeechRef" refer=3D"prevSpeechKey">

		   <xs:selector xpath=3D".//speech"/>

		   <xs:field xpath=3D"@prev"/>

	   </xs:keyref>

</xs:element>



<!-- title occurs as child of div only - recurs so can use for subtitles =
- some smaller elements for common parts of title -->



<xs:element name=3D"title">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"title"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attributeGroup ref=3D"globalAttributes"/>

		<xs:attribute name=3D"TEIform" fixed=3D"title"/>

	   </xs:complexType>

</xs:element>



<!-- transChange is used to encode material not thought to be part of =
the original language in a translation - use attributes to indicate a =
typology of the change -->



<xs:element name=3D"transChange">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attribute name=3D"changeType" type=3D"changeType" =
use=3D"optional"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- note that I have added the key/keyRef to allow the spliting of a =
verse across boundaries where necessary. The key/keyRef mechanism =
requires that the key be non-nillable, in other words required. Rather =
than make another attribute group for global attributes or require IDs =
everywhere, I simply added the verseID attribute and it is required on =
all elements. Note that the next attribute has only an informative =
function. -->



<xs:element name=3D"verse">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"abbr"/>

			   <xs:element ref=3D"foreign"/>

			   <xs:element ref=3D"inscription"/>

			   <xs:element ref=3D"milestone"/>

			   <xs:element ref=3D"name"/>

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"q"/>

			   <xs:element ref=3D"reference"/>

			   <xs:element ref=3D"seg"/>

			   <xs:element ref=3D"speaker"/>

			   <xs:element ref=3D"w"/>

		</xs:choice>

		<xs:attribute name=3D"verseID" type=3D"xs:string"/>

		<xs:attribute name=3D"next" type=3D"xs:string" use=3D"optional"/>

		<xs:attribute name=3D"prev" type=3D"xs:string" use=3D"optional"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

	   <xs:key name=3D"prevVerseKey">

		   <xs:selector xpath=3D".//verse"/>

		   <xs:field xpath=3D"@verseID"/>

	   </xs:key>

	   <xs:keyref name=3D"prevVerseRef" refer=3D"prevVerseKey">

		   <xs:selector xpath=3D".//verse"/>

		   <xs:field xpath=3D"@prev"/>

	   </xs:keyref>

</xs:element>



<!-- word is used to mark the smallest unit of text, generally in =
Western literature seen as a token separated by white space - has =
attributes to carry Strong's numbers. -->



<xs:element name=3D"w">

	    <xs:complexType mixed=3D"true">

	    	<xs:choice minOccurs=3D"0" maxOccurs=3D"unbounded">

			   <xs:element ref=3D"note"/>

			   <xs:element ref=3D"seg"/>

		</xs:choice>

		<xs:attribute name=3D"POS" type=3D"attributeExtension" =
use=3D"optional"/>

		<xs:attribute name=3D"morph" type=3D"attributeExtension" =
use=3D"optional"/>

		<xs:attribute name=3D"lemma" type=3D"attributeExtension" =
use=3D"optional"/>

		<xs:attribute name=3D"gloss" type=3D"xs:string" use=3D"optional"/>

		<xs:attribute name=3D"xlit" type=3D"xs:string" use=3D"optional"/>

		<xs:attributeGroup ref=3D"globalAttributes"/>

	   </xs:complexType>

</xs:element>



<!-- attributes -->



<xs:attributeGroup name=3D"globalAttributes">

		<xs:attribute name=3D"ews" type=3D"xs:string" use=3D"optional"/>

		<xs:attribute name=3D"ID" type=3D"xs:ID" use=3D"optional"/>

		<xs:attribute name=3D"lang" type=3D"xs:string" use=3D"optional"/>

		<xs:attribute name=3D"resp" type=3D"xs:string" use=3D"optional"/>

		<xs:attribute name=3D"type" type=3D"xs:string" use=3D"optional"/>

		<xs:attribute name=3D"n" type=3D"xs:string" use=3D"optional"/>

		<xs:attributeGroup ref=3D"inReferenceAttributes"/>

		<xs:attributeGroup ref=3D"outReferenceAttributes"/>

</xs:attributeGroup>



<!-- note that for the various simple types I have only defined the =
regexes as suggested by Steve. For further validation, those values, =
particulary osisWork and osisRef should be overidden by additional =
declarations. avoids trying to solve the referce system question based =
upon inadequate information -->



<xs:attributeGroup name=3D"inReferenceAttributes">

	<xs:attribute name=3D"work" type=3D"osisRef" use=3D"optional"/>

	<xs:attribute name=3D"cite" type=3D"osisRef" use=3D"optional"/>

	<xs:attribute name=3D"grain" type=3D"osisGrain" use=3D"optional"/>

</xs:attributeGroup>=09



<xs:attributeGroup name=3D"outReferenceAttributes">

	<xs:attribute name=3D"outWork" type=3D"osisRef" use=3D"optional"/>

	<xs:attribute name=3D"outCite" type=3D"osisRef" use=3D"optional"/>

	<xs:attribute name=3D"outGrain" type=3D"osisGrain" use=3D"optional"/>

</xs:attributeGroup>





<!-- simple types -->



<xs:simpleType name=3D"attributeExtension">

	<xs:restriction base=3D"xs:string">

		<xs:pattern value=3D"x-([^\s]+)"/>

	</xs:restriction>

</xs:simpleType>



<xs:simpleType name=3D"calendar">

	<xs:restriction base=3D"xs:string">

		<xs:enumeration value=3D"Chinese"/>

		<xs:enumeration value=3D"Gregorian"/>

		<xs:enumeration value=3D"Islamic"/>

		<xs:enumeration value=3D"ISO"/>

		<xs:enumeration value=3D"Jewish"/>

		<xs:enumeration value=3D"Julian"/>

	</xs:restriction>

</xs:simpleType>



<xs:simpleType name=3D"changesOSIS">

	       <xs:restriction base=3D"xs:string">

		<xs:enumeration value=3D"added"/>

		<xs:enumeration value=3D"amplified"/>

		<xs:enumeration value=3D"changed"/>

		<xs:enumeration value=3D"deleted"/>

		<xs:enumeration value=3D"moved"/>

	       </xs:restriction>

</xs:simpleType>

	=09

<xs:simpleType name=3D"changeType">

	<xs:union memberTypes=3D"changesOSIS attributeExtension"/>

</xs:simpleType>



<xs:simpleType name=3D"divsOSIS">

	<xs:restriction base=3D"xs:string">

		<xs:enumeration value=3D"appendix"/>

		<xs:enumeration value=3D"book"/>

		<xs:enumeration value=3D"chapter"/>

		<xs:enumeration value=3D"concordance"/>

		<xs:enumeration value=3D"glossary"/>

	</xs:restriction>

</xs:simpleType>



<xs:simpleType name=3D"divType">

	<xs:union memberTypes=3D"divsOSIS attributeExtension"/>

</xs:simpleType>



<xs:simpleType name=3D"languageType">

		<xs:restriction base=3D"xs:string">

			<xs:pattern value=3D"(x|i|[A-Za-z]{2,3})(-[A-Za-z0-9]{2,8}){0,}"/>

		</xs:restriction>

	</xs:simpleType>



<xs:simpleType name=3D"namesOSIS">

	<xs:annotation>

		<xs:documentation>

			<p>Enumerated list of name types commonly found in biblical =
texts.</p>

			<p>The attribute nonhuman was inserted to allow the marking of names =
that are not encoded with the element divineName. The divineName element =
was introduced to treat name occurences that are treated differently, =
i.e., the setting of Lord in small caps, to represent a name in the =
original text. Rather than attempt to enumerate all the varying =
traditions for such practices, the divineName element simply recognizes =
it and allows encoders to follow that practice (or not) as they =
desire.</p>

		</xs:documentation>

	</xs:annotation>

	<xs:restriction base=3D"xs:string">

		<xs:enumeration value=3D"geographic"/>

		<xs:enumeration value=3D"holiday"/>

		<xs:enumeration value=3D"nonhuman"/>

		<xs:enumeration value=3D"person"/>

		<xs:enumeration value=3D"ritual"/>

	</xs:restriction>

</xs:simpleType>



<xs:simpleType name=3D"nameType">

	<xs:union memberTypes=3D"namesOSIS attributeExtension"/>

</xs:simpleType>



<xs:simpleType name=3D"notesOSIS">

	<xs:restriction base=3D"xs:string">

		<xs:enumeration value=3D"allusion"/>

		<xs:enumeration value=3D"alternative"/>

		<xs:enumeration value=3D"background"/>

		<xs:enumeration value=3D"citation"/>

		<xs:enumeration value=3D"devotional"/>

		<xs:enumeration value=3D"exegesis"/>

		<xs:enumeration value=3D"explanation"/>

		<xs:enumeration value=3D"study"/>

		<xs:enumeration value=3D"translation"/>

		<xs:enumeration value=3D"variant"/>

	</xs:restriction>

</xs:simpleType>



<xs:simpleType name=3D"noteType">

	<xs:union memberTypes=3D"notesOSIS attributeExtension"/>

</xs:simpleType>





<!-- query to Steve, shouldn't grain do the duty of range? Can be =
character count but also other meaningful (in the reference system) =
grain? -->



<xs:simpleType name=3D"osisGrain">

	       <xs:restriction base=3D"xs:string">

		  <xs:pattern value=3D"(char:(\p{Nd}*)\+(\p{Nd}*)\(([^\s]*)\) | =
([^\s]*))"/>

	       </xs:restriction>

</xs:simpleType>





<xs:simpleType name=3D"osisRef">

	<xs:restriction base=3D"xs:string">

		<xs:pattern =
value=3D"(([^\s]*\.)?([^\s]*\.)?([^\s]*\.)?([^\s]*\.)?([^\s]*\.)?([^\s]*)=
?)"/>

	</xs:restriction>

</xs:simpleType>







	<xs:simpleType name=3D"roleOSIS">

		<xs:annotation>

			<xs:documentation>

				<p>This is a selected set of the most common role names likely to be =
needed for basic encoding. The full set of relator codes on which this =
listing (and the descriptions are based, was taken from: MARC Code List: =
Relator Codes -- Term Sequence =
(http://lcweb.loc.gov/marc/relators/re0002r1.html). This listing will be =
followed for later OSIS modules.</p>

			</xs:documentation>

		</xs:annotation>

		<xs:restriction base=3D"xs:string">

			<xs:enumeration value=3D"adp">

				<xs:annotation>

					<xs:documentation>Adapter: Use for a person who 1) reworks a =
musical composition,usually for a different medium, or 2) rewrites =
novels or stories for motionpictures or other audiovisual =
medium.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"ann">

				<xs:annotation>

					<xs:documentation>Annotator: Use for a person who writes manuscript =
annotations on a printed item.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"art">

				<xs:annotation>

					<xs:documentation>Artist: Use for a person (e.g., a painter) who =
conceives, and perhaps also implements, an original graphic design or =
work of art, </xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"aut">

				<xs:annotation>

					<xs:documentation>Author: Use for a person or corporate body =
chiefly responsiblefor the intellectual or artistic content of a work, =
usually printed text.  This term may also be used when more than one =
person or body bears such responsibility.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"aqt">

				<xs:annotation>

					<xs:documentation>Author in quotations or text extracts: Use for a =
person whose work is largely quoted or extracted in a works to which he =
or she did not contribute directly.  Such quotations are found =
particularly in exhibition catalogs, collections of photographs, =
etc.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"aft">

				<xs:annotation>

					<xs:documentation>Author of afterword, colophon, etc.: Use for a =
person or corporate body responsible for an afterword, postface, =
colophon, etc. but who isnot the chief author of a =
work.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"aui">

				<xs:annotation>

					<xs:documentation>Author of introduction, etc.: Use for a person or =
corporate body responsible for an introduction, preface, foreword, or =
other critical introductory matter, but who is not the chief =
author.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"bnd">

				<xs:annotation>

					<xs:documentation>Binder: </xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"bdd">

				<xs:annotation>

					<xs:documentation>Binding designer:  Designer of =
binding</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"bkd">

				<xs:annotation>

					<xs:documentation>Book designer: Use for the person or firm =
responsible for the entire graphic design of a book, including =
arrangement of type and illustration,choice of materials, and process =
used.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"bkp">

				<xs:annotation>

					<xs:documentation>Book producer: Use for the person or firm =
responsible for the production of books and other print media, if =
specific codes</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"bjd">

				<xs:annotation>

					<xs:documentation>Bookjacket designer:  Designer of =
bookjacket</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"bpd">

				<xs:annotation>

					<xs:documentation>Bookplate designer: Designer of =
bookplate</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"ctg">

				<xs:annotation>

					<xs:documentation>Cartographer: </xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"clb">

				<xs:annotation>

					<xs:documentation>Collaborator: Use for a person or corporate body =
that takes a limited part in the elaboration of a work of another person =
or corporate body that brings complements (e.g., appendices, notes) to =
the work.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"cmm">

				<xs:annotation>

					<xs:documentation>Commentator: Use for a person who provides =
interpretation, analysis,or a discussion of the subject matter on a =
recording, motion picture, or other audiovisual =
medium.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"cwt">

				<xs:annotation>

					<xs:documentation>Commentator for written text: Use for a person or =
corporate body responsible for the commentary or explanatory notes about =
a text.  For the writer of manuscript annotations in a printed book, use =
Annotator</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"com">

				<xs:annotation>

					<xs:documentation>Compiler: Use for a person who produces a work or =
publication by selecting and putting together material from the works of =
various persons or bodies.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"ctb">

				<xs:annotation>

					<xs:documentation>Contributor: Use for one whose work has been =
contributed to a larger work, such as an anthology, serial publication, =
or other compilation of individual works. Do not use for someone whose =
sole function in relation to a work is as author, editor, compiler or =
translator.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"cre">

				<xs:annotation>

					<xs:documentation>Creator: Use for a person or corporate body =
responsible for the intellectual or artistic content of a =
work.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"edt">

				<xs:annotation>

					<xs:documentation>Editor: Use for a person who prepares for =
publication a work not primarily his/her own, such as by elucidating =
text, adding introductory or other critical matter, or technically =
directing an editorial staff.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"ilu">

				<xs:annotation>

					<xs:documentation>Illuminator: </xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"ill">

				<xs:annotation>

					<xs:documentation>Illustrator: Use for the person who conceives, =
and perhaps also implements, a design or illustration, usually to =
accompany a written text.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"pbl">

				<xs:annotation>

					<xs:documentation>Publisher: </xs:documentation>

				</xs:annotation>

			</xs:enumeration>

			<xs:enumeration value=3D"trl">

				<xs:annotation>

					<xs:documentation>Translator: Use for a person who renders a text =
from one language into another, or from an older form of a language into =
the modern form.</xs:documentation>

				</xs:annotation>

			</xs:enumeration>

		</xs:restriction>

	</xs:simpleType>



<xs:simpleType name=3D"roleType">

	<xs:union memberTypes=3D"roleOSIS attributeExtension"/>

</xs:simpleType>



</xs:schema>
------=_NextPart_000_0003_01C201BF.8799F370--