<!-- XLIFF

Public Identifier: "-//XLIFF//DTD XLIFF//EN"

History of modifications (latest first):

Jul-14-2003 by YS: Added extype definition (was missing)
Jan-28-2003 by YS: Implemented fixes for resname
Jan-28-2002 by YS: Implemented fixes after OASIS TC spec revision
May-15-2001 by YS: Add phase-name to <trans-unit> and <bin-unit>
May-15-2001 by YS: Reverse id for <trans-unit> to required
Apr-19-2001 by YS: Enda+JohnR last changes
Apr-18-2001 by YS: Removed empty ATTLISTs
Apr-12-2001 by YS: Changed target* to target+ in trans-match
Apr-11-2001 by YS: Fixed DOCTYPE id
Apr-10-2001 by YS: Synchronize from conference call 
Apr-05-2001 by YS: Synchronize with latest specs
Apr-04-2001 by YS: Synchronize with latest specs
Apr-03-2001 by YS: Added name in <prop-group>
Apr-02-2001 by YS: Implemented JR fixes
Mar-29-2001 by JC: fixes for xml:space and bin-unit
Mar-28-2001 by YS: First draft version

-->

<!ENTITY % CodeContent "#PCDATA|sub" >
<!ENTITY % TextContent "#PCDATA|g|bpt|ept|ph|it|mrk|x|bx|ex" >

<!ENTITY lt   "&#38;#60;" >
<!ENTITY amp  "&#38;#38;" >
<!ENTITY gt   "&#62;" >
<!ENTITY apos "&#39;" >
<!ENTITY quot "&#34;" >


<!-- ***************************************************************** -->
<!-- Structural Elements                                               -->
<!-- ***************************************************************** -->

<!ELEMENT xliff     (file)+ >
<!ATTLIST xliff
   version          CDATA              #FIXED "1.0"
   xml:lang         CDATA              #IMPLIED
>

<!ELEMENT file      (header,body) >
<!ATTLIST file
   original         CDATA              #REQUIRED
   source-language  CDATA              #REQUIRED
   datatype         CDATA              #REQUIRED
   tool             CDATA              #IMPLIED
   date             CDATA              #IMPLIED
   xml:space        (default|preserve) "default"
   ts               CDATA              #IMPLIED
   category         CDATA              #IMPLIED
   target-language  CDATA              #IMPLIED
   product-name     CDATA              #IMPLIED
   product-version  CDATA              #IMPLIED
   build-num        CDATA              #IMPLIED
>
<!-- tool default = "manual" -->


<!ELEMENT header        (skl?,phase-group?,(prop-group|glossary|reference|note|count-group)*) >

<!ELEMENT skl           (internal-file|external-file) >

