<p> Memo of modifying the TEI p5 teilite.xsd</p><p>Holly Wang (November 25, 2008)</p><p>Modification to the original teilite.xsd</p><p>The original schema is located at: http://www.tei-.org/release/xml/tei/custom/schema/xsd/teilite.xsd </p><p>The modified teiliteOH.xsd is located at(exactly the same copy on two servers): http://digidev2.library.ucla.edu/xslt/schema/teiliteOH.xsd (\\lit304v\d$\Apache\Digital2\htdocs\xslt\schema) http://digital2.library.ucla.edu/xslt/schema/teiliteOH.xsd (\\lit308v\d$\Apache\Digital2\htdocs\xslt\schema)</p><p>I have done following modification: </p><p>1. milestone: add start and end as the attribute 2. add the att.timed.attributes, and the att.timed.attribute.start, att.timed.attribute.end as while 3. add four definitions: particDesc, listPerson, person, persName (we have these tags from the 35 TEI files from calculture)</p><p>We selected Milestone to record the timestamp. There are two organization have done it: Documenting American South and CalCulture. DAS add an attribute for milestone to record the timestamp. Here is an example: <milestone n="1398" unit="empty" type="start" timestamp="00:00:00" part="N" TEIform="milestone" /> (http://docsouth.unc.edu/sohp/K-0168/K-0168.xml) </p><p>Here is a piece of code from CalCulture to apply milestone tag on oralhistory document for UCLA. <milestone n="[Begin Tape 1, Side A]" unit="tape"/> (Armando Navarro). We can follow it if we decide to drop the end time eventually, and just put start time under n. We can use the teilite.xsd to validate our xml files in the future if we decide to do so. At this moment, because we have to modify the original teilite.xsd file so the 35 files we got from calculture can pass the validation, I just further modify the schema a little bit. Another option could be <milestone unit="speaker" n="00:00:25" next="end00:06:08"/>. In this way, we can use the original teilite schema directly. </p><p>The end timestamp is generated automatically by InqScribe. I decided to keep it in case it could be useful in the future for Flash Player application. The following is a piece of example of the XML file for transcript with timestamp that we decided to go with:</p><p><sp xml:id="sp1"> <milestone unit="speaker" start="00:00:02" end="00:00:07"/> <speaker> Collings </speaker> <p>Okay. This is Jane Collings interviewing Fran Diamond in her home on April 8th, 2007.</p> </sp> Appendix 1: a template for the final full transcript XML file. It is a simplified TEI/P5 xml file and it is valided with the modified TEI </p><p><TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.tei-c.org/ns/1.0 http://digital2.library.ucla.edu/xslt/schema/teiliteOH.xsd"> </p><p><teiHeader> <fileDesc> <titleStmt> <title type="main">Interview of Harry Hay</title> </titleStmt></p><p><publicationStmt> <publisher>UCLA Library, Center for Oral History Research, University of California, Los Angeles</publisher> </publicationStmt> </p><p><sourceDesc> <bibl> <title>Interview of Harry Hay</title> </bibl> </sourceDesc> </fileDesc></p><p></teiHeader></p><p><text></p><p><body> <div type="transcript"> <head>Transcript</head> <div xml:id="sessionTitleOrAudioFileName" type="session"> <head> Session 1,April 8, 2008</head> <sp xml:id="sp1"> <milestone unit="speaker" start="00:00:02" end="00:00:07"/> <speaker> Collings </speaker> <p>Okay. This is Jane Collings interviewing Fran Diamond in her home on April 8th, 2007.</p> </sp> </div> </div> </body></p><p></text> </TEI> Appendix 2: Modified part of teiliteOH.xsd</p><p>1: Milestone</p><p><xs:element name="milestone"> <xs:annotation> <xs:documentation>marks a boundary point separating any kind of section of a text, as indicated by changes in a standard reference system, where the section is not represented by a structural element.</xs:documentation> </xs:annotation> <xs:complexType> <!-- holly add the start and end attribute --> <xs:attributeGroup ref="ns1:att.timed.attribute.start"/> <xs:attributeGroup ref="ns1:att.timed.attribute.end"/></p><p>2. start and end attribute</p><p><!-- Holly: add the att.timed.attributes, and the att.timed.attribute.start, att.timed.attribute.end group, it is used by element sp as an attribute --> <xs:attributeGroup name="att.timed.attributes"> <xs:attributeGroup ref="ns1:att.timed.attribute.start"/> <xs:attributeGroup ref="ns1:att.timed.attribute.end"/> </xs:attributeGroup></p><p>3. particDesc </p><p><xs:group name="model.profileDescPart"> <xs:choice> <xs:element ref="ns1:langUsage"/> <!-- holly modified here by adding particDesc into profileDescPart--> <xs:element ref="ns1:particDesc"/> <xs:element ref="ns1:textClass"/> </xs:choice> </xs:group></p><p>4. particDesc, listPerson, person, persName </p><p><!-- Holly: added following elements: particDesc, listPerson, person, persName--> <xs:element name="particDesc"> <xs:annotation> <xs:documentation>include a list of person.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" ref="ns1:listPerson"/> </xs:sequence> <xs:attributeGroup ref="ns1:att.global.attribute.xmlid"/> </xs:complexType> </xs:element></p><p><xs:element name="listPerson"> <xs:annotation> <xs:documentation>a list of person.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" ref="ns1:person"/> </xs:sequence> <xs:attributeGroup ref="ns1:att.global.attribute.xmlid"/> </xs:complexType> </xs:element></p><p><xs:element name="person"> <xs:annotation> <xs:documentation>a person with ID and role.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" ref="ns1:persName"/> </xs:sequence> <xs:attributeGroup ref="ns1:att.global.attribute.xmlid"/> <xs:attribute name="role" type="xs:string"/> </xs:complexType> </xs:element></p><p><xs:element name="persName" type="xs:string"> <xs:annotation> <xs:documentation>the name of a person</xs:documentation> </xs:annotation> </xs:element></p><p>Solution One: manfully apply the changes. </p><p>Steps: </p><p>1. In Oxygen, Find <sp id=” and replace with <sp xml:id=”sp</p><p>2. Find in= and replace with > <milestone unit="speaker" start=</p><p>3. Find out= and replace with end=</p><p>4. Close the milestone tags</p><p>5. Check the document forms to make sure all tags are matching and closed </p><p>Closed milestone tag examples: </p><p><milestone unit="speaker" start="00:56:10" end="00:56:42"/> <milestone unit="speaker" start="00:56:10" end="00:56:42"></milestone></p><p>Solution two: apply a XSLT stylesheet on the XML file to get the XML file that we wanted. The sample that I created is using XSLT 2.0, and you need to change the parser into Saxon 8. Here is how to change the parser: </p><p>1. Click the configure transformation scenario icon at the top, after the small window pop up, select the xml-stylesheet processiong instruction and clik Edit. 2. In the edit scenario window, under the Transformer, select the Saxon 9b as the transformer. Remember, Xalan is a good parser for XSLT 1.0 and you may want to set it back once you finished with current task. </p><p>3. Now you can apply the transformation scenario by click the icon which has a red triangle in a circle. </p>
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages7 Page
-
File Size-