FacsimileMarkupODD

From TEIWiki

Jump to: navigation, search

A sample ODD for facsimile markup. Needs documentation inserted.

<?xml version="1.0"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0" xml:lang="en">
	<teiHeader>
		<fileDesc>
			<titleStmt>
				<title>Facsimile</title>
				<author><ref target="mailto:conal@nzetc.org">Conal Tuohy</ref></author>
			</titleStmt>
			<publicationStmt>
				<p>Draft schema for TEI Council</p>
			</publicationStmt>
			<sourceDesc>
				<p>Based on documents developed by Conal and Dot for the TEI Council in 2006</p>
			</sourceDesc>
		</fileDesc>
	</teiHeader>
	<text>
		<body>
			<head>Linking pages of text to graphical facsimiles</head>
			<schemaSpec ident="fax-spec" xml:lang="en" prefix="">
				<elementSpec ident="pg" mode="add">
					<desc>Defines a page and associated graphical facsimiles</desc>
					<attList>
						<attDef ident="start" mode="add">
							<desc>Pointer to the pb element where the page starts.</desc>
							<datatype>
								<rng:ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="data.pointer"/>
							</datatype>
							
						</attDef>
					</attList>
					<classes>
						<memberOf key="model.sourceDescPart"/>
						<memberOf key="att.global"/>
					</classes>
					<content xmlns:rng="http://relaxng.org/ns/structure/1.0">
						<rng:zeroOrMore>
							<rng:ref name="model.graphicLike"/>
						</rng:zeroOrMore>
					</content>
				</elementSpec>
				<moduleRef key="core"/>
				<moduleRef key="textstructure"/>
				<moduleRef key="tei"/>
				<moduleRef key="header"/>
				<elementSpec ident="graphic" module="core" mode="change">
					<classes>
						<memberOf key="model.graphicLike"/>
						<memberOf key="model.titlepagePart"/>
						<memberOf key="att.typed"/>
						<memberOf key="att.projection"/>
					</classes>
				</elementSpec>
				<elementSpec ident="catDesc" module="header" mode="change">
					<classes>
						<memberOf key="att.naming"/>
					</classes>
				</elementSpec>
				
				<!-- Graphical projections -->
				<classSpec ident="att.projection" type="atts" mode="add">
					<attList>
						<attDef ident="rotation" mode="add">
							<desc>Specifies an angle in degrees to rotate the graphic in a clockwise direction</desc>
							<datatype>
								<rng:ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="data.numeric"/>
							</datatype>
							<defaultVal>0</defaultVal>
							
						</attDef>
						<attDef ident="left" mode="add">
							<desc>Specifies the position of the left edge of an area within the image</desc>
							<datatype>
								<rng:ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="data.outputMeasurement"/>
							</datatype>
							<default>0</default>
							<valList type="open"/>
						</attDef>
						<attDef ident="top" mode="add">
							<desc>Specifies the position of the top edge of an area within the image</desc>
							<datatype>
								<rng:ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="data.outputMeasurement"/>
							</datatype>
							<default>0</default>
							<valList type="open"/>
						</attDef>
						<attDef ident="right" mode="add">
							<desc>Specifies the position of the right edge of an area within the image</desc>
							<datatype>
								<rng:ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="data.outputMeasurement"/>
							</datatype>
							<valList type="open"/>
						</attDef>
						<attDef ident="bottom" mode="add">
							<desc>Specifies the position of the bottom edge of an area within the image</desc>
							<datatype>
								<rng:ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="data.outputMeasurement"/>
							</datatype>
							<valList type="open"/>
						</attDef>
						<attDef ident="scale" mode="add">
							<desc>Specifies a scale factor to apply to the image</desc>
							<datatype>
								<rng:ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="data.outputMeasurement"/>
							</datatype>
							<default>1</default>
							<valList type="open"/>
						</attDef>
						<attDef ident="xscale" mode="add">
							<desc>Specifies a scale factor to apply to the image in the horizontal dimension</desc>
							<datatype>
								<rng:ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="data.outputMeasurement"/>
							</datatype>
							<default>1</default>
							<valList type="open"/>
						</attDef>
						<attDef ident="yscale" mode="add">
							<desc>Specifies a scale factor to apply to the image in the vertical dimension</desc>
							<datatype>
								<rng:ref xmlns:rng="http://relaxng.org/ns/structure/1.0" name="data.outputMeasurement"/>
							</datatype>
							<default>1</default>
							<valList type="open"/>
						</attDef>
					</attList>
				</classSpec>
				<elementSpec ident="area" mode="add">
					<desc>Defines a rectangular area on a page. The corresp attribute contains the value of the xml:id attribute of any TEI element whose content corresponds to this area.</desc>
					<classes>
						<memberOf key="model.graphicLike"/>
						<memberOf key="att.projection"/>
						<memberOf key="att.global.linking"/>
					</classes>
					<content>
						<rng:empty xmlns:rng="http://relaxng.org/ns/structure/1.0"/>
					</content>
				</elementSpec>
				<elementSpec ident="p" mode="change">
					<classes>
						<memberOf key="model.pLike"/>
						<memberOf key="model.divPart"/>
						<memberOf key="att.projection"/>
					</classes>
				</elementSpec>
				<elementSpec ident="seg" mode="change">
					<classes>
						<memberOf key="model.blockLike"/>
						<memberOf key="model.segLike"/>
						<memberOf key="att.segLike"/>
						<memberOf key="model.choicePart"/>
						<memberOf key="att.projection"/>
					</classes>
				</elementSpec>
				<elementSpec ident="ab" mode="change">
					<classes>
						<memberOf key="model.pLike"/>
						<memberOf key="model.divPart"/>
						<memberOf key="att.typed"/>
						<memberOf key="att.projection"/>
					</classes>
				</elementSpec>
			</schemaSpec>
		</body>
	</text>
</TEI>
Personal tools