[osis-core] Error on identifier (colon required to match regex)

Chris Little osis-core@bibletechnologieswg.org
Sun, 26 Oct 2003 16:16:46 -0600


Patrick,

I don't know if I quite understand this.  I interpret that you're saying

<identifier type="OSIS">Bible.NASB</identifier>

is incorrect, but

<identifier type="OSIS:">Bible.NASB</identifier>

is correct.  I don't understand the purpose of this, as it just looks 
like a namespace without any actual reference.  Or is the idea that it 
references an abstract document that would never exist?

In any case, neither of these are valid against osisGenRegex.  I think 
the final ? needs to move one parenthesis to the right.

The greater worry I have is with the use of osisGenType on identifier & 
subject in general.  A week or so ago, when we had osisIdentifers and 
osisSubjects, we had a really good (and more importantly, useful) set of 
values that cued people to use values defined by specific groups who 
have defined standard identifier & subject schemes.

My understanding (and correct me if I'm wrong) is that osisGenTypes 
refer to points within documents that don't exist (and that I would 
predict no one ever feels compelled to create).  By adopting osisGenType 
for identifier and subject, I feel we're abandoning a nice, small set of 
useful types that cover the vast majority of needs, and replacing it 
with the chaos of non-standard values that we had before.

--Chris


Patrick Durusau wrote:

