[osis-core] Sorry for the silence, latest draft attached! -YIPES!

Todd Tillinghast osis-core@bibletechnologieswg.org
Fri, 3 May 2002 23:38:13 -0500


Patrick,

My appologies, I was trying to jump ahead and didn't hear/read what you said
about this beging a rough initial draft.

Todd

> -----Original Message-----
> From: owner-osis-core@bibletechnologieswg.org
> [mailto:owner-osis-core@bibletechnologieswg.org]On Behalf Of Patrick
> Durusau
> Sent: Friday, May 03, 2002 12:28 PM
> To: osis-core@bibletechnologieswg.org
> Subject: Re: [osis-core] Sorry for the silence, latest draft attached!
> -YIPES!
>
>
> Todd,
>
> Todd Tillinghast wrote:
>
> >Patrick,
> >
> >I read through the notes and would be interested to see the resulting
> >schema.
> >
> >PROPOSAL:
> >1) Abandon OSISCore_1.0.6.xsd (and OSISCore_1.0.7.xsd)
> >
> I think I mentioned that 1.0.6 and 1.0.7 were very rough! The numbers
> were just so I could track the versions day by day.
>
>
> >
> >
> >2) List the proposed changes to the last sable schema (the one published
> >just prior to leaving for Rome) in simple terms of what is proposed to
> >be REMOVED, ADDED, and CHANGED?
> >
> >Ex:
> >REMOVED: <milestones>
> >REMOVED: <front>
> >ADD: <front> with completely different model
> >CHANGED: <text>, changed name to <osis>
> >
> Sure.
>
> >
> >3) Then apply the changes enumerated to the last stable schema.
> >
> As soon as I get the rest of the notes from Steve (probably this
> weekend) that is my intention.
>
> >
> >
> >
> >
> >The things you mentioned on the phone related to pointing don't seem to
> >be present in this current schema.  Or if they are they are not clear to
> >me.
> >
> Quite right, a number of the things I was reporting were on the second
> day's notes and since I don't have a copy (so I could attempt to put
> them in as stated) they do not appear.
>
> No I did not start over from an empty schema! Gee, you say it is a rough
> draft and they expect Windex clean!!!
>
> ;-)
>
> Hopefully I will get the notes from Steve this weekend and I can start
> from the last version I mailed out and insert the new material and
> delete the old with XML comments so it will be easier to see what is
> happening (alone with the list you proposed above).
>
> Patrick
>
>
> >
> >I found OSISCore_1.0.6 to be pretty rough.
> >(Did you start over from scratch with an empty schema?)
> >
> >I found OSISCore_1.0.6 to be pretty rough.
> >(Did you start over from scratch with an empty schema?  Is it possible
> >to work off of the version we had prior to the meeting and make changes
> >to it?)
> >
> >I corrected a number of pure syntax errors to make it well formed as
> >well as a valid XML Schema and have attached the correct version as
> >OSISCore_1.0.7.xsd.
> >
> >I changed all references to dc:* to dcX* and xs:key to xsXkey.
> >
> >I am not sure why the dc namespace was used.
> >
> >There does not seem to be an xs:key.
> >
> >I added elements and simple types at the bottom that were required for
> >validity.
> >
> >I removed the reference to milestones.
> >
> >Todd
> >
> >
> >------------------------------------------------------------------------
> >
> ><?xml version="1.0" encoding="UTF-8"?>
> ><!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Todd
> Tillinghast (private) -->
> ><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
> elementFormDefault="unqualified">
> >	<xs:annotation>
> >		<xs:documentation> 	OSISCore.1.0.xsd  	<p>
> >				<date>2002-04-27</date>
> >				<version>1.0</version>
> >
> >				This is version 1.0 of the OSIS
> (Open Scriptural Information Standard) schema for Bible and
> biblical texts. While it will produce valid XML documents on its
> own, it is intended for use with the OSISScripture1.0.xsd and
> other schemas to be released by the OSIS Initiative. These
> additional schemas incorporate the core schema and provide
> validation for references and other extensions that may be
> required for more complex uses, such as by translators,
> publishers and scholars.</p>
> >			<p>This schema did not spring full blown
> into existence but was heavily influenced by prior efforts such
> as XSEM (SIL), LGM (Logos), ThML (Harry Plantiga), SFM (UBS), and
> CCML (Hosanna Foundation). Unlike these prior efforts, OSIS has
> focused on producing the minimal encoding necessary to markup
> simple Bible texts and will be placing in additional modules the
> markup needed for more sophisticated users. The primary purpose
> behind that design was to allow users an easy learning curve for
> applying markup to biblical texts. All the element names that
> they learn for the core schema, can be applied, with additional
> abilities in the following modules. Despite our reliance on the
> pioneering efforts of others, any errors in substance or style in
> this schema remain the responsibility of the editors and contributors.</p>
> >			<p>The work on this schema was made
> possible by the generous support of the American Bible Society,
> American Bible Society Interactive, and the Society of Biblical
> Literature. Contributions of prior encoding efforts, texts (the
> sample texts from the Good News Today translation are used in the
> documentation with the kind permission of the American Bible
> Society), and suggestions and comments from the participants in
> OSIS public meetings and mailing list were instrumental in the
> formation of this release.</p>
> >			<p>The principal editors for this core
> module and the companion scripture schema are Steve DeRose
> (sderose@speakeasy.net), and Patrick Durusau (Society of Biblical
> Literature, pdurusau@emory.edu). Technical contributors (who
> often turned around sample encodings of the Book of Matthew on
> the same day as schema revisions!) were Troy Griffiths
> (scribe@crosswire.org), Chris Little (chrislit@crosswire.org),
> and Todd Tillinghast (todd@contentframeworks.com).</p>
> >		</xs:documentation>
> >	</xs:annotation>
> >	<!-- attribute declarations and restrictions -->
> >	<xs:simpleType name="attributeExtension">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>Where attribute values are
> declared, users can extend the allowed values by prepending the
> string &quot;x-&quot; to the values they desire to use. Attribute
> values are declared as the union of an enumerated set of values
> and this attributeExtension type.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<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="changesOSIS">
> >		<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:restriction>
> >	</xs:simpleType>
> >	<xs:simpleType name="changeType">
> >		<xs:union memberTypes="changesOSIS attributeExtension"/>
> >	</xs:simpleType>
> >	<xs:simpleType name="divsOSIS">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>Enumerated list of types of div
> elements in an OSIS text. Note that users can add types of divs
> using the x- extension prefix on their type names.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:restriction base="xs:string">
> >			<xs:enumeration value="appendix"/>
> >			<xs:enumeration value="book"/>
> >			<xs:enumeration value="chapter"/>
> >			<xs:enumeration value="concordance"/>
> >			<xs:enumeration value="glossary"/>
> >		</xs:restriction>
> >	</xs:simpleType>
> >	<xs:simpleType name="divType">
> >		<xs:union memberTypes="divsOSIS attributeExtension"/>
> >	</xs:simpleType>
> >	<xs:simpleType name="languageType">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>A regex to validate ISO and
> Ethnologue language codes.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:restriction base="xs:string">
> >			<xs:pattern
> value="(x|i|[A-Za-z]{2,3})(-[A-Za-z0-9]{2,8}){0,}"/>
> >		</xs:restriction>
> >	</xs:simpleType>
> >	<xs:simpleType name="namesOSIS">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>Enumerated list of name types
> commonly found in biblical texts.</p>
> >				<p>The attribute nonhuman was
> inserted to allow the marking of names that are not encoded with
> the element divineName. The divineName element was introduced to
> treat name occurences that are treated differently, i.e., the
> setting of Lord in small caps, to represent a name in the
> original text. Rather than attempt to enumerate all the varying
> traditions for such practices, the divineName element simply
> recognizes it and allows encoders to follow that practice (or
> not) as they desire.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:restriction base="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="nameType">
> >		<xs:union memberTypes="namesOSIS attributeExtension"/>
> >	</xs:simpleType>
> >	<xs:simpleType name="noteType">
> >		<xs:union memberTypes="notesOSIS attributeExtension"/>
> >	</xs:simpleType>
> >	<xs:simpleType name="notesOSIS">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>Enumerated list of note types
> for biblical texts. This list can be extended using the
> &lt;x-&gt; extension in front of other note types added by users.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:restriction base="xs:string">
> >			<xs:enumeration value="allusion"/>
> >			<xs:enumeration value="alternative"/>
> >			<xs:enumeration value="background"/>
> >			<xs:enumeration value="citation"/>
> >			<xs:enumeration value="devotional"/>
> >			<xs:enumeration value="exegesis"/>
> >			<xs:enumeration value="explanation"/>
> >			<xs:enumeration value="study"/>
> >			<xs:enumeration value="translation"/>
> >			<xs:enumeration value="variant"/>
> >		</xs:restriction>
> >	</xs:simpleType>
> >	<xs:simpleType name="refType">
> >		<xs:restriction base="xs:string"/>
> >		<!-- need to add regex to validate two nmtokens
> (and no more) for refs -->
> >	</xs:simpleType>
> >	<xs:simpleType name="role">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>This is a selected set of the
> most common role names likely to be needed for basic encoding.
> The full set of relator codes on which this listing (and the
> descriptions are based, was taken from: MARC Code List: Relator
> Codes -- Term Sequence
> (http://lcweb.loc.gov/marc/relators/re0002r1.html). This listing
> will be followed for later OSIS modules.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:restriction base="xs:string">
> >			<xs:enumeration value="art">
> >				<xs:annotation>
> >					<xs:documentation>Artist:
> Use for a person (e.g., a painter) who conceives, and perhaps
> also implements, an original graphic design or work of art,
> </xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >			<xs:enumeration value="aut">
> >				<xs:annotation>
> >					<xs:documentation>Author:
> Use for a person or corporate body chiefly responsiblefor the
> intellectual or artistic content of a work, usually printed text.
>  This term may also be used when more than one person or body
> bears such responsibility.</xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >			<xs:enumeration value="aft">
> >				<xs:annotation>
> >					<xs:documentation>Author of
> afterword, colophon, etc.: Use for a person or corporate body
> responsible for an afterword, postface, colophon, etc. but who is
> not the chief author of a work.</xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >			<xs:enumeration value="aui">
> >				<xs:annotation>
> >					<xs:documentation>Author of
> introduction, etc.: Use for a person or corporate body
> responsible for an introduction, preface, foreword, or other
> critical introductory matter, but who is not the chief
> author.</xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >			<xs:enumeration value="clb">
> >				<xs:annotation>
> >
> <xs:documentation>Collaborator: Use for a person or corporate
> body that takes a limited part in the elaboration of a work of
> another person or corporate body that brings complements (e.g.,
> appendices, notes) to the work.</xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >			<xs:enumeration value="cwt">
> >				<xs:annotation>
> >
> <xs:documentation>Commentator for written text: Use for a person
> or corporate body responsible for the commentary or explanatory
> notes about a text.</xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >			<xs:enumeration value="com">
> >				<xs:annotation>
> >					<xs:documentation>Compiler:
> Use for a person who produces a work or publication by selecting
> and putting together material from the works of various persons
> or bodies.</xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >			<xs:enumeration value="ctb">
> >				<xs:annotation>
> >
> <xs:documentation>Contributor: Use for one whose work has been
> contributed to a larger work, such as an anthology, serial
> publication, or other compilation of individual works. Do not use
> for someone whose sole function in relation to a work is as
> author, editor, compiler or translator.</xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >			<xs:enumeration value="edt">
> >				<xs:annotation>
> >					<xs:documentation>Editor:
> Use for a person who prepares for publication a work not
> primarily his/her own, such as by elucidating text, adding
> introductory or other critical matter, or technically directing
> an editorial staff.</xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >			<xs:enumeration value="trl">
> >				<xs:annotation>
> >
> <xs:documentation>Translator: Use for a person who renders a text
> from one language into another, or from an older form of a
> language into the modern form.</xs:documentation>
> >				</xs:annotation>
> >			</xs:enumeration>
> >		</xs:restriction>
> >	</xs:simpleType>
> >	<!-- add datatypes of key and keyref to point to certain
> element type, cat refSys plus ref to be unique, allows us to
> pitch underscore. -->
> >	<!-- global attributes -->
> >	<xs:attributeGroup name="globalAttributes">
> >		<xs:attribute name="ews" type="xsXkey" use="optional"/>
> >		<xs:attribute name="ID" type="xs:ID" use="optional"/>
> >		<xs:attribute name="lang" type="languageType"
> use="optional"/>
> >		<xs:attribute name="type" type="xs:string" use="optional"/>
> >	</xs:attributeGroup>
> >	<xs:attributeGroup name="inReferenceAttributes">
> >		<xs:attribute name="ref" type="Define" use="required"/>
> >		<xs:attribute name="refSys" type="Define" use="optional"/>
> >		<xs:attribute name="work" type="Define" use="optional"/>
> >	</xs:attributeGroup>
> >	<xs:attributeGroup name="outReferenceAttributes">
> >		<xs:attribute name="ref" type="refType" use="optional"/>
> >	</xs:attributeGroup>
> >	<!-- elementGroup declarations -->
> >	<xs:group name="phraseGroup">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>A group for common annotations
> recorded on a text.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:sequence>
> >			<xs:element ref="blockQuote" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="divineName" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="foreign" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="inscription" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="lineGroup" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="list" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="mentioned" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="name" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="note" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="reference" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="title" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<xs:element ref="w" minOccurs="0"
> maxOccurs="unbounded"/>
> >			<!--			<xs:element
> ref="milestones" minOccurs="0" maxOccurs="unbounded"/> -->
> >		</xs:sequence>
> >	</xs:group>
> >	<xs:group name="milestones">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>Milestones are used to mark the
> traditional book, chapter, verse divisions, which are the most
> likely to cross other divisions commonly used in translations. In
> addition to these milestones, there is a generic milestone marker
> for cases not forseen by the encoding team. Note that the
> segStart and segEnd milestones are the generic form of the
> milestone marker.</p>
> >				<p>The attributes of the milestone
> markers require some comment for proper use. Note that all
> milestones have MID and MIDREF attributes but on a starting
> milestone, such as verseStart, the MID is required. That is a
> requirement because at the closing milestone for that verse,
> verseEnd, the attribute MIDREF is required. The MID and MIDREF
> serve to bind the two milestones together and provide some degree
> of validation for the use of milestones. If I properly note the
> MID on a starting milestone as: Matt.1.1 and then on the closing
> milestone enter: Mat.1.1 (Hard to see when typing but lost the
> second &quot;t&quot; in the abbreviation for Matthew, any XML
> parser will catch the error and tell me where the error has occurred.</p>
> >				<p>Markup theorists will note that
> the named milestones are syntactic sugar for the more generic
> segStart and segStop milestones. While a departure from the
> overall simplicity of the schema, it is hoped that this naming of
> milestones will make it easier for beginning users to orient
> themselves to the use of such elements.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:choice>
> >			<xs:element name="bookStart">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="bookEnd">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="chapterStart">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="chapterEnd">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="lineStart">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="lineEnd">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="osisPoint">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="qStart">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >					<xs:attribute name="who"
> type="xsXkeyRef" use="optional"/>
> >					<!-- add key place holder
> for castList -->
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="qEnd">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="refStart">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="refEnd">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="segStart">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="segEnd">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="verseStart">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >			<xs:element name="verseEnd">
> >				<xs:complexType>
> >					<xs:attributeGroup
> ref="inReferenceAttributes"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:complexType>
> >			</xs:element>
> >		</xs:choice>
> >	</xs:group>
> >	<!-- element declarations -->
> >	<xs:element name="osis">
> >		<xs:complexType>
> >			<xs:annotation>
> >				<xs:documentation>
> >					<p>Front and body element
> are required and in that sequence. This is implied by the
> sequence content model. Note that back is optional, but if
> occurs, only once.</p>
> >				</xs:documentation>
> >			</xs:annotation>
> >			<xs:sequence>
> >				<xs:element ref="front"/>
> >				<xs:element ref="body"/>
> >				<xs:element ref="back" minOccurs="0"/>
> >			</xs:sequence>
> >			<xs:attribute name="work" type="xs:NMTOKEN"
> use="optional"/>
> >			<xs:attribute name="refSys"
> type="xs:NMTOKEN" use="optional"/>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="front">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>This will be greatly expanded
> for the publications module (Fall, 2002) but should be sufficient
> to encode the basic front matter found in most Bible translations.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:complexType>
> >			<xs:sequence>
> >				<xs:element name="dcXContributor"
> minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXTitle">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXCreator" minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >					<!-- add key, role
> attribute points to roleType, resp attribute has keyRef that
> points to key on creator -->
> >				</xs:element>
> >				<xs:element name="dcXSubject" minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXDescription"
> minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXPublisher"
> minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXDate" minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXType" minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXFormat" minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXIdentifier"
> minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXSource" minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXLanguage"
> minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXRelation"
> minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXCoverage"
> minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="dcXRights" minOccurs="0">
> >					<xs:complexType>
> >						<xs:simpleContent>
> >
> <xs:extension base="xs:string">
> >
> <xs:attributeGroup ref="globalAttributes"/>
> >							</xs:extension>
> >						</xs:simpleContent>
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element name="revisionDesc"
> minOccurs="0" maxOccurs="unbounded">
> >					<xs:complexType>
> >						<xs:sequence>
> >							<xs:element
> ref="date"/>
> >							<xs:group
> ref="phraseGroup" maxOccurs="unbounded"/>
> >							<!--
> 					<xs:element ref="resp"/> -->
> >						</xs:sequence>
> >						<xs:attributeGroup
> ref="globalAttributes"/>
> >						<xs:attribute
> name="TEIform" fixed="revisionDesc"/>
> >						<!-- add resp and
> date as attributes on revisionDesc, resp keyRef points to creator -->
> >					</xs:complexType>
> >				</xs:element>
> >				<xs:element ref="div" minOccurs="0"
> maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="body">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>It should be noted at the outset
> that OSIS has followed XSEM in treating verses with milestone
> markers in a text. This is in large part because versification
> varies across editions and the use of milestones is the simplest
> way to allow varying encoding of verses and yet retain usuability
> of the text. This does not affect the presentation to the
> ultimate reader or its usefulness in electronic versions. If none
> of the foregoing was meaningful, do not be troubled. See the OSIS
> User documentation and simply follow the examples for marking
> verses. This is an issue now largely due to technical decisions
> made decades ago that still affect markup systems today.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:complexType>
> >			<xs:sequence>
> >				<xs:element ref="title" minOccurs="0"/>
> >				<xs:element ref="div"
> maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attribute name="TEIform" fixed="body"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="back">
> >		<xs:complexType>
> >			<xs:sequence>
> >				<xs:element ref="title"/>
> >				<xs:element ref="div"
> maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attribute name="TEIform" fixed="back"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="blockQuote">
> >		<xs:complexType>
> >			<xs:sequence>
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >				<!-- salute note,p,phrase
> close-salute-signed -->
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attributeGroup ref="outReferenceAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="catchWord">
> >		<xs:complexType mixed="true">
> >			<xs:sequence>
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="date">
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >					<xs:attribute
> name="calendar" type="calendar" use="optional" default="ISO"/>
> >					<xs:attribute name="value"
> use="optional"/>
> >					<xs:attribute
> name="TEIform" fixed="date"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="div">
> >		<xs:complexType>
> >			<xs:sequence maxOccurs="unbounded">
> >				<xs:element ref="lineGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >				<xs:element ref="div" minOccurs="0"
> maxOccurs="unbounded"/>
> >				<xs:element ref="figure"
> minOccurs="0" maxOccurs="unbounded"/>
> >				<xs:element ref="p" minOccurs="0"
> maxOccurs="unbounded"/>
> >				<xs:element ref="speech"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attribute name="lang"
> type="languageType" use="optional"/>
> >			<xs:attribute name="type" type="divType"
> use="optional"/>
> >			<xs:attribute name="divTitle"
> type="xs:string" use="optional"/>
> >			<xs:attributeGroup ref="inReferenceAttributes"/>
> >			<xs:attribute name="TEIform" fixed="div"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="divineName">
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="figure">
> >		<xs:complexType>
> >			<xs:sequence>
> >				<xs:element name="caption" minOccurs="0"/>
> >			</xs:sequence>
> >			<xs:attribute name="src" type="xs:string"
> use="required"/>
> >			<xs:attributeGroup ref="outReferenceAttributes"/>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="foreign">
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="head">
> >		<xs:complexType>
> >			<xs:sequence>
> >				<xs:element ref="head"
> minOccurs="0" maxOccurs="unbounded"/>
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="inscription">
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="item">
> >		<xs:complexType mixed="true">
> >			<xs:sequence maxOccurs="unbounded">
> >				<xs:element ref="label"
> type="xs:string" minOccurs="0"/>
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attributeGroup ref="outReferenceAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="label">
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="line">
> >		<xs:complexType mixed="true">
> >			<xs:sequence maxOccurs="unbounded">
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attributeGroup ref="outReferenceAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="lineGroup">
> >		<xs:complexType>
> >			<xs:sequence>
> >				<xs:element ref="line"
> minOccurs="0" maxOccurs="unbounded"/>
> >				<xs:element ref="lineGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attributeGroup ref="outReferenceAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="list">
> >		<xs:complexType>
> >			<xs:sequence>
> >				<xs:element ref="head" minOccurs="0"/>
> >				<xs:element ref="item"
> maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attributeGroup ref="outReferenceAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="mentioned">
> >		<xs:complexType mixed="true">
> >			<xs:sequence>
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="name">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>An element with an attribute
> simiar to role that allows a semi-open attribute for specifying
> what type of name is being recorded in the markup. Examples
> include person, geographic, etc. Note the general format for
> enumerated values: a list is declared as a simpleType and then
> followed by a union statement combining that list with the
> attributeExtension simpleType which contains a regular expression
> constraining additions to the OSIS enumerated list to begin with
> the string &quot;x-&quot;. This allows OSIS to speify a list of
> values and yet allow users to extend that list.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attribute
> name="nameType" type="nameType" use="required"/>
> >					<xs:attribute
> name="regular" type="xs:string" use="optional"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="note">
> >		<xs:annotation>
> >			<xs:documentation>
> >				<p>Has enumerated list of note types.</p>
> >			</xs:documentation>
> >		</xs:annotation>
> >		<xs:complexType mixed="true">
> >			<xs:sequence maxOccurs="unbounded">
> >				<xs:element ref="catchWord" minOccurs="0"/>
> >				<xs:element ref="note"
> minOccurs="0" maxOccurs="unbounded"/>
> >				<xs:element ref="p" minOccurs="0"
> maxOccurs="unbounded"/>
> >				<xs:element ref="reading"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attribute name="ID" type="xs:ID"
> use="optional"/>
> >			<xs:attribute name="lang"
> type="languageType" use="optional"/>
> >			<xs:attribute name="n" type="xs:string"
> use="optional"/>
> >			<xs:attribute name="resp" type="xs:string"
> use="optional"/>
> >			<xs:attribute name="type" type="noteType"
> use="required"/>
> >			<xs:attribute name="TEIform" fixed="note"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="p">
> >		<xs:complexType mixed="true">
> >			<xs:sequence minOccurs="0" maxOccurs="unbounded">
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attributeGroup ref="outReferenceAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="reading">
> >		<xs:complexType mixed="true">
> >			<xs:sequence maxOccurs="unbounded">
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attributeGroup ref="outReferenceAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="reference">
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >					<xs:attributeGroup
> ref="outReferenceAttributes"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="speech">
> >		<xs:complexType>
> >			<xs:sequence>
> >				<xs:element ref="speaker" minOccurs="0"/>
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="speaker">
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attribute name="who"
> type="xs:string"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="title">
> >		<xs:complexType>
> >			<xs:sequence maxOccurs="unbounded">
> >				<xs:group ref="phraseGroup"
> minOccurs="0" maxOccurs="unbounded"/>
> >			</xs:sequence>
> >			<xs:attributeGroup ref="globalAttributes"/>
> >			<xs:attribute name="TEIform" fixed="title"/>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="transChange">
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attribute
> name="changeType" type="changeType"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >					<xs:attribute name="resp"
> type="xs:string" use="optional"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:element name="w">
> >		<xs:complexType>
> >			<xs:simpleContent>
> >				<xs:extension base="xs:string">
> >					<xs:attribute name="POS"
> type="attributeExtension" use="optional"/>
> >					<xs:attribute name="morph"
> type="attributeExtension" use="optional"/>
> >					<xs:attribute name="lemma"
> type="attributeExtension" use="optional"/>
> >					<xs:attribute name="gloss"
> type="xs:string" use="optional"/>
> >					<xs:attribute name="xlit"
> type="xs:string" use="optional"/>
> >					<xs:attribute
> name="TEIform" fixed="w"/>
> >					<xs:attributeGroup
> ref="globalAttributes"/>
> >					<xs:attributeGroup
> ref="outReferenceAttributes"/>
> >				</xs:extension>
> >			</xs:simpleContent>
> >		</xs:complexType>
> >	</xs:element>
> >	<xs:simpleType name="xsXkey">
> >		<xs:restriction base="xs:string"/>
> >	</xs:simpleType>
> >	<xs:simpleType name="xsXkeyRef">
> >		<xs:restriction base="xs:string"/>
> >	</xs:simpleType>
> >	<xs:simpleType name="Define">
> >		<xs:restriction base="xs:string"/>
> >	</xs:simpleType>
> ></xs:schema
> >
>
> --
> Patrick Durusau
> Director of Research and Development
> Society of Biblical Literature
> pdurusau@emory.edu
>
>
>
>