<!ELEMENT internal-file (#PCDATA) >
<!ATTLIST internal-file
   form                 CDATA    #IMPLIED
   crc                  NMTOKEN  #IMPLIED
>
<!-- text|base64 (text is default) -->

<!ELEMENT external-file EMPTY >
<!ATTLIST external-file
   href                 CDATA    #REQUIRED
   crc                  NMTOKEN  #IMPLIED
   uid                  NMTOKEN  #IMPLIED
>

<!ELEMENT glossary      (internal-file|external-file) >

<!ELEMENT reference     (internal-file|external-file) >

<!ELEMENT note          (#PCDATA) >
<!ATTLIST note
   xml:lang             CDATA    #IMPLIED
   priority             (1|2|3|4|5|6|7|8|9|10) "1"
   from                 CDATA    #IMPLIED
>

<!ELEMENT prop-group    (prop)+ >
<!ATTLIST prop-group
   name                 CDATA    #IMPLIED
>

<!ELEMENT prop          (#PCDATA) >
<!ATTLIST prop
   prop-type            CDATA    #REQUIRED
   xml:lang             CDATA    #IMPLIED
>

<!ELEMENT context-group (context)+ >
<!ATTLIST context-group
   name                 CDATA    #REQUIRED
   crc                  NMTOKEN  #IMPLIED
>

<!-- Processing instructions related to <context-group>:

<?xliff-show-context-group name='value' ?>

Indicates that any <context-group> element with a name set to 'value' should be
displayed to the end-user.

-->

<!ELEMENT context       (#PCDATA) >
<!ATTLIST context
   context-type         CDATA    #REQUIRED
   match-mandatory      (yes|no) "no"
   crc                  NMTOKEN  #IMPLIED
>

<!-- Processing instructions related to <context>:

<?xliff-show-context context-type='value' ?>

Indicates that any <context> element with a context-type set to 'value' should 
be displayed to the end-user.

-->

<!ELEMENT phase-group   (phase)+ >

<!ELEMENT phase         (note)* >
<!ATTLIST phase
   phase-name           CDATA    #REQUIRED
   process-name         CDATA    #REQUIRED
   company-name         CDATA    #IMPLIED
   tool                 CDATA    #IMPLIED
   date                 CDATA    #IMPLIED
   job-id               CDATA    #IMPLIED
   contact-name         CDATA    #IMPLIED
   contact-email        CDATA    #IMPLIED
   contact-phone        CDATA    #IMPLIED
>

<!ELEMENT count-group   (count)* >
<!ATTLIST count-group
   name                 CDATA    #REQUIRED
>

<!ELEMENT count         (#PCDATA) >
<!ATTLIST count
   count-type           CDATA       #IMPLIED
   unit                 CDATA       #IMPLIED
>

<!ELEMENT body          (group|trans-unit|bin-unit)* >

<!ELEMENT group         ((context-group*,count-group*,prop-group*,note*),(group|trans-unit|bin-unit)*)
>
<!ATTLIST group
   id                   NMTOKEN     #IMPLIED
   datatype             CDATA       #IMPLIED
   xml:space            (default|preserve) "default"
   ts                   CDATA       #IMPLIED
   restype              CDATA       #IMPLIED
   resname              CDATA       #IMPLIED
   extradata            CDATA       #IMPLIED
   extype               CDATA       #IMPLIED
   help-id              NMTOKEN     #IMPLIED
   menu                 CDATA       #IMPLIED
   menu-option          CDATA       #IMPLIED
   menu-name            CDATA       #IMPLIED
   coord                CDATA       #IMPLIED
   font                 CDATA       #IMPLIED
   css-style            CDATA       #IMPLIED
   style                NMTOKEN     #IMPLIED
   exstyle              NMTOKEN     #IMPLIED
>

<!ELEMENT trans-unit    (source,target?,(count-group|note|context-group|prop-group|alt-trans)*) >
<!ATTLIST trans-unit
   id                   NMTOKEN     #REQUIRED
   approved             (yes|no)    #IMPLIED
   translate            (yes|no)    "yes"
   reformat             (yes|no)    "yes"
   xml:space            (default|preserve) "default"
   datatype             CDATA       #IMPLIED
   ts                   CDATA       #IMPLIED
   restype              CDATA       #IMPLIED
   resname              CDATA       #IMPLIED
   extradata            CDATA       #IMPLIED
   extype               CDATA       #IMPLIED
   help-id              NMTOKEN     #IMPLIED
   menu                 CDATA       #IMPLIED
   menu-option          CDATA       #IMPLIED
   menu-name            CDATA       #IMPLIED
   coord                CDATA       #IMPLIED
   font                 CDATA       #IMPLIED
   css-style            CDATA       #IMPLIED
   style                NMTOKEN     #IMPLIED
   exstyle              NMTOKEN     #IMPLIED
   size-unit            CDATA       #IMPLIED
   maxwidth             NMTOKEN     #IMPLIED
   minwidth             NMTOKEN     #IMPLIED
   maxheight            NMTOKEN     #IMPLIED
   minheight            NMTOKEN     #IMPLIED
   maxbytes             NMTOKEN     #IMPLIED
   minbytes             NMTOKEN     #IMPLIED
   charclass            CDATA       #IMPLIED
   phase-name           CDATA       #IMPLIED
>
<!-- size-unit: char|byte|pixel|glyph|dlgunit default='pixel' -->

<!ELEMENT source        (%TextContent;)* >
<!ATTLIST source
   xml:lang             CDATA       #IMPLIED
   ts                   CDATA       #IMPLIED
>
<!-- coord = "x;y;cx;cy"
   font= "fontname[;size[;weight]]"
-->

<!ELEMENT target        (%TextContent;)* >
<!ATTLIST target
   state                NMTOKEN     #IMPLIED
   phase-name           NMTOKEN     #IMPLIED
   xml:lang             CDATA       #IMPLIED
   ts                   CDATA       #IMPLIED
   restype              CDATA       #IMPLIED
   resname              CDATA       #IMPLIED
   coord                CDATA       #IMPLIED
   font                 CDATA       #IMPLIED
   css-style            CDATA       #IMPLIED
   style                NMTOKEN     #IMPLIED
   exstyle              NMTOKEN     #IMPLIED
>

<!ELEMENT alt-trans     (source?,target+,(note|context-group|prop-group)*) >
<!ATTLIST alt-trans
   match-quality        CDATA       #IMPLIED
   tool                 CDATA       #IMPLIED
   crc                  NMTOKEN     #IMPLIED
   xml:lang             CDATA       #IMPLIED
   origin               CDATA       #IMPLIED
   datatype             CDATA       #IMPLIED
   xml:space           (default|preserve) "default"
   ts                   CDATA       #IMPLIED
   restype              CDATA       #IMPLIED
   resname              CDATA       #IMPLIED
   extradata            CDATA       #IMPLIED
   extype               CDATA       #IMPLIED
   help-id              NMTOKEN     #IMPLIED
   menu                 CDATA       #IMPLIED
   menu-option          CDATA       #IMPLIED
   menu-name            CDATA       #IMPLIED
   coord                CDATA       #IMPLIED
   font                 CDATA       #IMPLIED
   css-style            CDATA       #IMPLIED
   style                NMTOKEN     #IMPLIED
   exstyle              NMTOKEN     #IMPLIED
>


<!ELEMENT bin-unit      (bin-source,bin-target?,(note|context-group|prop-group|trans-unit)*) >
<!ATTLIST bin-unit
   id                   NMTOKEN     #REQUIRED
   mime-type            NMTOKEN     #REQUIRED
   approved             (yes|no)    #IMPLIED
   translate            (yes|no)    "yes"
   reformat             (yes|no)    "yes"
   ts                   CDATA       #IMPLIED
   restype              CDATA       #IMPLIED
   resname              CDATA       #IMPLIED
   phase-name           CDATA       #IMPLIED
>

<!ELEMENT bin-source    (internal-file|external-file) >
<!ATTLIST bin-source
   ts                   CDATA       #IMPLIED
>

<!ELEMENT bin-target    (internal-file|external-file) >
<!ATTLIST bin-target
   mime-type            NMTOKEN     #IMPLIED
   ts                   CDATA       #IMPLIED
   state                NMTOKEN     #IMPLIED
   phase-name           NMTOKEN     #IMPLIED
   restype              CDATA       #IMPLIED
   resname              CDATA       #IMPLIED
>



<!-- ***************************************************************** -->
<!-- In-Line Elements                                                  -->
<!-- ***************************************************************** -->

<!ELEMENT g             (%TextContent;)* >
<!ATTLIST g
   id                   CDATA     #REQUIRED
   ctype                CDATA     #IMPLIED
   clone                (yes|no)  "yes"
   ts                   CDATA     #IMPLIED
>

<!ELEMENT x             EMPTY >
<!ATTLIST x
   id                   CDATA     #REQUIRED
   ctype                CDATA     #IMPLIED
   clone                (yes|no)  "yes"
   ts                   CDATA     #IMPLIED
>

<!ELEMENT bx            EMPTY >
<!ATTLIST bx
   id                   CDATA     #REQUIRED
   rid                  NMTOKEN   #IMPLIED
   ctype                CDATA     #IMPLIED
   clone                (yes|no)  "yes"
   ts                   CDATA     #IMPLIED
>

<!ELEMENT ex            EMPTY >
<!ATTLIST ex
   id                   CDATA     #REQUIRED
   rid                  NMTOKEN   #IMPLIED
   ts                   CDATA     #IMPLIED
>

<!ELEMENT ph            (%CodeContent;)* >
<!ATTLIST ph
   id                   CDATA     #REQUIRED
   ctype                CDATA     #IMPLIED
   ts                   CDATA     #IMPLIED
   crc                  NMTOKEN   #IMPLIED
   assoc                CDATA     #IMPLIED
>

<!ELEMENT bpt           (%CodeContent;)* >
<!ATTLIST bpt
   id                   CDATA     #REQUIRED
   rid                  NMTOKEN   #IMPLIED
   ctype                CDATA     #IMPLIED
   ts                   CDATA     #IMPLIED
   crc                  NMTOKEN   #IMPLIED
>

<!ELEMENT ept           (%CodeContent;)* >
<!ATTLIST ept
   id                   CDATA     #REQUIRED
   rid                  NMTOKEN   #IMPLIED
   ts                   CDATA     #IMPLIED
   crc                  NMTOKEN   #IMPLIED
>

<!ELEMENT it            (%CodeContent;)* >
<!ATTLIST it
   id                   CDATA     #REQUIRED
   pos                  (open|close) #REQUIRED
   rid                  NMTOKEN   #IMPLIED
   ctype                CDATA     #IMPLIED
   ts                   CDATA     #IMPLIED
   crc                  NMTOKEN   #IMPLIED
>

<!ELEMENT mrk           (%TextContent;)* >
<!ATTLIST mrk
   mtype                CDATA     #REQUIRED
   mid                  NMTOKEN   #IMPLIED
   comment              CDATA     #IMPLIED   
   ts                   CDATA     #IMPLIED
>

<!ELEMENT sub           (%TextContent;)* >
<!ATTLIST sub
   datatype             CDATA     #IMPLIED
   ctype                CDATA     #IMPLIED
>

<!-- ***** End of DTD ************************************************ -->