<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="../stylesheets/yaps-tei.css"?>
<?oxygen RNGSchema="../schema/yaps.rnc" type="compact"?>
<?oxygen SCHSchema="../schema/yaps.sch"?>
<TEI xmlns="http://www.wwp.brown.edu/ns/yaps/1.0"
  xmlns:xi="http://www.w3.org/2001/XInclude">
  <teiHeader>
    <fileDesc>
      <titleStmt>
        <title>Customizing the TEI Schema</title>
        <author>Julia Flanders</author>
        <author>Syd Bauman</author>
      </titleStmt>
      <editionStmt>
        <edition>Texas A &amp; M University</edition>
      </editionStmt>
      <publicationStmt>
        <distributor>Women Writers Project (via website)</distributor>
        <address>
          <addrLine>wwp@Brown.edu</addrLine>
        </address>
        <date when="2009-04-19"/>
        <availability status="restricted">
          <p>Copyright 2007 Syd Bauman, Julia Flanders, and Brown WWP</p>
          <p>This TEI-encoded XML file is available under the terms of
            the <ref
              target="http://creativecommons.org/licenses/by-sa/3.0/"
              >Creative Commons Attribution-ShareAlike 3.0
            (Unported)</ref> license.</p>
        </availability>
        <pubPlace>Providence, RI USA</pubPlace>
      </publicationStmt>
      <sourceDesc>
        <p>This TEI encoded digital file is the source.</p>
      </sourceDesc>
    </fileDesc>
    <revisionDesc>
      <change when="2008-07-21" who="#SB">Added notes I wrote in
        Victoria on explaining class system as a lecture note</change>
      <change when="2007-09-19" who="#JF">Updated and simplified for
        UCSB</change>
      <change>Incorporated some of the changes I made in Paris talk</change>
      <change when="2006-03-13" who="#SB">automatically converted from
        presentation.odd conforming to yaps.odd conforming using
        p2y.xslt and p2y.perl</change>
    </revisionDesc>
  </teiHeader>
  <text>

    <presentation>
      <section>
        <head>Customization and discipline</head>
        <slide>
          <figure>
            <graphic height="400px" url="../gfx/tei_areas.jpg"/>
          </figure>
        </slide>

        <lectureNote>
          <p>Customization of the TEI is motivated by: <list>
              <item>The disciplinary needs and concerns that we've
                been talking about all along</item>
              <item>The goal of reconciling the need for a common
                encoding language with the need for expressiveness:
                the tension between egoism and altruism</item>
            </list>
          </p>
	</lectureNote>
      </section>

      <section>
	<head>TEI Organization &#x2014; elements</head>
	<slide>
          <figure>
            <graphic width="100%" url="../gfx/emc2E.png"/>
          </figure>
	</slide>
	<lectureNote>
          <p>TEI, is made up of lots of stuff &#x2026; like a
            natural language one of the most important building blocks
            are the things being dealt with, the nouns, in our case
            the elements.</p>
          <p>TEI has some 503 elements. In order for humans to get a
            handle on these and be able to think of them without
            suffering from brain-bursting overload, it is very helpful
            to divide them up into sets or groupings. TEI does this in
            two separate but equal ways &#x2026; the modules that
            group by domain, and the classes that divide by their
            functions. These are their stories.</p>
	</lectureNote>
      </section>

      <section>
	<head>TEI Organization &#x2014; modules</head>
	<slide>
          <figure>
            <graphic width="100%" url="../gfx/emc2M.png"/>
          </figure>
	</slide>
	<lectureNote>
          <p>Modules are the sets into which elements are grouped
            conceptually. Remember the flower diagram of the TEI
            universe? Core in the center with things like
            dictionaries, critical apparatus, and manuscript
            description radiating out? Each of those petals, if you
            will, and the center are each in some sense a bag or box
            which contain a bunch of elements. And if you're doing
            manuscript description you can get all of those elements
            you might need at one shot by picking up the manuscript
            description bag by the convenient handle.</p>
          <p>Every element must be inside one and only one module.</p>
          <p>So that was one way of dividing up the elements
            &#x2014; conceptually by domain using modules.</p>
	</lectureNote>
      </section>

      <section>
	<head>TEI Organization &#x2014; attribute classes</head>
	<slide>
          <figure>
            <graphic width="100%" url="../gfx/emc2aC.png"/>
          </figure>
	</slide>
	<lectureNote>
          <p>The other way they are divided up is by their semantics
            or function or by common features. Classes are sets of
            elements that have some functional similarities
            &#x2014; functional in the XML sense. Either they
            share attributes (e.g., <gi>addSpan</gi>,
            <gi>delSpan</gi>, and <gi>damageSpan</gi> all share the
            spanTo= attribute), or may appear in the same kinds of
            places in the XML structure (e.g., anyplace a
            <gi>name</gi> can appear a <gi>persName</gi> or an
              <gi>orgName</gi> might appear instead).</p>
	</lectureNote>
      </section>

      <section>
	<head>TEI Organization &#x2014; model classes</head>
	<slide>
          <figure>
            <graphic width="100%" url="../gfx/emc2mC.png"/>
          </figure>
	</slide>
	<lectureNote>
          <p>These two kinds of classes &#x2014; one for sharing
            attributes, one for occuring in the same kinds of places,
            are like clubs. Elements get to be members of these clubs.
            Being a member of an attribute class club is like being a
            member of an Alumni club &#x2014; you get certain
            benefits of membership like a beenie hat or a pocket
            protector or discounts at local shops. Being a member of a
            model club is like being a member of faculty committee
            &#x2014; you have to show up to meetings whether you
            like it or not.</p>
	</lectureNote>
      </section>

      <section>
	<head>TEI Organized!</head>
	<slide>
          <figure>
            <graphic width="100%" url="../gfx/emc2all.png"/>
          </figure>
	</slide>
	<lectureNote>
          <p>So a good analogy to this is Leggos. Elements are the
            little Leggo pieces, canonically rectangles with 6 divits
            on top. When you go to the toy store you buy Leggos by the
            module &#x2014; there's a core set you can get, which
            is just a bunch of the canonical bricks. But then there's
            also the castle module, the helicopter module, the fire
            station module, etc.</p>
          <p>But most of the individual Leggo blocks can be grouped
            functionally as well &#x2014; by the shape of the
            block and thus the number of divits on top, by the color,
            etc. So you might have the class of all round blocks with
            12 divits on top.</p>
          <p>The TEI Guidelines is more than just the elements,
            though. They are, after all, a set of Guidelines, and as
            such are composed of large chunks of prose devoted to
            particular topics. Conveniently these chunks of prose are
            divided into chapters that correspond directly with
            modules.</p>
	</lectureNote>
      </section>

      <section>
	<head>HOWTO: reference documentation</head>
	<slide>
	  <list>
	    <item><gi>title</gi>: <ref
	    target="/Users/syd/Documents/P5/Guidelines-web/en/html/ref-title.html">Syd's
	    local</ref>, <ref
	    target="http://www.tei-c.org/release/doc/tei-p5-doc/en/html/ref-title.html">web</ref></item>
	    <item><gi>head</gi>: <ref
	    target="/Users/syd/Documents/P5/Guidelines-web/en/html/ref-head.html">Syd's
	    local</ref>, <ref
	    target="http://www.tei-c.org/release/doc/tei-p5-doc/en/html/ref-head.html">web</ref></item>
	  </list>
	</slide>
	<lectureNote>
          <p>But the Guidelines also contain a reference section: a
          spec sheet for each of the types of Leggo block, if you
          will. Reading these spec sheets takes a bit of ___ or
          training. So I want to step you through, kind of a
          <soCalled>how to use this manual</soCalled> for the TEI
          <soCalled>tagdocs</soCalled> as they're called by their
          makers.</p>
          <p>show <gi>title</gi> and <gi>head</gi>.</p>
        </lectureNote>
      </section>

      <section>
        <head>TEI under the hood (in a nutshell)</head>
        <slide>
          <figure>
            <graphic height="400px" url="../gfx/tei_odd_simple.png"/>
          </figure>
        </slide>
      </section>
      <section>
        <head>TEI customization under the hood (in a nutshell)</head>
        <slide>
          <figure>
            <graphic height="400px"
              url="../gfx/tei_odd_customization_simple.png"/>
          </figure>
        </slide>
      </section>

      <section>
        <head>Customization options</head>
        <slide>
          <list>
            <item>Select modules</item>
            <item>Delete unnecessary elements</item>
            <item>Add new elements or attributes</item>
            <item>Change element or attribute names</item>
            <item>Constrain attribute values</item>
            <item>Constrain structure</item>
            <item>Manipulate functional groupings of elements</item>
            <item>Produce an internationalized version of the
              TEI</item>
          </list>
        </slide>
        <lectureNote>
          <p>As we've already said: there are a number of very useful
            things you can do by customizing the TEI, and a number of
            you have already discovered the need for these during the
            hands-on exercises: <list>
              <item>Select modules</item>
              <item>Delete unnecessary elements</item>
              <item>Add new elements or attributes</item>
              <item>Change element or attribute names</item>
              <item>Constrain attribute values</item>
              <item>Constrain structure</item>
              <item>Manipulate functional groupings of elements</item>
              <item>Produce an internationalized version of the
                TEI</item>
            </list>
          </p>
          <p>Customization doesn't just accomplish these changes to
            the schema: it does so in a way that documents and
            formalizes the changes (even multilingually, if desired).
            Besides being essential for comprehension and consistent
            local application, this means the changes can be
            communicated to other people, other projects</p>
          <p>Groups of projects can develop common customizations that
            are shared and published</p>
          <p>Projects can customize other projects' customizations</p>
          <p>Customizations can be developed for specific
            disciplines</p>
        </lectureNote>
      </section>
      
      <section>
        <head>Roma, the web tool</head>
        <slide>
          <p><ref target="http://www.tei-c.org/Roma/">Roma</ref>,
            the web interface to the TEI customization mechanism,
            performs two functions: <list>
              <item>provides a user interface for editing TEI ODD
                files</item>
              <item>provides a user interface for generating TEI
                schemas and documentation</item>
            </list></p>
        </slide>
        <lectureNote>
	  <p>While TEI customization files are not particularly hard
	  to write by hand, creating them is made even easier by a
	  web-based editor called Roma. Many thanks to Sebastian
	  Rahtz with the help of Arno Mittelbach for creating this
	  wonderful tool.</p>
	  <list>
	    <item>provide filename, prefix pattern</item>
	    <item>add <name type="module">transcr</name></item>
	    <item>change <gi>div</gi> of <name type="module">textstructure</name></item>
	    <item>exclude a bunch of attributes; constrain <att>type</att></item>
	    <item>exclude numbered <gi>div</gi>s</item>
	    <item>in <name type="module">transcr</name>, exclude a bunch of elements</item>	    
	  </list>
        </lectureNote>
      </section>

    </presentation>
  </text>
</TEI>