> Troy,
> 
> type on identifier is defined as:
> 
> <xs:attribute name="type" type="osisGenType"/>
> 
> Which calls the regex you mention below.
> 
> I removed the enumeration of values and replaced it with the regex, 
> which allows you to declare the identifier in a work.
> 
> The reason for the error is that the regex requires OSIS: and not simply 
> OSIS. The reasoning was that usually an identifier will be used in a 
> number of places with more parts of the identifier following and so the 
> need to enforce the ":" separator.
> 
> Will this be a problem? Note we get the same behavior with type on 
> subject, i.e., incorrect DEWEY, correct DEWEY:.
> 
> In a way it does call the user's attention to the proper use of the 
> identifier itself as being identifier + colon.
> 
> This also requires identifier + colon in Lemma, Morph and POS, but we 
> are used to seeing them there anyway.
> 
> Comments?
> 
> Hope everyone is having a great day!
> 
> Patrick
> 
> Troy A. Griffitts wrote:
> 
>> Hey guys.  Here's the report on the run of the latest schema against 
>> my latest encoding of the NASB:
>>
>> [scribe@troyslaptop msv]$ java -jar msv.jar ./osisCore.xsd ./nasb.xml
>> start parsing a grammar.
>> validating ./nasb.xml
>> Error at line:7, column:45 of file:///space/home/scribe/msv/./nasb.xml
>>   attribute "type" has a bad value: the value does not match the 
>> regular expression 
>> "((((\p{L}|\p{N}|_)+)(\.(\p{L}|\p{N}|_))*:)((((\p{L})|(\p{N}))+)(((\.(\p{L}|\p{N}|_)+)*))?))". 
>>
>>
>> the document is NOT valid.
>>
>> it fails on this line:
>>                     <identifier type="OSIS">Bible.NASB</identifier>
>>
>>
>> Here's the head of the doc:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <osis xmlns="http://www.bibletechnologies.net/2003/OSIS/namespace" 
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
>> xsi:schemaLocation="http://www.bibletechnologies.net/2003/OSIS/namespace 
>> osisCore.1.9.xsd">
>>      <osisText osisIDWork="nasb" xml:lang="en">
>>           <header>
>>                <work osisWork="nasb">
>>                     <title>NEW AMERICAN STANDARD BIBLE</title>
>>                     <identifier type="OSIS">Bible.NASB</identifier>
>>                     <rights>Copyright (C) 
>> 1960,1962,1963,1968,1971,1972,1973,1975,1977,1995 by THE LOCKMAN 
>> FOUNDATION</rights>
>>                     <refSystem>Bible</refSystem>
>>                </work>
>>                <work osisWork="strongs">
>>                </work>
>>           </header>
>>
>>
>> <div type="book" osisID="Matt"><title type="main" 
>> subType="x-Book">MATTHEW</title>
>> <chapter osisID="Matt.1"><title type="sub" subType="x-Chapter">CHAPTER 
>> 1</title>
>> <title type="sub" subType="x-Section">The Genealogy of Jesus the 
>> Messiah</title>
>> <verse osisID="Matt.1.1"><w lemma="strongs:G976">The <note 
>> type="explanation" osisID="Matt.1.1.note.1" n="1"></note>record</w> <w 
>> lemma="strongs:G1078">of the genealogy</w> <w lemma="strongs:G2424">of 
>> <note type="explanation" osisID="Matt.1.1.note.2" 
>> n="2"></note>Jesus</w> <note type="explanation" 
>> osisID="Matt.1.1.note.3" n="3"></note><w lemma="strongs:G5547">the 
>> Messiah</w>, <note type="crossReference" osisID="Matt.1.1.xref.A" 
>> n="A"></note><w lemma="strongs:G5207">the son</w> <w 
>> lemma="strongs:G1160b">of David</w>, <note type="crossReference" 
>> osisID="Matt.1.1.xref.B" n="B"></note><w lemma="strongs:G5207">the 
>> son</w> <w lemma="strongs:G11">of Abraham</w>:
>> <milestone type="line" subType="x-PM"/></verse><verse 
>> osisID="Matt.1.2"><w lemma="strongs:G11">Abraham</w> <note 
>> type="explanation" osisID="Matt.1.2.note.1" n="1"></note><w 
>> lemma="strongs:G1080">was the father</w> <w lemma="strongs:G2464">of 
>> Isaac</w>, <note type="explanation" osisID="Matt.1.2.note.2" 
>> n="2"></note><w lemma="strongs:G2464">Isaac</w> <w 
>> lemma="strongs:G1080">the father</w> <w lemma="strongs:G2384">of 
>> Jacob</w>, <w lemma="strongs:G2384">and Jacob</w> <w 
>> lemma="strongs:G1080">the father</w> <w lemma="strongs:G2455">of <note 
>> type="explanation" osisID="Matt.1.2.note.3" n="3"></note>Judah</w> <w 
>> lemma="strongs:G80">and his brothers</w>.
>> </verse><verse osisID="Matt.1.3"><w lemma="strongs:G2455">Judah</w> <w 
>> lemma="strongs:G1080">was the father</w> <w lemma="strongs:G5329">of 
>> Perez</w> <w lemma="strongs:G2196">and Zerah</w> <w 
>> lemma="strongs:G2283">by Tamar</w>, <note type="crossReference" 
>> osisID="Matt.1.3.xref.A" n="A"></note><w 
>> lemma="strongs:G5329">Perez</w> <w lemma="strongs:G1080">was the 
>> father</w> <w lemma="strongs:G2074">of Hezron</w>, <w 
>> lemma="strongs:G2074">and Hezron</w> <w lemma="strongs:G1080">the 
>> father</w> <w lemma="strongs:G689">of <note type="explanation" 
>> osisID="Matt.1.3.note.1" n="1"></note>Ram</w>.
>>
>> Patrick Durusau wrote:
>>
>>> Guys,
>>>
>>> Getting closer all the time!
>>>
>>> Note that I have added an enumerated type on <seg> of otPassage. That 
>>> allows Troy to avoid default rendering of quotes but also allows me 
>>> to avoid trying to add another content model when I am already tired.
>>>
>>> Should Troy's analysis of usage prove accurate, which it very well 
>>> may, we may need to revisit this issue for this type of passage and 
>>> others. For my part, if "the very stones would cry out," the Rolling 
>>> Stones that is, we may need to revisit this issue. ;-)
>>>
>>> I think this is about as close as I can get today. Please run your 
>>> various texts against it and let me know the results.
>>>
>>> Really do appreciate all the hard work!
>>>
>>> Hope everyone is having a great day!
>>>
>>> Patrick
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>>
>>> <xs:schema 
>>> targetNamespace="http://www.bibletechnologies.net/2003/OSIS/namespace" 
>>> xmlns="http://www.bibletechnologies.net/2003/OSIS/namespace" 
>>> xmlns:xs="http://www.w3.org/2001/XMLSchema" 
>>> elementFormDefault="qualified" attributeFormDefault="unqualified" 
>>> xml:lang="en">
>>>
>>>     <xs:import namespace="http://www.w3.org/XML/1998/namespace" 
>>> schemaLocation="http://www.w3.org/2001/xml.xsd"/>
>>>
>>>     <xs:annotation>
>>>
>>>         <xs:documentation>
>>>
>>>             <p>Welcome to the OSIS 2.0 schema for encoding biblical 
>>> literature! This schema is designed as the common set of elements 
>>> necessary to encode bibles and related literature in XML. It provides 
>>> all the functions needed by most users and modules with enhanced 
>>> abilities are being developed to work with this schema. The user will 
>>> be able to learn a core set of elements, the ones in this schema, and 
>>> then leverage that knowledge by adding the appropriate elements from 
>>> the additional modules if necessary. This is a revision of the OSIS 
>>> 1.5 schema. There have been a number of changes and modifications to 
>>> make the schema more flexible.</p>
>>>
>>>             <p>Among the major changes are:</p>
>>>
>>>             <p> 1) The basic hierarchy of an OSIS encoded document is 
>>> that of &lt;div&gt;/&lt;p&gt;. Recognizing that many users would 
>>> prefer the semantics of &lt;div&gt; type=book, &lt;chapter&gt;, 
>>> &lt;verse&gt;, elements for those divisions have been included. It is 
>>> always possible to derive the div/chapter/verse division from the 
>>> div/p hierarchy but the converse is not true. Therefore, the div/p 
>>> hierarchy has priority and all other elements break if they must 
>>> cross the boundaries of those elements. To make the breaking of those 
>>> elements easier, the revised OSIS schema allows &lt;abbr&gt;, 
>>> &lt;chapter&gt;, &lt;closer&gt;, &lt;div&gt;, &lt;foreign&gt;, 
>>> &lt;l&gt;, &lt;lg&gt;, &lt;q&gt;, &lt;salute&gt;, &lt;seg&gt;, 
>>> &lt;signed&gt;, &lt;speech&gt;, &lt;verse&gt;, to be encoded as empty 
>>> elements, bearing an sID on the starting empty element and eID of the 
>>> same value on the ending empty element. The sID and eID, allows 
>>> identification of whether the empty element is a beginning or ending
>>
>>
>> milestone, which may be important for processing for display or in XML 
>> fragment situations. In some cases, even though the schema technically 
>> permits a &lt;chapter&gt; element as a child of &lt;verse&gt; for 
>> example, it is constrained in prose to appear only as the empty 
>> element milestone version of that element. This was required due to 
>> the modern practice of ignoring the classic book/chapter/verse 
>> divisioning of the text while retaining the older division for 
>> reference purposes.</p>
>>
>>>
>>>             <p> 2) Numerous &lt;div&gt; types have been added, such 
>>> as afterword, front, map, etc. See the simpleType: osisDivs.</p>
>>>
>>>             <p> 3) Since this schema is intended for use with 
>>> biblical texts, an attribute to allow elements to be marked as 
>>> canonical has been added. By default, the canonical attribute has 
>>> been set to true, for verses and false for notes and titles. Whether 
>>> a portion of text is canonical or not, is inherited from its 
>>> container element. Thus, all text found in a verse, is canonical, 
>>> while all the text within a note (or its subelements) is not. The 
>>> title and head elements may contain text that is canonical or may be 
>>> material added by a translator.</p>
>>>
>>>             <p>The core elements that would be used for encoding a 
>>> Bible or related text number 45 (excluding the header and large 
>>> container elements such as osisText. This is less than HTML 3.2, 
>>> which to date is one of the most widely used markup languages. It is 
>>> suggested that beginning users start with one of the sample documents 
>>> and suggested passages to begin using the core element set for basic 
>>> markup. Once you have mastered the basic uses of the core set, you 
>>> can move onto using some of the optional attributes and features of 
>>> the core set.</p>
>>>
>>>             <p>The OSIS family of schemas is definitely a work in 
>>> progress and is supported by both the American Bible Society and the 
>>> Society of Biblical literature, with additional contributions from 
>>> the United Bible Society and SIL, as well as tireless efforts of 
>>> numerous volunteers. While freely available for all purposes, it is 
>>> requested that use of the schemas be acknowledged as appropriate and 
>>> that problems or suggestions for improvements be forwarded to the 
>>> project.</p>
>>>
>>>             <p>The OSIS schemas were written by a small core of 
>>> technical and content experts who volunteered large blocks of time 
>>> for this project: Steve DeRose (sderose@acm.org), co-chair of the 
>>> Bible Technologies Group (co-sponsored by the ABS and SBL), Kees De 
>>> Blois, co-chair of the Bible Technologies Group (kdeblois@solcon.nl), 
>>> Troy Griffitts (scribe@crosswire.org), Chris Little 
>>> (chrislit@crosswire.org), Todd Tillinghast 
>>> (todd@contentframeworks.com), Harry Plantinga (hplantin@calvin.edu), 
>>> Eric Albright (eric-allison_albright@sil.org), Kirk Lowery 
>>> (klowery@wts.edu), and Patrick Durusau 
>>> (Patrick.Durusau@sbl-site.org).</p>
>>>
>>>             <p>Outside of the core technical team, special thanks go 
>>> to Adina Hamik (ABS), Bob Hodgson (ABS), John Walter (ABS) and Mike 
>>> Perez (eABS) for their organization of both domestic and 
>>> international meetings of the OSIS project and their unflagging 
>>> support for its efforts.</p>
>>>
>>>             <p>While the history of the OSIS project is ongoing, 
>>> users should be aware of the pivotal role of Dennis Drescher 
>>> (Dennis_Drescher@sil.org) in his organization of a breakfast meeting 
>>> at XML 2000 on Bible encoding that lead to the formation of the Bible 
>>> Technologies Group and hence the OSIS project.</p>
>>>
>>>             <p>The fundamental goal of the OSIS project is to provide 
>>> a common format that supports multiple visions of and purposes for 
>>> Bibles and related texts. By pooling the interests of the wide 
>>> variety of communities interested in biblical texts, the OSIS project 
>>> seeks to provide the basis for tools and texts that will benefit all 
>>> of these diverse communities.</p>
>>>
>>>             <p>The lastest version of the OSIS schema and user 
>>> documentation can always be found at: 
>>> http://www.bibletechnologies.org and comments can be forewarded to 
>>> the OSIS Technical Editors, Patrick Durusau, 
>>> Patrick.Durusau@sbl-site.org or Steve DeRose, sderose@acm.org.</p>
>>>
>>>         </xs:documentation>
>>>
>>>     </xs:annotation>
>>>
>>>     <xs:element name="osis" type="osisCT"/>
>>>
>>>     <xs:complexType name="osisCT">
>>>
>>>         <xs:choice>
>>>
>>>             <xs:element name="osisCorpus" type="osisCorpusCT" 
>>> minOccurs="0"/>
>>>
>>>             <xs:element name="osisText" type="osisTextCT" 
>>> minOccurs="0"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="TEIform" fixed="TEI.2"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="osisCorpusCT">
>>>
>>>         <xs:sequence maxOccurs="unbounded">
>>>
>>>             <xs:element name="header" type="headerCT" minOccurs="0"/>
>>>
>>>             <xs:element name="titlePage" type="titlePageCT" 
>>> minOccurs="0" maxOccurs="1"/>
>>>
>>>             <xs:element name="osisText" type="osisTextCT"/>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="TEIform" fixed="teiCorpus.2"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="osisTextCT">
>>>
>>>         <xs:sequence>
>>>
>>>             <xs:element name="header" type="headerCT"/>
>>>
>>>             <xs:element name="titlePage" type="titlePageCT" 
>>> minOccurs="0" maxOccurs="1"/>
>>>
>>>             <xs:element name="div" type="divCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="annotateRef" type="annotateRefType" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional" default="true"/>
>>>
>>>                 <xs:attribute name="ID" type="xs:ID" use="optional"/>
>>>
>>>         <xs:attribute name="osisID" type="osisIDType" use="optional"/>
>>>
>>>         <xs:attribute name="osisIDWork" type="osisWorkType" 
>>> use="required"/>
>>>
>>>         <xs:attribute name="osisRefWork" type="osisWorkType" 
>>> use="optional" default="Bible"/>
>>>
>>>         <xs:attribute name="type" type="attributeExtension" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="subType" type="attributeExtension" 
>>> use="optional"/>
>>>
>>>         <xs:attribute ref="xml:lang" use="required"/>
>>>
>>>         <xs:attribute ref="xml:space" default="default"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="text"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="headerCT">
>>>
>>>         <xs:sequence>
>>>
>>>             <xs:element name="revisionDesc" type="revisionDescCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="work" type="workCT" 
>>> maxOccurs="unbounded"/>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="TEIform" fixed="teiHeader"/>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional" default="false"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <!-- elements for header, with exceptions of title and head which 
>>> are found with regular OSIS elements -->
>>>
>>>     <xs:complexType name="actorCT">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="who" type="xs:string" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="actor"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="castGroupCT">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="head" type="headCT"/>
>>>
>>>             <xs:element name="castItem" type="castItemCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="castGroup"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="castItemCT">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="actor" type="actorCT"/>
>>>
>>>             <xs:element name="role" type="roleCT"/>
>>>
>>>             <xs:element name="roleDesc" type="roleDescCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="castItem"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="castListCT">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="castGroup" type="castGroupCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="castList"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="contributorCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="file-as" type="xs:string" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="role" type="roleType" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>  
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="coverageCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="creatorCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attribute name="role" type="roleType" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="descriptionCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="formatCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="identifierCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>                 <xs:attribute name="type" type="osisGenType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="languageCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attribute name="use" type="languageUsage"/>
>>>                 <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="publisherCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="refSystemCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="relationCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="revisionDescCT">
>>>
>>>         <xs:sequence>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="p" type="pCT" maxOccurs="unbounded"/>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="revisionDesc"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="rightsCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="roleCT">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="role"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="roleDescCT">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="roleDesc"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="subjectCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="type" type="osisGenType" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithoutType"/>  
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="sourceCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                     <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="scopeCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="osisRefType">
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="teiHeaderCT" mixed="true">
>>>
>>>         <xs:sequence>
>>>
>>>             <xs:any processContents="skip" maxOccurs="unbounded"/>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="TEIform" fixed="teiHeader"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="typeCT">
>>>
>>>         <xs:simpleContent>
>>>
>>>             <xs:extension base="xs:string">
>>>
>>>                     <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="type" type="typeType" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:simpleContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="workCT">
>>>
>>>         <xs:sequence>
>>>
>>>             <xs:element name="title" type="titleCT" minOccurs="0"/>
>>>
>>>             <xs:element name="contributor" type="contributorCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="creator" type="creatorCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="subject" type="subjectCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="date" type="dateCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="description" type="descriptionCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="publisher" type="publisherCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="type" type="typeCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="format" type="formatCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="identifier" type="identifierCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="source" type="sourceCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="language" type="languageCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="relation" type="relationCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="coverage" type="coverageCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="rights" type="rightsCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="scope" type="scopeCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="castList" type="castListCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>             <xs:element name="teiHeader" type="teiHeaderCT" 
>>> minOccurs="0"/>
>>>
>>>             <xs:element name="refSystem" type="refSystemCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="osisWork" type="osisWorkType" 
>>> use="required"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <!-- end of header elements -->
>>>
>>>     <!-- beginning of elements that occur within <div>, the main OSIS 
>>> container element under <osisText> -->
>>>
>>>     <xs:complexType name="aCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="href" type="xs:string" use="required"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="abbrCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="expansion" type="xs:string" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="abbr"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="captionCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="figDesc"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="catchWordCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="inscription" type="inscriptionCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="list" type="listCT"/>
>>>
>>>             <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="speaker" type="speakerCT"/>
>>>
>>>             <xs:element name="title" type="titleCT"/>
>>>
>>>             <xs:element name="transChange" type="transChangeCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="osisRef" type="osisRefType" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="cellCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="figure" type="figureCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="inscription" type="inscriptionCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="lg" type="lgCT"/>
>>>
>>>             <xs:element name="list" type="listCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="p" type="pCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="salute" type="saluteCT"/>
>>>
>>>             <xs:element name="seq" type="segCT"/>
>>>
>>>             <xs:element name="signed" type="signedCT"/>
>>>
>>>             <xs:element name="speaker" type="speakerCT"/>
>>>
>>>             <xs:element name="speech" type="speechCT"/>
>>>
>>>             <xs:element name="table" type="tableCT"/>
>>>
>>>             <xs:element name="title" type="titleCT"/>
>>>
>>>             <xs:element name="transChange" type="transChangeCT"/>
>>>
>>>             <xs:element name="verse" type="verseCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="role" type="tableRole" use="optional" 
>>> default="data"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="cell"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="chapterCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="date" type="dateCT"/>
>>>
>>>                     <xs:element name="div" type="divCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="figure" type="figureCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="inscription" 
>>> type="inscriptionCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="lg" type="lgCT"/>
>>>
>>>                     <xs:element name="list" type="listCT"/>
>>>
>>>                     <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="p" type="pCT"/>
>>>
>>>                     <xs:element name="q" type="qCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="salute" type="saluteCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="signed" type="signedCT"/>
>>>
>>>                     <xs:element name="speaker" type="speakerCT"/>
>>>
>>>                     <xs:element name="speech" type="speechCT"/>
>>>
>>>                     <xs:element name="table" type="tableCT"/>
>>>
>>>                     <xs:element name="title" type="titleCT"/>
>>>
>>>                     <xs:element name="transChange" 
>>> type="transChangeCT"/>
>>>
>>>                     <xs:element name="verse" type="verseCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="chapterTitle" type="xs:string" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="osisRef" type="osisRefType" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="div"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="closerCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="date" type="dateCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="lg" type="lgCT"/>
>>>
>>>                     <xs:element name="list" type="listCT"/>
>>>
>>>                     <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="p" type="pCT"/>
>>>
>>>                     <xs:element name="q" type="qCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="signed" type="signedCT"/>
>>>
>>>                     <xs:element name="speaker" type="speakerCT"/>
>>>
>>>                     <xs:element name="transChange" 
>>> type="transChangeCT"/>
>>>
>>>                     <xs:element name="verse" type="verseCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="closer"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="dateCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="event" type="eventType" use="optional"/>
>>>
>>>         <xs:attribute name="type" type="calendar" use="optional" 
>>> default="ISO"/>
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="date"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="divCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>             <xs:sequence>
>>>
>>>                 <xs:element name="titlePage" type="titlePageCT" 
>>> minOccurs="0" maxOccurs="1"/>
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="chapter" type="chapterCT"/>
>>>
>>>                     <xs:element name="date" type="dateCT"/>
>>>
>>>                     <xs:element name="div" type="divCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="figure" type="figureCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="inscription" 
>>> type="inscriptionCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="lg" type="lgCT"/>
>>>
>>>                     <xs:element name="list" type="listCT"/>
>>>
>>>                     <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="p" type="pCT"/>
>>>
>>>                     <xs:element name="q" type="qCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="salute" type="saluteCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="signed" type="signedCT"/>
>>>
>>>                     <xs:element name="speaker" type="speakerCT"/>
>>>
>>>                     <xs:element name="speech" type="speechCT"/>
>>>
>>>                     <xs:element name="table" type="tableCT"/>
>>>
>>>                     <xs:element name="title" type="titleCT"/>
>>>
>>>                     <xs:element name="transChange" 
>>> type="transChangeCT"/>
>>>
>>>                     <xs:element name="verse" type="verseCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 </xs:sequence>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> default="false" use="optional"/>
>>>
>>>                 <xs:attribute name="osisRef" type="osisRefType" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="scope" type="osisRefType" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="type" type="divType" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="div"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="divineNameCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="figureCT">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="caption" type="captionCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="alt" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="osisRef" type="osisRefType" use="optional"/>
>>>
>>>         <xs:attribute name="src" type="xs:string"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="figure"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="foreignCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="date" type="dateCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="title" type="titleCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="foreign"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="headCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="head" type="headCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="head"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="hiCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="type" type="hiType" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="hi"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="indexCT">
>>>
>>>     <xs:attribute name="canonical" type="xs:boolean" use="optional"/>
>>>
>>>         <xs:attribute name="index" type="xs:string" use="required"/>
>>>
>>>         <xs:attribute name="level1" type="xs:string" use="required"/>
>>>
>>>         <xs:attribute name="level2" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="level3" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="level4" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="see" type="xs:string" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="index"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="inscriptionCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="speaker" type="speakerCT"/>
>>>
>>>             <xs:element name="speech" type="speechCT"/>
>>>
>>>             <xs:element name="title" type="titleCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="itemCT" mixed="true">
>>>
>>>         <xs:sequence minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="label" type="labelCT" minOccurs="0"/>
>>>
>>>             <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                 <xs:element name="a" type="aCT"/>
>>>
>>>                 <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                 <xs:element name="date" type="dateCT"/>
>>>
>>>                 <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                 <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                 <xs:element name="hi" type="hiCT"/>
>>>
>>>                 <xs:element name="index" type="indexCT"/>
>>>
>>>                 <xs:element name="lg" type="lgCT"/>
>>>
>>>                 <xs:element name="list" type="listCT"/>
>>>
>>>                 <xs:element name="lb" type="lbCT"/>
>>>
>>>                 <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                 <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>                 <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                 <xs:element name="name" type="nameCT"/>
>>>
>>>                 <xs:element name="note" type="noteCT"/>
>>>
>>>                 <xs:element name="p" type="pCT"/>
>>>
>>>                 <xs:element name="q" type="qCT"/>
>>>
>>>                 <xs:element name="reference" type="referenceCT"/>
>>>
>>>                 <xs:element name="seg" type="segCT"/>
>>>
>>>                 <xs:element name="title" type="titleCT"/>
>>>
>>>                 <xs:element name="transChange" type="transChangeCT"/>
>>>
>>>                 <xs:element name="verse" type="verseCT"/>
>>>
>>>                 <xs:element name="w" type="wCT"/>
>>>
>>>             </xs:choice>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="role" type="xs:string" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="item"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="labelCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="transChange" type="transChangeCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="role" type="xs:string" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="label"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="lCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="chapter" type="chapterCT"/>
>>>
>>>                     <xs:element name="date" type="dateCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="q" type="qCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="speaker" type="speakerCT"/>
>>>
>>>                     <xs:element name="transChange" 
>>> type="transChangeCT"/>
>>>
>>>                     <xs:element name="verse" type="verseCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="level" type="xs:positiveInteger" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="l"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="lbCT">
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="milestone"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="lgCT" mixed="false">
>>>
>>>         <xs:complexContent>
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="chapter" type="chapterCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="l" type="lCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="lg" type="lgCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="q" type="qCT"/>
>>>
>>>                     <xs:element name="verse" type="verseCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="lg"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="listCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="chapter" type="chapterCT"/>
>>>
>>>             <xs:element name="head" type="headCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="item" type="itemCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="list" type="listCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="verse" type="verseCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="list"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="mentionedCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="transChange" type="transChangeCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="mentioned"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="milestoneCT">
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="type" type="milestonePt"/>
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="milestone"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="milestoneEndCT">
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="type" type="milestoneSe"/>
>>>
>>>         <xs:attribute name="start" type="xs:string" use="required"/>
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="milestone"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="milestoneStartCT">
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="end" type="xs:string" use="required"/>
>>>
>>>         <xs:attribute name="type" type="milestoneSe"/>
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="milestone"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="nameCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="regular" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="type" type="nameType" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="name"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="noteCT" mixed="true">
>>>
>>>         <xs:sequence>
>>>
>>>             <xs:element name="note" type="noteCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>             <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                 <xs:element name="a" type="aCT"/>
>>>
>>>                 <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                 <xs:element name="catchWord" type="catchWordCT"/>
>>>
>>>                 <xs:element name="date" type="dateCT"/>
>>>
>>>                 <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                 <xs:element name="figure" type="figureCT"/>
>>>
>>>                 <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                 <xs:element name="hi" type="hiCT"/>
>>>
>>>                 <xs:element name="index" type="indexCT"/>
>>>
>>>                 <xs:element name="inscription" type="inscriptionCT"/>
>>>
>>>                 <xs:element name="lb" type="lbCT"/>
>>>
>>>                 <xs:element name="lg" type="lgCT"/>
>>>
>>>                 <xs:element name="list" type="listCT"/>
>>>
>>>                 <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>                 <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                 <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>                 <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                 <xs:element name="name" type="nameCT"/>
>>>
>>>                 <xs:element name="p" type="pCT"/>
>>>
>>>                 <xs:element name="q" type="qCT"/>
>>>
>>>                 <xs:element name="rdg" type="rdgCT"/>
>>>
>>>                 <xs:element name="reference" type="referenceCT"/>
>>>
>>>                 <xs:element name="seg" type="segCT"/>
>>>
>>>                 <xs:element name="table" type="tableCT"/>
>>>
>>>                 <xs:element name="title" type="titleCT"/>
>>>
>>>                 <xs:element name="verse" type="verseCT"/>
>>>
>>>                 <xs:element name="w" type="wCT"/>
>>>
>>>             </xs:choice>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional" default="false"/>
>>>
>>>         <xs:attribute name="osisRef" type="osisRefType" use="optional"/>
>>>
>>>         <xs:attribute name="type" type="noteType" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="note"/>
>>>
>>>     </xs:complexType>
>>>
>>>
>>>     <xs:complexType name="pCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="catchWord" type="catchWordCT"/>
>>>
>>>             <xs:element name="chapter" type="chapterCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="figure" type="figureCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="inscription" type="inscriptionCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="lg" type="lgCT"/>
>>>
>>>             <xs:element name="list" type="listCT"/>
>>>
>>>             <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="rdg" type="rdgCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="salute" type="saluteCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="signed" type="signedCT"/>
>>>
>>>             <xs:element name="speaker" type="speakerCT"/>
>>>
>>>             <xs:element name="speech" type="speechCT"/>
>>>
>>>             <xs:element name="table" type="tableCT"/>
>>>
>>>             <xs:element name="title" type="titleCT"/>
>>>
>>>             <xs:element name="transChange" type="transChangeCT"/>
>>>
>>>             <xs:element name="verse" type="verseCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="p"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="qCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="date" type="dateCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="inscription" 
>>> type="inscriptionCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="lg" type="lgCT"/>
>>>
>>>                     <xs:element name="list" type="listCT"/>
>>>
>>>                     <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="p" type="pCT"/>
>>>
>>>                     <xs:element name="q" type="qCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="salute" type="saluteCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="signed" type="signedCT"/>
>>>
>>>                     <xs:element name="speaker" type="speakerCT"/>
>>>
>>>                     <xs:element name="transChange" 
>>> type="transChangeCT"/>
>>>
>>>                     <xs:element name="verse" type="verseCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="level" type="xs:string" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="osisRef" type="osisRefType" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="type" type="quoteType" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="who" type="xs:string" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="q"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="rdgCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="lg" type="lgCT"/>
>>>
>>>             <xs:element name="list" type="listCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="p" type="pCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="transChange" type="transChangeCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="rdg"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="referenceCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="title" type="titleCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional" default="false"/>
>>>
>>>         <xs:attribute name="osisRef" type="osisRefType" use="optional"/>
>>>
>>>         <xs:attribute name="type" type="referenceType" use="optional" />
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="rowCT">
>>>
>>>         <xs:sequence>
>>>
>>>             <xs:element name="cell" type="cellCT" 
>>> maxOccurs="unbounded"/>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="role" type="tableRole" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="row"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="saluteCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="date" type="dateCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="lg" type="lgCT"/>
>>>
>>>                     <xs:element name="list" type="listCT"/>
>>>
>>>                     <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="p" type="pCT"/>
>>>
>>>                     <xs:element name="q" type="qCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="speaker" type="speakerCT"/>
>>>
>>>                     <xs:element name="transChange" 
>>> type="transChangeCT"/>
>>>
>>>                     <xs:element name="verse" type="verseCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="salute"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="segCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="date" type="dateCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="q" type="qCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="transChange" 
>>> type="transChangeCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attribute name="type" type="segType" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="seg"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="signedCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="signed"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="speakerCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="who" type="xs:string" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="sp"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="speechCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:sequence>
>>>
>>>                     <xs:element name="speech" type="speechCT" 
>>> minOccurs="0" maxOccurs="unbounded"/>
>>>
>>>                     <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                         <xs:element name="a" type="aCT"/>
>>>
>>>                         <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                         <xs:element name="chapter" type="chapterCT"/>
>>>
>>>                         <xs:element name="date" type="dateCT"/>
>>>
>>>                         <xs:element name="divineName" 
>>> type="divineNameCT"/>
>>>
>>>                         <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                         <xs:element name="hi" type="hiCT"/>
>>>
>>>                         <xs:element name="index" type="indexCT"/>
>>>
>>>                         <xs:element name="inscription" 
>>> type="inscriptionCT"/>
>>>
>>>                         <xs:element name="lb" type="lbCT"/>
>>>
>>>                         <xs:element name="lg" type="lgCT"/>
>>>
>>>                         <xs:element name="list" type="listCT"/>
>>>
>>>                         <xs:element name="mentioned" 
>>> type="mentionedCT"/>
>>>
>>>                         <xs:element name="milestone" 
>>> type="milestoneCT"/>
>>>
>>>                         <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                         <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                         <xs:element name="name" type="nameCT"/>
>>>
>>>                         <xs:element name="note" type="noteCT"/>
>>>
>>>                         <xs:element name="p" type="pCT"/>
>>>
>>>                         <xs:element name="q" type="qCT"/>
>>>
>>>                         <xs:element name="reference" 
>>> type="referenceCT"/>
>>>
>>>                         <xs:element name="salute" type="saluteCT"/>
>>>
>>>                         <xs:element name="seg" type="segCT"/>
>>>
>>>                         <xs:element name="signed" type="signedCT"/>
>>>
>>>                         <xs:element name="speaker" type="speakerCT"/>
>>>
>>>                         <xs:element name="table" type="tableCT"/>
>>>
>>>                         <xs:element name="title" type="titleCT"/>
>>>
>>>                         <xs:element name="transChange" 
>>> type="transChangeCT"/>
>>>
>>>                         <xs:element name="verse" type="verseCT"/>
>>>
>>>                         <xs:element name="w" type="wCT"/>
>>>
>>>                     </xs:choice>
>>>
>>>                 </xs:sequence>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>                 <xs:attribute name="TEIform" fixed="speech"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="tableCT">
>>>
>>>         <xs:sequence>
>>>
>>>             <xs:element name="head" type="headCT" minOccurs="0"/>
>>>
>>>             <xs:element name="row" type="rowCT" minOccurs="0" 
>>> maxOccurs="unbounded"/>
>>>
>>>         </xs:sequence>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="cols" type="xs:positiveInteger" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="rows" type="xs:positiveInteger" 
>>> use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="table"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="titleCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="figure" type="figureCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="inscription" type="inscriptionCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="lg" type="lgCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="q" type="qCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="title" type="titleCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional" default="false"/>
>>>
>>>         <xs:attribute name="short" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="type" type="osisTitleType" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="title"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="titlePageCT">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                 <xs:element name="title" type="titleCT"/>
>>>
>>>             <xs:element name="contributor" type="contributorCT"/>
>>>
>>>             <xs:element name="creator" type="creatorCT"/>
>>>
>>>             <xs:element name="subject" type="subjectCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="description" type="descriptionCT"/>
>>>
>>>             <xs:element name="publisher" type="publisherCT"/>
>>>
>>>             <xs:element name="type" type="typeCT"/>
>>>
>>>             <xs:element name="format" type="formatCT"/>
>>>
>>>             <xs:element name="identifier" type="identifierCT"/>
>>>
>>>             <xs:element name="source" type="sourceCT"/>
>>>
>>>             <xs:element name="language" type="languageCT"/>
>>>
>>>             <xs:element name="relation" type="relationCT"/>
>>>
>>>             <xs:element name="coverage" type="coverageCT"/>
>>>
>>>             <xs:element name="p" type="pCT"/>
>>>
>>>             <xs:element name="figure" type="figureCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         </xs:complexType>
>>>
>>>     <xs:complexType name="transChangeCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="abbr" type="abbrCT"/>
>>>
>>>             <xs:element name="date" type="dateCT"/>
>>>
>>>             <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>             <xs:element name="foreign" type="foreignCT"/>
>>>
>>>             <xs:element name="hi" type="hiCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="lb" type="lbCT"/>
>>>
>>>             <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>             <xs:element name="milestoneEnd" type="milestoneEndCT"/>
>>>
>>>             <xs:element name="milestoneStart" type="milestoneStartCT"/>
>>>
>>>             <xs:element name="name" type="nameCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="reference" type="referenceCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>             <xs:element name="w" type="wCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="type" type="changeType" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithoutType"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="verseCT" mixed="true">
>>>
>>>         <xs:complexContent mixed="true">
>>>
>>>             <xs:extension base="milestoneable">
>>>
>>>                 <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>                     <xs:element name="a" type="aCT"/>
>>>
>>>                     <xs:element name="abbr" type="abbrCT"/>
>>>
>>>                     <xs:element name="chapter" type="chapterCT"/>
>>>
>>>                     <xs:element name="date" type="dateCT"/>
>>>
>>>                     <xs:element name="divineName" type="divineNameCT"/>
>>>
>>>                     <xs:element name="foreign" type="foreignCT"/>
>>>
>>>                     <xs:element name="hi" type="hiCT"/>
>>>
>>>                     <xs:element name="index" type="indexCT"/>
>>>
>>>                     <xs:element name="inscription" 
>>> type="inscriptionCT"/>
>>>
>>>                     <xs:element name="lb" type="lbCT"/>
>>>
>>>                     <xs:element name="list" type="listCT"/>
>>>
>>>                     <xs:element name="mentioned" type="mentionedCT"/>
>>>
>>>                     <xs:element name="milestone" type="milestoneCT"/>
>>>
>>>                     <xs:element name="milestoneEnd" 
>>> type="milestoneEndCT"/>
>>>
>>>                     <xs:element name="milestoneStart" 
>>> type="milestoneStartCT"/>
>>>
>>>                     <xs:element name="name" type="nameCT"/>
>>>
>>>                     <xs:element name="note" type="noteCT"/>
>>>
>>>                     <xs:element name="q" type="qCT"/>
>>>
>>>                     <xs:element name="reference" type="referenceCT"/>
>>>
>>>                     <xs:element name="seg" type="segCT"/>
>>>
>>>                     <xs:element name="speaker" type="speakerCT"/>
>>>
>>>                     <xs:element name="title" type="titleCT"/>
>>>
>>>                     <xs:element name="transChange" 
>>> type="transChangeCT"/>
>>>
>>>                     <xs:element name="w" type="wCT"/>
>>>
>>>                 </xs:choice>
>>>
>>>                 <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional" default="true"/>
>>>
>>>                 <xs:attributeGroup ref="globalWithType"/>
>>>
>>>             </xs:extension>
>>>
>>>         </xs:complexContent>
>>>
>>>     </xs:complexType>
>>>
>>>     <xs:complexType name="wCT" mixed="true">
>>>
>>>         <xs:choice minOccurs="0" maxOccurs="unbounded">
>>>
>>>             <xs:element name="a" type="aCT"/>
>>>
>>>             <xs:element name="index" type="indexCT"/>
>>>
>>>             <xs:element name="note" type="noteCT"/>
>>>
>>>             <xs:element name="seg" type="segCT"/>
>>>
>>>         </xs:choice>
>>>
>>>         <xs:attribute name="canonical" type="xs:boolean" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="gloss" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="lemma" type="osisGenType" use="optional"/>
>>>
>>>         <xs:attribute name="morph" type="osisGenType" use="optional"/>
>>>
>>>         <xs:attribute name="POS" type="osisGenType" use="optional"/>
>>>
>>>         <xs:attribute name="src" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="xlit" type="xs:string" use="optional"/>
>>>
>>>         <xs:attributeGroup ref="globalWithType"/>
>>>
>>>         <xs:attribute name="TEIform" fixed="w"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <!-- attributes -->
>>>
>>>     <xs:attributeGroup name="globalWithType">
>>>
>>>         <xs:attribute name="annotateRef" type="annotateRefType" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="annotateWork" type="xs:string" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="annotateType" type="annotationType" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="ID" type="xs:ID" use="optional"/>
>>>
>>>         <xs:attribute name="osisID" type="osisIDType" use="optional"/>
>>>
>>>         <xs:attribute name="resp" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="type" type="attributeExtension" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="subType" type="attributeExtension" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="n" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute ref="xml:lang" use="optional"/>
>>>
>>>         <xs:attribute ref="xml:space" use="optional"/>
>>>
>>>         <xs:attribute name="script" type="osisScripts" use="optional"/>
>>>
>>>     </xs:attributeGroup>
>>>
>>>     <xs:attributeGroup name="globalWithoutType">
>>>
>>>         <xs:attribute name="annotateRef" type="annotateRefType" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="annotateWork" type="xs:string" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="annotateType" type="annotationType" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="ID" type="xs:ID" use="optional"/>
>>>
>>>         <xs:attribute name="osisID" type="osisIDType" use="optional"/>
>>>
>>>         <xs:attribute name="resp" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="subType" type="attributeExtension" 
>>> use="optional"/>
>>>
>>>         <xs:attribute name="n" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute ref="xml:lang" use="optional"/>
>>>
>>>         <xs:attribute ref="xml:space" use="optional"/>
>>>
>>>         <xs:attribute name="script" type="osisScripts" use="optional"/>
>>>
>>>     </xs:attributeGroup>
>>>
>>>     <!-- complex types -->
>>>
>>>     <xs:complexType name="milestoneable">
>>>
>>>         <xs:attribute name="sID" type="xs:string" use="optional"/>
>>>
>>>         <xs:attribute name="eID" type="xs:string" use="optional"/>
>>>
>>>     </xs:complexType>
>>>
>>>     <!-- OSIS regexes -->
>>>
>>> <xs:simpleType name="osisGenRegex">
>>>
>>>     <xs:restriction base="xs:string">
>>>
>>>         <xs:pattern 
>>> value="((((\p{L}|\p{N}|_)+)(\.(\p{L}|\p{N}|_))*:)((((\p{L})|(\p{N}))+)(((\.(\p{L}|\p{N}|_)+)*))?))"/> 
>>>
>>>
>>>     </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>> <xs:simpleType name="osisIDRegex">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:pattern 
>>> value="(((\p{L}|\p{N}|_)+)((\.(\p{L}|\p{N}|_)+)*)?:)?((\p{L}|\p{N}|_)+)((\.(\p{L}|\p{N}|_)+)*)?(!((\p{L}|\p{N}|_)+)((\.(\p{L}|\p{N}|_)+)*)?)?"/> 
>>>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>> <xs:simpleType name="osisRefRegex">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:pattern 
>>> value="(((\p{L}|\p{N}|_)+)((\.(\p{L}|\p{N}|_)+)*)?:)?((\p{L}|\p{N}|_)+)(\.(\p{L}|\p{N}|_)*)*(!((\p{L}|\p{N}|_)+)((\.(\p{L}|\p{N}|_)+)*)?)?(@(cp\[(\p{Nd})*\]|s\[(\p{L}|\p{N})+\](\[(\p{N})+\])?))?(\-((((\p{L}|\p{N}|_)+)(\.(\p{L}|\p{N}|_)*)*)+)(!((\p{L}|\p{N}|_)+)((\.(\p{L}|\p{N}|_)+)*)?)?(@(cp\[(\p{Nd})*\]|s\[(\p{L}|\p{N})+\](\[(\p{N})+\])?))?)?"/> 
>>>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>> <xs:simpleType name="osisScripts">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:pattern value="([A-Z][a-z]{3}|x-[A-Za-z0-9]+)"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>> <xs:simpleType name="osisWorkType">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:pattern 
>>> value="((\p{L}|\p{N}|_)+)((\.(\p{L}|\p{N}|_)+)*)?"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <!-- simple types -->
>>>
>>>     <xs:simpleType name="annotateRefType">
>>>
>>>                <xs:list itemType="osisAnnotateRefType"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="annotationType">
>>>
>>>         <xs:union memberTypes="osisAnnotation attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="attributeExtension">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:pattern value="x-([^\s])+"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="calendar">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="Chinese"/>
>>>
>>>             <xs:enumeration value="Gregorian"/>
>>>
>>>             <xs:enumeration value="Islamic"/>
>>>
>>>             <xs:enumeration value="ISO"/>
>>>
>>>             <xs:enumeration value="Jewish"/>
>>>
>>>             <xs:enumeration value="Julian"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="changeType">
>>>
>>>         <xs:union memberTypes="osisChanges attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="divType">
>>>
>>>         <xs:union memberTypes="osisDivs attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="eventType">
>>>
>>>         <xs:union memberTypes="osisEvents attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="hiType">
>>>
>>>          <xs:union memberTypes="osisHi attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="languageUsage">
>>>
>>>         <xs:union memberTypes="osisLanguageUsage attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="milestonePt">
>>>
>>>         <xs:union memberTypes="osisMilestonePt attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="milestoneSe">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="abbr"/>
>>>
>>>             <xs:enumeration value="chapter"/>
>>>
>>>             <xs:enumeration value="closer"/>
>>>
>>>             <xs:enumeration value="div"/>
>>>
>>>             <xs:enumeration value="foreign"/>
>>>
>>>             <xs:enumeration value="l"/>
>>>
>>>             <xs:enumeration value="lg"/>
>>>
>>>             <xs:enumeration value="q"/>
>>>
>>>             <xs:enumeration value="salute"/>
>>>
>>>             <xs:enumeration value="seg"/>
>>>
>>>             <xs:enumeration value="signed"/>
>>>
>>>             <xs:enumeration value="speech"/>
>>>
>>>             <xs:enumeration value="verse"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="nameType">
>>>
>>>         <xs:union memberTypes="osisNames attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="noteType">
>>>
>>>         <xs:union memberTypes="osisNotes attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="quoteType">
>>>
>>>         <xs:union memberTypes="osisQuotes attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="referenceType">
>>>
>>>         <xs:union memberTypes="osisReferences attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="segType">
>>>
>>>         <xs:union memberTypes="osisSegs attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="typeType">
>>>
>>>         <xs:union memberTypes="osisType attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisAnnotateRefType">
>>>
>>>                <xs:union memberTypes="osisRefRegex osisGenRegex"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisAnnotation">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="commentary"/>
>>>
>>>             <xs:enumeration value="exposition"/>
>>>
>>>             <xs:enumeration value="meditation"/>
>>>
>>>             <xs:enumeration value="outline"/>
>>>
>>>             <xs:enumeration value="rebuttal"/>
>>>
>>>             <xs:enumeration value="sermon"/>
>>>
>>>             <xs:enumeration value="studyGuide"/>
>>>
>>>             <xs:enumeration value="translation"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisChanges">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="added"/>
>>>
>>>             <xs:enumeration value="amplified"/>
>>>
>>>             <xs:enumeration value="changed"/>
>>>
>>>             <xs:enumeration value="deleted"/>
>>>
>>>             <xs:enumeration value="moved"/>
>>>
>>>             <xs:enumeration value="tenseChange"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisDivs">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="acknowledgement"/>
>>>
>>>             <xs:enumeration value="afterword"/>
>>>
>>>             <xs:enumeration value="annotant"/>
>>>
>>>             <xs:enumeration value="appendix"/>
>>>
>>>             <xs:enumeration value="article"/>
>>>
>>>             <xs:enumeration value="back"/>
>>>
>>>             <xs:enumeration value="body"/>
>>>
>>>             <xs:enumeration value="book"/>
>>>
>>>             <xs:enumeration value="bookGroup"/>
>>>
>>>             <xs:enumeration value="chapter"/>
>>>
>>>             <xs:enumeration value="colophon"/>
>>>
>>>             <xs:enumeration value="commentary"/>
>>>
>>>             <xs:enumeration value="concordance"/>
>>>
>>>             <xs:enumeration value="coverPage"/>
>>>
>>>             <xs:enumeration value="dedication"/>
>>>
>>>             <xs:enumeration value="devotional"/>
>>>
>>>             <xs:enumeration value="entry"/>
>>>
>>>             <xs:enumeration value="front"/>
>>>
>>>             <xs:enumeration value="gazetteer"/>
>>>
>>>             <xs:enumeration value="glossary"/>
>>>
>>>             <xs:enumeration value="imprimatur"/>
>>>
>>>             <xs:enumeration value="index"/>
>>>
>>>             <xs:enumeration value="introduction"/>
>>>
>>>             <xs:enumeration value="majorSection"/>
>>>
>>>             <xs:enumeration value="map"/>
>>>
>>>             <xs:enumeration value="outline"/>
>>>
>>>             <xs:enumeration value="paragraph"/>
>>>
>>>             <xs:enumeration value="part"/>
>>>
>>>             <xs:enumeration value="preface"/>
>>>
>>>             <xs:enumeration value="section"/>
>>>
>>>             <xs:enumeration value="subSection"/>
>>>
>>>             <xs:enumeration value="summary"/>
>>>
>>>             <xs:enumeration value="titlePage"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisEvents">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="edition"/>
>>>
>>>             <xs:enumeration value="eversion"/>
>>>
>>>             <xs:enumeration value="imprint"/>
>>>
>>>             <xs:enumeration value="original"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisGenType">
>>>
>>>                <xs:list itemType="osisGenRegex"/>
>>>
>>>     </xs:simpleType>
>>>
>>>
>>>
>>>     <xs:simpleType name="osisHi">
>>>
>>>          <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="bold"/>
>>>
>>>             <xs:enumeration value="illuminated"/>
>>>
>>>             <xs:enumeration value="italic"/>
>>>
>>>             <xs:enumeration value="line-through"/>
>>>
>>>             <xs:enumeration value="normal"/>
>>>
>>>             <xs:enumeration value="small-caps"/>
>>>
>>>             <xs:enumeration value="underline"/>
>>>
>>>          </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>     <xs:simpleType name="osisIDType">
>>>
>>>                <xs:list itemType="osisIDRegex"/>
>>>
>>>     </xs:simpleType>
>>>
>>>    
>>>         <xs:simpleType name="osisLanguageUsage">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="base"/>
>>>
>>>             <xs:enumeration value="didactic"/>
>>>
>>>             <xs:enumeration value="interlinear"/>
>>>
>>>             <xs:enumeration value="original"/>
>>>
>>>             <xs:enumeration value="quotation"/>
>>>
>>>             <xs:enumeration value="source"/>
>>>
>>>             <xs:enumeration value="target"/>
>>>
>>>             <xs:enumeration value="translation"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisLemma">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="Strong"/>
>>>
>>>             <xs:enumeration value="GK"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisMilestonePt">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="column"/>
>>>
>>>             <xs:enumeration value="cQuote"/>
>>>
>>>             <xs:enumeration value="footer"/>
>>>
>>>             <xs:enumeration value="halfLine"/>
>>>
>>>             <xs:enumeration value="header"/>
>>>
>>>             <xs:enumeration value="line"/>
>>>
>>>             <xs:enumeration value="pb"/>
>>>
>>>             <xs:enumeration value="screen"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisNames">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="geographic"/>
>>>
>>>             <xs:enumeration value="holiday"/>
>>>
>>>             <xs:enumeration value="nonhuman"/>
>>>
>>>             <xs:enumeration value="person"/>
>>>
>>>             <xs:enumeration value="ritual"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisNotes">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="allusion"/>
>>>
>>>             <xs:enumeration value="alternative"/>
>>>
>>>             <xs:enumeration value="background"/>
>>>
>>>             <xs:enumeration value="citation"/>
>>>
>>>             <xs:enumeration value="crossReference"/>
>>>
>>>             <xs:enumeration value="devotional"/>
>>>
>>>             <xs:enumeration value="encoder"/>
>>>
>>>             <xs:enumeration value="exegesis"/>
>>>
>>>             <xs:enumeration value="explanation"/>
>>>
>>>             <xs:enumeration value="speaker"/>
>>>
>>>             <xs:enumeration value="study"/>
>>>
>>>             <xs:enumeration value="translation"/>
>>>
>>>             <xs:enumeration value="variant"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisQuotes">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="block"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisReferences">
>>>
>>>                <xs:restriction base="xs:string">
>>>
>>>                  <xs:enumeration value="annotateRef"/>
>>>
>>>                  <xs:enumeration value="parallel"/>
>>>
>>>             </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisRefType">
>>>
>>>                <xs:list itemType="osisRefRegex"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisRoles">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="adp"/>
>>>
>>>             <xs:enumeration value="ann"/>
>>>
>>>             <xs:enumeration value="art"/>
>>>
>>>             <xs:enumeration value="aut"/>
>>>
>>>             <xs:enumeration value="aqt"/>
>>>
>>>             <xs:enumeration value="aft"/>
>>>
>>>             <xs:enumeration value="aui"/>
>>>
>>>             <xs:enumeration value="bnd"/>
>>>
>>>             <xs:enumeration value="bdd"/>
>>>
>>>             <xs:enumeration value="bkd"/>
>>>
>>>             <xs:enumeration value="bkp"/>
>>>
>>>             <xs:enumeration value="bjd"/>
>>>
>>>             <xs:enumeration value="bpd"/>
>>>
>>>             <xs:enumeration value="ctg"/>
>>>
>>>             <xs:enumeration value="clb"/>
>>>
>>>             <xs:enumeration value="cmm"/>
>>>
>>>             <xs:enumeration value="cwt"/>
>>>
>>>             <xs:enumeration value="com"/>
>>>
>>>             <xs:enumeration value="ctb"/>
>>>
>>>             <xs:enumeration value="cre"/>
>>>
>>>             <xs:enumeration value="edt"/>
>>>
>>>             <xs:enumeration value="encoder"/>
>>>
>>>             <xs:enumeration value="ilu"/>
>>>
>>>             <xs:enumeration value="ill"/>
>>>
>>>             <xs:enumeration value="pbl"/>
>>>
>>>             <xs:enumeration value="trl"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisSegs">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="otPassage"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="roleType">
>>>
>>>         <xs:union memberTypes="osisRoles attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisTitles">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="acrostic"/>
>>>
>>>             <xs:enumeration value="continued"/>
>>>
>>>             <xs:enumeration value="main"/>
>>>
>>>             <xs:enumeration value="parallel"/>
>>>
>>>             <xs:enumeration value="psalm"/>
>>>
>>>             <xs:enumeration value="sub"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisTitleType">
>>>
>>>         <xs:union memberTypes="osisTitles attributeExtension"/>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="osisType">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="OSIS"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>>     <xs:simpleType name="tableRole">
>>>
>>>         <xs:restriction base="xs:string">
>>>
>>>             <xs:enumeration value="label"/>
>>>
>>>             <xs:enumeration value="data"/>
>>>
>>>         </xs:restriction>
>>>
>>>     </xs:simpleType>
>>>
>>> </xs:schema>
>>>
>>
>> _______________________________________________
>> osis-core mailing list
>> osis-core@bibletechnologieswg.org
>> http://www.bibletechnologieswg.org/mailman/listinfo/osis-core
>>
> 
>