- 
                Notifications
    You must be signed in to change notification settings 
- Fork 4
SmafDtd
        BenjaminWaldron edited this page Aug 7, 2007 
        ·
        6 revisions
      
    <!-- DTD for SMAF -->
<!-- 07/08/2007-->
        
<!ELEMENT smaf   (text?, olac:olac? , lattice ) >
<!ATTLIST smaf   document CDATA #REQUIRED
                 addressing CDATA "char" >
<!ELEMENT text (#PCDATA) >
<!ELEMENT lattice   (edge*)>
<!ATTLIST lattice   init CDATA #IMPLIED
                    final CDATA #IMPLIED
                    cfrom CDATA #IMPLIED
                    cto CDATA #IMPLIED>
<!ELEMENT edge (#PCDATA|slot|fs|rmrs)* >
<!ATTLIST edge id ID #REQUIRED
               type CDATA #REQUIRED
               cfrom CDATA #IMPLIED
               cto CDATA #IMPLIED
               source CDATA #REQUIRED
               target CDATA #REQUIRED
               deps IDREFS #IMPLIED >
<!ELEMENT slot (#PCDATA) >
<!ATTLIST slot name CDATA #REQUIRED >
<!ELEMENT fs (f*) >
<!ATTLIST fs type CDATA #IMPLIED>
<!ELEMENT f (#PCDATA|fs)* >
<!ATTLIST f name CDATA #REQUIRED>
<!ENTITY % rmrs SYSTEM "rmrs.dtd">
<!-- rmrs -->
<!--!ELEMENT olac:olac (dc:creator?,created?,dc:identifier)-->
<!-- it's too tedious to specify all possible permutations in a DTD, so use ANY instead! -->
<!ELEMENT olac:olac ANY> 
<!ATTLIST olac:olac
    xmlns:olac CDATA #FIXED "http://www.language-archives.org/OLAC/1.0/"
    xmlns:dc CDATA #FIXED "http://purl.org/dc/elements/1.1/"
>
<!ELEMENT created (#PCDATA)>
<!--
THE FOLLOWING IS A TAKEN FROM...
     DTD for the OLAC Metadata Set, version 1.0
     Gary Simons and Steven Bird, 8 April 2003
     
     The definitive definition for an OLAC metadata record is the XML schema
     at:  http://www.language-archives.org/OLAC/1.0/olac.xsd
     
     This DTD is offerred for the convenience of users who need to use DTD-based 
     software.  However, since schemas have more functionality than DTDs, validation
     with this DTD does not guarantee that the document is valid with respect to the schema.
-->
    
<!ENTITY % attributes  
   "xml:lang CDATA #IMPLIED
    xsi:type CDATA #IMPLIED
    olac:code CDATA #IMPLIED"
 >
<!ELEMENT dc:creator (#PCDATA)>
<!ATTLIST dc:creator
        %attributes;
>
<!ELEMENT dc:description (#PCDATA)>
<!ATTLIST dc:description
        %attributes;
>
<!ELEMENT dc:identifier (#PCDATA)>
<!ATTLIST dc:identifier
        %attributes;
>
<!ELEMENT dc:language (#PCDATA)>
<!ATTLIST dc:language
        %attributes;
>
Question: should we have a schema definition also? (OLAC in particular works far better when defined via a schema.)
Home | Forum | Discussions | Events