[This local archive copy mirrored from the canonical site: http://www.xmlxperts.com/saexml.htm; links may not have complete integrity, so use the canonical document at this URL if possible.]

An XML Version of SAE J2008

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE j2008 [

<!ENTITY % attentions  "(Attention1 | Attention2 | Attention3 | Attention4 | 
               Attention5)" >
<!ELEMENT j2008  (ListofSIEs?,ServInfoPool?,OEMinfo?,Paths?) >

<!ATTLIST j2008
               mfrcode  NMTOKEN    #REQUIRED 
               revdate  CDATA    #REQUIRED 
               charsetnbr  NMTOKEN    #IMPLIED 
               langcode  CDATA    #IMPLIED 
               langvarcountrycode  CDATA    #IMPLIED 
               mktgdivcode  NMTOKEN    #REQUIRED  >

<!ELEMENT ListofSIEs  (SIE | SIEdelete)+ >

<!ELEMENT SIE   EMPTY  >

<!ATTLIST SIE
               servinfoSGMLid  IDREF    #REQUIRED 
               ldup  CDATA    #REQUIRED 
               update (delete | change | original)   #REQUIRED  >

<!ELEMENT SIEdelete   EMPTY  >

<!ATTLIST SIEdelete
               servinfoSGMLid  CDATA    #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!ELEMENT ServInfoPool  (ServInfo+) >

<!ELEMENT ServInfo  (Title,Subtitle*,(ServInfosub | (S1 | Para | Paragroup | Ptxt | 
               Verbatim | List1 | Table | Tableref | Diag | Diagref | Figure | 
               Figureref | Graphic | DefList | Spec | Indxflag | Attention1 | 
               Attention2 | Attention3 | Attention4 | Attention5))+) >

<!ATTLIST ServInfo
               servinfoSGMLid  ID    #REQUIRED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               svcinfotypenbr  NMTOKEN    #REQUIRED 
               svcinfoqualnbr  NMTOKEN    #REQUIRED 
               svcinfosubqualSGMLid  IDREF    #IMPLIED 
               sympSGMLid  IDREFS    #IMPLIED 
               bltnnbr  CDATA    #IMPLIED 
               bltnyear  NMTOKEN    #IMPLIED 
               bltnmo  NMTOKEN    #IMPLIED 
               bltnday  NMTOKEN    #IMPLIED 
               countrycode  NMTOKENS    #IMPLIED 
               mktareaSGMLid  IDREFS    #IMPLIED  >

<!ELEMENT Title  (#PCDATA | Emph | Sub | Sup | Ftnote | Intxref | Figureref | 
               Tableref | Diagref | extxref | Symbol)* >

<!ELEMENT Emph  (#PCDATA | Sub | Sup | Ftnote | Intxref | Figureref | Tableref | 
               Diagref | extxref | Symbol)* >

<!ATTLIST Emph
               etype (bold | boldital | ital | roman | underscore | smallcaPs | 
               overbar | overstrike)   #IMPLIED  >

<!ELEMENT Sub  (#PCDATA) >

<!ELEMENT Sup  (#PCDATA) >

<!ELEMENT Ftnote  (#PCDATA | Emph | Sub | Sup | Intxref | Figureref | Tableref | 
               Diagref | extxref | Symbol)* >

<!ATTLIST Ftnote
               type (foot | Table)  "foot"
               id  ID    #IMPLIED  >

<!ELEMENT Intxref   EMPTY  >

<!ATTLIST Intxref
               refid  IDREF    #REQUIRED  >

<!ELEMENT Figureref   EMPTY  >

<!ATTLIST Figureref
               refid  IDREF    #REQUIRED  >

<!ELEMENT Tableref   EMPTY  >
<!ATTLIST Tableref
               refid  IDREF    #REQUIRED  >

<!ELEMENT Diagref   EMPTY  >
<!ATTLIST Diagref
               refid  IDREF    #REQUIRED  >

<!ELEMENT extxref   EMPTY  >

<!ATTLIST extxref
               extrefid  CDATA    #REQUIRED 
               targetid  CDATA    #IMPLIED  >

<!ELEMENT Symbol   EMPTY  >

<!ATTLIST Symbol
               name  ENTITY    #REQUIRED 
               width  CDATA    #IMPLIED 
               height  CDATA    #IMPLIED  >

<!ELEMENT Subtitle  (#PCDATA | Emph | Sub | Sup | Ftnote | Intxref | Figureref | 
               Tableref | Diagref | extxref | Symbol)* >

<!ELEMENT ServInfosub  ((Title,Subtitle*)?,(S1 | Para | Paragroup | Ptxt | Verbatim | 
               List1 | Table | Tableref | Diag | Diagref | Figure | Figureref | 
               Graphic | DefList | Spec | Indxflag | Attention1 | Attention2 | 
               Attention3 | Attention4 | Attention5 | Topic | Topicref)+) >

<!ATTLIST ServInfosub
               id  ID    #IMPLIED  >

<!ELEMENT S1  ((Para | Paragroup | Ptxt | Verbatim | List1 | Graphic | Spec | 
               Figure | Figureref | DefList | Table | Tableref | Attention1 | 
               Attention2 | Attention3 | Attention4 | Attention5)+,S2*) >
<!ATTLIST S1
               label  CDATA    #IMPLIED  >

<!ELEMENT Para  (Title?,Ptxt) >

<!ELEMENT Ptxt  (#PCDATA | Emph | Sub | Sup | Ftnote | Intxref | Figureref | 
               Tableref | Diagref | extxref | Symbol)* >

<!ELEMENT Paragroup  (Title?,(Graphic | Figure | Spec | (%attentions;) | Ptxt)+) >

<!ELEMENT Graphic   EMPTY  >

<!ATTLIST Graphic
               graphicname  ENTITY    #REQUIRED 
               width  CDATA    #IMPLIED 
               height  CDATA    #IMPLIED 
               id  ID    #IMPLIED  >

<!--Label must be used when enumtype is explicit. Otherwise no enumeration would show-->
<!ELEMENT Figure  ((Title,Subtitle*)?,((Attention1 | Attention2 | Attention3 | 
               Attention4 | Attention5)*,(Graphic,Caption?))+,Callout?) >
<!ATTLIST Figure
               figuretype  CDATA    #IMPLIED 
               id  ID    #IMPLIED  >

<!--Label must be used when enumtype is explicit. Otherwise no enumeration would show.-->
<!ELEMENT Attention1  (Title?,(Para | Attn.Paragroup* | Ptxt | Verbatim | 
               Attn.List1 | Graphic | Attn.Figure | Figureref | Attn.Table | 
               Tableref)+) >
<!ATTLIST Attention1
               name  CDATA    #REQUIRED  >

<!ELEMENT Attn.Paragroup  (Title?,(Graphic | Figure | Spec | Ptxt)+) >

<!ELEMENT Spec  (Title?,(Para | Spec.Paragroup | Verbatim | Ptxt | Graphic | Figure | 
               Figureref | Table | Tableref | List1)+) >

<!ELEMENT Spec.Paragroup  (Title?,(Graphic | Figure | (%attentions;) | Ptxt)+) >

<!ELEMENT Attention2  (Title?,(Para | Paragroup | Ptxt | Verbatim | Attn.List1 | 
               Graphic | Attn.Figure | Figureref | Attn.Table | Tableref)+) >
<!ATTLIST Attention2
               name  CDATA    #REQUIRED  >

<!ELEMENT Verbatim  (Line+) >

<!ELEMENT Line  (#PCDATA | Emph | Sub | Sup | Ftnote | Intxref | Figureref | 
               Tableref | Diagref | extxref | Symbol)* >

<!ELEMENT Attn.List1  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Attn.Item,((
               Symbol*,Attn.Item) | Attn.List2)*) >
<!ATTLIST  Attn.List1
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Attn.Item  (Para | Paragroup | Ptxt | Verbatim | Figure | Figureref | 
               Graphic | DefList | Table | Tableref | Spec)+ >

<!ATTLIST (Attn.Item,Item)
               label  CDATA    #IMPLIED  >

<!ELEMENT DefList  (term,Def)+ >

<!ELEMENT term  (#PCDATA | Emph | Sub | Sup | Ftnote | Intxref | Figureref | 
               Tableref | Diagref | extxref | Symbol | Graphic)* >

<!ELEMENT Def  (Para | Paragroup | Ptxt | Verbatim | Figure | Figureref | Graphic | 
               Table | Tableref | List1 | Indxflag | Spec | Attention1 | Attention2 | 
               Attention3 | Attention4 | Attention5)+ >

<!ELEMENT Table  (Title?,(Para | Paragroup | Ptxt | Verbatim | Tab.Attention1 | 
               Tab.Attention2 | Tab.Attention3 | Tab.Attention4 | Tab.Attention5)*,
               Tgroup+,Legend*) >

<!ATTLIST Table
               shortentry  NMTOKEN    #IMPLIED 
               frame (top | bottom | topbot | all | sides | none)   #IMPLIED 
               colsep  NMTOKEN    #IMPLIED 
               rowsep  NMTOKEN    #IMPLIED 
               pgwide  NMTOKEN    #IMPLIED 
               id  ID    #IMPLIED  >

<!ELEMENT Tab.Attention1  (Title?,(Para | Attn.Paragroup* | Ptxt | Verbatim | 
               Attn.List1 | Graphic)+) >
<!ATTLIST 
               Tab.Attention1   name  CDATA    #REQUIRED  >

<!ELEMENT Tab.Attention2  (Title?,(Para | Attn.Paragroup* | Ptxt | Verbatim | 
               Attn.List1 | Graphic)+) >
<!ATTLIST  Tab.Attention2
               name  CDATA    #REQUIRED  >

<!ELEMENT Tab.Attention3  (Title?,(Para | Attn.Paragroup* | Ptxt | Verbatim | 
               Attn.List1 | Graphic)+) >
<!ATTLIST   Tab.Attention3
               name  CDATA    #REQUIRED  >

<!ELEMENT Tab.Attention4  (Title?,(Para | Attn.Paragroup* | Ptxt | Verbatim | 
               Attn.List1 | Graphic)+) >
<!ATTLIST   Tab.Attention4  name  CDATA    #REQUIRED  >

<!ELEMENT Tab.Attention5  (Title?,(Para | Attn.Paragroup* | Ptxt | Verbatim | 
               Attn.List1 | Graphic)+) >
<!ATTLIST   Tab.Attention5
               name  CDATA    #REQUIRED  >

<!ELEMENT Tgroup  (ColSpec*,SpanSpec*,Thead?,Tbody) >

<!ATTLIST Tgroup
               cols  NMTOKEN    #REQUIRED 
               colsep  NMTOKEN    #IMPLIED 
               rowsep  NMTOKEN    #IMPLIED 
               align (left | right | center | justify | char)   #IMPLIED 
               charoff  CDATA    #IMPLIED 
               char  CDATA    #IMPLIED  >

<!ELEMENT ColSpec   EMPTY  >
<!ATTLIST ColSpec
               colnum  NMTOKEN    #IMPLIED 
               colname  NMTOKEN    #IMPLIED 
               align (left | right | center | justify | char)   #IMPLIED 
               charoff  CDATA    #IMPLIED 
               char  CDATA    #IMPLIED 
               colwidth  CDATA    #IMPLIED 
               colsep  NMTOKEN    #IMPLIED 
               rowsep  NMTOKEN    #IMPLIED  >

<!ELEMENT SpanSpec   EMPTY  >
<!ATTLIST SpanSpec
               namest  NMTOKEN    #REQUIRED 
               nameend  NMTOKEN    #REQUIRED 
               spanname  NMTOKEN    #REQUIRED 
               align (left | right | center | justify | char)   #IMPLIED 
               charoff  CDATA    #IMPLIED 
               char  CDATA    #IMPLIED 
               colsep  NMTOKEN    #IMPLIED 
               rowsep  NMTOKEN    #IMPLIED  >

<!ELEMENT Thead  (ColSpec*,Row+) >

<!ATTLIST Thead
               valign (top | middle | bottom)   #IMPLIED  >

<!ELEMENT Row  (Entry | entrytbl)+ >

<!--no=0 yes=1-->
<!ATTLIST (Attn.Row,Row)
               rowsep  NMTOKEN    #IMPLIED  >

<!ELEMENT Entry  (Title?,(Para | Paragroup | Ptxt | Verbatim | DefList | List1 | 
               Attention1 | Attention2 | Attention3 | Attention4 | Attention5 | 
               Graphic)*) >
<!ATTLIST Entry
               colname  NMTOKEN    #IMPLIED 
               namest  NMTOKEN    #IMPLIED 
               nameend  NMTOKEN    #IMPLIED 
               spanname  NMTOKEN    #IMPLIED 
               morerows  NMTOKEN    #IMPLIED 
               colsep  NMTOKEN    #IMPLIED 
               rowsep  NMTOKEN    #IMPLIED 
               rotate  NMTOKEN    #IMPLIED 
               valign (top | middle | bottom)   #IMPLIED 
               align (left | right | center | justify | char)   #IMPLIED 
               charoff  CDATA    #IMPLIED 
               char  CDATA    #IMPLIED  >

<!ELEMENT List1  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Item,((Symbol*,
               Item) | List2)*) >
<!ATTLIST List1
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!--Explicit enumtype means to reproduce the enumeration for the List item exactly.-->
<!ELEMENT Item  (Para | Paragroup | Ptxt | Verbatim | Figure | Figureref | Graphic | 
               DefList | Table | Tableref | Spec | Attention1 | Attention2 | 
               Attention3 | Attention4 | Attention5)+ >

<!ELEMENT Attention3  (Title?,(Para | Paragroup | Ptxt | Verbatim | Attn.List1 | 
               Graphic | Attn.Figure | Figureref | Attn.Table | Tableref)+) >
<!ATTLIST Attention3
               name  CDATA    #REQUIRED  >

<!ELEMENT Attn.Figure  ((Title,Subtitle*)?,(Graphic,Caption?)+,Callout?) >
<!ATTLIST Attn.Figure
               figuretype  CDATA    #IMPLIED 
               id  ID    #IMPLIED  >

<!ELEMENT Caption  (#PCDATA | Emph | Sub | Sup | Ftnote | Intxref | Figureref | 
               Tableref | Diagref | extxref | Symbol)* >

<!ELEMENT Callout  (Table) >

<!ELEMENT Attn.Table  (Title?,(Para | Attn.Paragroup | Ptxt | Verbatim)*,
               Attn.Tgroup,Legend*) >
<!ATTLIST Attn.Table
               shortentry  NMTOKEN    #IMPLIED 
               frame (top | bottom | topbot | all | sides | none)   #IMPLIED 
               colsep  NMTOKEN    #IMPLIED 
               rowsep  NMTOKEN    #IMPLIED 
               pgwide  NMTOKEN    #IMPLIED 
               id  ID    #IMPLIED  >

<!ELEMENT Attn.Tgroup  (ColSpec*,SpanSpec*,Attn.Thead,Attn.Tbody) >
<!ATTLIST Attn.Tgroup
               cols  NMTOKEN    #REQUIRED 
               colsep  NMTOKEN    #IMPLIED 
               rowsep  NMTOKEN    #IMPLIED 
               align (left | right | center | justify | char)   #IMPLIED 
               charoff  CDATA    #IMPLIED 
               char  CDATA    #IMPLIED  >

<!ELEMENT Attn.Thead  (ColSpec*,Attn.Row+) >
<!ATTLIST Attn.Thead
               valign (top | middle | bottom)   #IMPLIED  >


<!ELEMENT Attn.Row  (Attn.Entry | entrytbl)+ >

<!ELEMENT Attn.Entry  (Title?,(Para | Paragroup | Ptxt | Verbatim | DefList | List1 | 
               Graphic)*) >
<!ATTLIST Attn.Entry
               colname  NMTOKEN    #IMPLIED 
               namest  NMTOKEN    #IMPLIED 
               nameend  NMTOKEN    #IMPLIED 
               spanname  NMTOKEN    #IMPLIED 
               morerows  NMTOKEN    #IMPLIED 
               colsep  NMTOKEN    #IMPLIED 
               rowsep  NMTOKEN    #IMPLIED 
               rotate  NMTOKEN    #IMPLIED 
               valign (top | middle | bottom)   #IMPLIED 
               align (left | right | center | justify | char)   #IMPLIED 
               charoff  CDATA    #IMPLIED 
               char  CDATA    #IMPLIED  >

<!ELEMENT entrytbl  (ColSpec*,SpanSpec*,Entry.Thead?,Entry.Tbody)+ >
<!ATTLIST entrytbl
               cols  NMTOKEN    #REQUIRED 
               colname  NMTOKEN    #IMPLIED 
               spanname  NMTOKEN    #IMPLIED 
               colsep  NMTOKEN    #IMPLIED 
               rowsep  NMTOKEN    #IMPLIED 
               align (left | right | center | justify | char)   #IMPLIED 
               charoff  CDATA    #IMPLIED 
               char  CDATA    #IMPLIED  >

<!ELEMENT Entry.Thead  (Entry+) >
<!ATTLIST Entry.Thead
               valign (top | middle | bottom)   #IMPLIED  >


<!ELEMENT Entry.Tbody  (Entry+) >

<!ATTLIST Entry.Tbody
               valign (top | middle | bottom)   #IMPLIED  >

<!ELEMENT Attn.Tbody  (Attn.Row+) >
<!ATTLIST Attn.Tbody
               valign (top | middle | bottom)   #IMPLIED  >

<!ELEMENT Legend  (Title?,(Para | Paragroup | Ptxt | Verbatim | DefList | List1 | 
               Attention1 | Attention2 | Attention3 | Attention4 | Attention5)+) >

<!ELEMENT Attention4  (Title?,(Para | Paragroup | Ptxt | Verbatim | Attn.List1 | 
               Graphic | Attn.Figure | Figureref | Attn.Table | Tableref)+) >
<!ATTLIST Attention4
               name  CDATA    #REQUIRED  >

<!ELEMENT Attention5  (Title?,(Para | Paragroup | Ptxt | Verbatim | Attn.List1 | 
               Graphic | Attn.Figure | Figureref | Attn.Table | Tableref)+) >
<!ATTLIST Attention5
               name  CDATA    #REQUIRED  >

<!ELEMENT List2  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Item,((Symbol*,
               Item) | List3)*) >
<!ATTLIST List2
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT List3  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Item,((Symbol*,
               Item) | List4)*) >
<!ATTLIST List3
                type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT List4  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Item,((Symbol*,
               Item) | List5)*) >
<!ATTLIST 
               List4
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT List5  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Item)+ >
<!ATTLIST List5
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Tbody  (Row+) >
<!ATTLIST Tbody
               valign (top | middle | bottom)   #IMPLIED  >

<!ELEMENT Indxflag   EMPTY  >

<!ATTLIST Indxflag
               ref1  CDATA    #IMPLIED 
               ref2  CDATA    #IMPLIED 
               ref3  CDATA    #IMPLIED 
               ref4  CDATA    #IMPLIED  >

<!ELEMENT Attn.List2  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Attn.Item,((
               Symbol*,Attn.Item) | Attn.List3)*) >
<!ATTLIST Attn.List2
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Attn.List3  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Attn.Item,((
               Symbol*,Attn.Item) | Attn.List4)*) >
<!ATTLIST Attn.List3
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Attn.List4  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Attn.Item,((
               Symbol*,Attn.Item) | Attn.List5)*) >
<!ATTLIST Attn.List4
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Attn.List5  (Title?,(Figure | Figureref | Graphic)*,Symbol*,Attn.Item)+ >
<!ATTLIST Attn.List5
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT S2  ((Para | Paragroup | Ptxt | Verbatim | List1 | Graphic | Spec | 
               Figure | Figureref | DefList | Table | Tableref | Attention1 | 
               Attention2 | Attention3 | Attention4 | Attention5)+,S3*) >
<!ATTLIST S2
               label  CDATA    #IMPLIED  >

<!ELEMENT S3  ((Para | Paragroup | Ptxt | Verbatim | List1 | Graphic | Spec | 
               Figure | Figureref | DefList | Table | Tableref | Attention1 | 
               Attention2 | Attention3 | Attention4 | Attention5)+,S4*) >
<!ATTLIST S3
               label  CDATA    #IMPLIED  >

<!ELEMENT S4  ((Para | Paragroup | Ptxt | Verbatim | List1 | Graphic | Spec | 
               Figure | Figureref | DefList | Table | Tableref | Attention1 | 
               Attention2 | Attention3 | Attention4 | Attention5)+,S5*) >
<!ATTLIST S4
               label  CDATA    #IMPLIED  >

<!ELEMENT S5  (Para | Paragroup | Ptxt | Verbatim | List1 | Graphic | Spec | Figure | 
               Figureref | DefList | Table | Tableref | Attention1 | Attention2 | 
               Attention3 | Attention4 | Attention5)+ >
<!ATTLIST S5
               label  CDATA    #IMPLIED  >

<!ELEMENT Diag  (Title?,(TesTgroup+ | (Condition,(Ps | Action)*)+)) >
<!ATTLIST Diag
               type (Test | condition)   #IMPLIED 
               label  CDATA    #IMPLIED 
               id  ID    #IMPLIED  >

<!--Label must be used when enumtype is explicit. Otherwise no enumeration would show.-->
<!ELEMENT Testgroup  (Title?,(S1 | Para | Paragroup | Ptxt | Verbatim | List1 | 
               Table | Tableref | Diag | Diagref | Figure | Figureref | Graphic | 
               DefList | Spec | Indxflag | Attention1 | Attention2 | Attention3 | 
               Attention4 | Attention5)*,Test1*,Question,(Figure | Figureref | 
               Table | Tableref | Graphic)*,(Result,Action)+) >

<!ATTLIST Testgroup
               id  ID    #IMPLIED  >

<!ELEMENT Test1  ((Spec | Attention1 | Attention2 | Attention3 | Attention4 | 
               Attention5 | Para | Paragroup | Ptxt | Verbatim | Graphic | List1 | 
               Table | Tableref)+,Test2*) >

<!ATTLIST  Test1
               label  CDATA    #IMPLIED 
               id  ID    #IMPLIED  >

<!ELEMENT Test2  ((Spec | Attention1 | Attention2 | Attention3 | Attention4 | 
               Attention5 | Para | Paragroup | Ptxt | Verbatim | Graphic | List1 | 
               Table | Tableref)+,Test3*) >
<!ATTLIST Test2
               label  CDATA    #IMPLIED 
               id  ID    #IMPLIED  >

<!ELEMENT Test3  ((Spec | Attention1 | Attention2 | Attention3 | Attention4 | 
               Attention5 | Para | Paragroup | Ptxt | Verbatim | Graphic | List1 | 
               Table | Tableref)+,Test4*) >
<!ATTLIST Test3
               label  CDATA    #IMPLIED 
               id  ID    #IMPLIED  >

<!ELEMENT Test4  (Spec | Attention1 | Attention2 | Attention3 | Attention4 | 
               Attention5 | Para | Paragroup | Ptxt | Verbatim | Graphic | List1 | 
               Table | Tableref)+ >
<!ATTLIST Test4
               label  CDATA    #IMPLIED 
               id  ID    #IMPLIED  >

<!--Label must be used when enumtype is explicit. Otherwise no enumeration would show.-->
<!ELEMENT Question  (#PCDATA | Emph | Sub | Sup | Ftnote | Intxref | Figureref | 
               Tableref | Diagref | extxref | Symbol)* >

<!ELEMENT Result  (#PCDATA | Emph | Sub | Sup | Ftnote | Intxref | Figureref | 
               Tableref | Diagref | extxref | Symbol)* >

<!ELEMENT Action  (Para | Paragroup | Ptxt | Verbatim | List1 | Attention1 | 
               Attention2 | Attention3 | Attention4 | Attention5) >

<!ELEMENT Condition  (Test1 | Spec | Attention1 | Attention2 | Attention3 | 
               Attention4 | Attention5 | Para | Paragroup | Ptxt | Verbatim | 
               Graphic | Figure | Figureref)+ >

<!ELEMENT Ps  (Para | Ps.Paragroup | Ptxt | Verbatim | Ps.Test1)+ >

<!ELEMENT Ps.Paragroup  (Title?,(Ps.Spec | Ptxt)+) >

<!ELEMENT Ps.Spec  (Title?,(Para | Verbatim | Ptxt | Figureref | Table | Tableref | 
               List1)+) >

<!ELEMENT Ps.Test1  ((Spec | Ps.Attention1 | Ps.Attention2 | Ps.Attention3 | 
               Ps.Attention4 | Ps.Attention5 | Para | Ps.Paragroup | Ptxt | 
               Verbatim | Ps.List1 | Table | Tableref)+,Test2*) >
<!ATTLIST Ps.Test1
               label  CDATA    #IMPLIED 
               id  ID    #IMPLIED  >

<!ELEMENT Ps.Attention1  (Title?,(Para | Ptxt | Verbatim)+) >
<!ATTLIST Ps.Attention1
               name  CDATA    #REQUIRED  >

<!ELEMENT Ps.Attention2  (Title?,(Para | Ptxt | Verbatim)+) >
<!ATTLIST  Ps.Attention2
               name  CDATA    #REQUIRED  >

<!ELEMENT Ps.Attention3  (Title?,(Para | Ptxt | Verbatim)+) >
<!ATTLIST Ps.Attention3
               name  CDATA    #REQUIRED  >

<!ELEMENT Ps.Attention4  (Title?,(Para | Ptxt | Verbatim)+) >
<!ATTLIST Ps.Attention4
               name  CDATA    #REQUIRED  >

<!ELEMENT Ps.Attention5  (Title?,(Para | Ptxt | Verbatim)+) >
<!ATTLIST Ps.Attention5
               name  CDATA    #REQUIRED  >

<!ELEMENT Ps.List1  (Title?,Symbol*,Ps.Item,((Symbol*,Ps.Item) | Ps.List2)*) >
<!ATTLIST Ps.List1
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Ps.Item  (Para | Ps.Paragroup | Ptxt | Verbatim | DefList | Table | 
               Tableref | Ps.Attention1 | Ps.Attention2 | Ps.Attention3 | 
               Ps.Attention4 | Ps.Attention5)+ >

<!ELEMENT Ps.List2  (Title?,Symbol*,Ps.Item,((Symbol*,Ps.Item) | Ps.List3)*) >
<!ATTLIST Ps.List2
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Ps.List3  (Title?,Symbol*,Ps.Item,((Symbol*,Ps.Item) | Ps.List4)*) >
<!ATTLIST Ps.List3
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Ps.List4  (Title?,Symbol*,Ps.Item,((Symbol*,Ps.Item) | Ps.List5)*) >
<!ATTLIST Ps.List4
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Ps.List5  (Title?,Symbol*,Ps.Item)+ >
<!ATTLIST  Ps.List5
               type (ordered | unordered)   #IMPLIED 
               enumtype (bullet | unlabeled | dash | arabicnum | loweralpha | 
               upperalpha | lowerroman | upperroman | legal | explicit)   #IMPLIED  >

<!ELEMENT Topic  ((Title,Subtitle*)?,(S1 | Para | Paragroup | Ptxt | Verbatim | 
               List1 | Table | Tableref | Diag | Diagref | Figure | Figureref | 
               Graphic | DefList | Spec | Indxflag | (%attentions;))+) >

<!ATTLIST Topic
               id  ID    #IMPLIED  >

<!ELEMENT Topicref   EMPTY  >
<!ATTLIST Topicref
               refid  IDREF    #REQUIRED  >


<!--Servinfo content is located following paths model near end of the file. -->
<!ELEMENT OEMinfo  (Vehicles?,VehicleVars?,Platforms?,SvcCatgs?,ConfigGroups?,
               ConfigGroupYrs?,ConfigVars?,ConfigVarYrs?,VehConfigVarYrs?,
               Components?,Symptoms?,SymptomCats?,SvcInfoTypeSubQuals?,MktAreas?) >

<!--Table 85, 98, Path 1-7-->
<!ELEMENT Vehicles  (Vehicle+) >

<!ELEMENT Vehicle   EMPTY  >


<!--Table 98 Country of Origin Country Codes-->
<!--OEM Defined. There must be an exchange of model ID's with descriptions-->
<!ATTLIST Vehicle
               vehSGMLid  ID    #REQUIRED 
               countrycode  NMTOKENS    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               modelid  NMTOKEN    #REQUIRED 
               vehtypenbr  NMTOKEN    #REQUIRED 
               modeldesc  CDATA    #REQUIRED 
               modelqual  CDATA    #IMPLIED 
               platformseqnbr  NMTOKEN    #IMPLIED 
               startgrossvehwt  NMTOKEN    #IMPLIED 
               endgrossvehwt  NMTOKEN    #IMPLIED 
               unitcode  NMTOKEN    #IMPLIED 
               loadcapacitydesc  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Tables 104-106, Paths 1-7-->
<!ELEMENT VehicleVars  (VehicleVar+) >

<!ELEMENT VehicleVar  (Vehiclerange+) >

<!ATTLIST VehicleVar
               vehvarSGMLid  ID    #REQUIRED 
               vehvarseqnbr  NMTOKEN    #REQUIRED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!ELEMENT Vehiclerange   EMPTY  >

<!ATTLIST Vehiclerange
               vehrngseqnbr  NMTOKEN    #REQUIRED 
               assemplantcode  CDATA    #REQUIRED 
               vehrngtype (VIN | Builddate)   #REQUIRED 
               start  CDATA    #REQUIRED 
               end  CDATA    #IMPLIED  >

<!--Table 77, Path 1-7-->
<!ELEMENT Platforms  (Platform+) >

<!ELEMENT Platform   EMPTY  >

<!ATTLIST Platform
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               platformseqnbr  NMTOKEN    #REQUIRED 
               platformcode  CDATA    #REQUIRED 
               platformdesc  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Tables 39, 58; Paths 2,3,5,6,7,9,10,12,13,15,16,18,19-->
<!ELEMENT SvcCatgs  (Svccatg+) >

<!ELEMENT Svccatg   EMPTY  >

<!ATTLIST Svccatg
               svccatgSGMLid  ID    #REQUIRED 
               svccatgtypenbr  NMTOKEN    #REQUIRED 
               svccatgnbr  NMTOKEN    #REQUIRED 
               svccatgname  CDATA    #REQUIRED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Table 30; Paths 17-19-->
<!ELEMENT ConfigGroups  (Axle | Bodycabaccess | Brake | Driveline | EngineMotor | 
               HVAC | Steering | Suspension | Transtaxle)+ >

<!--Table 13-->
<!ELEMENT Axle   EMPTY  >

<!ATTLIST Axle
               configgrpSGMLid  ID    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               axlemfrcode  NMTOKEN    #REQUIRED 
               axledesc  CDATA    #REQUIRED 
               axlemodelcode  CDATA    #REQUIRED 
               axlecapacity  NMTOKEN    #REQUIRED 
               axlecapacityunitcode  NMTOKEN    #REQUIRED 
               axleringgearsize  CDATA    #IMPLIED 
               axleringgearunitcode  NMTOKEN    #IMPLIED 
               axlegearratio  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "8" >

<!--Table 14-->
<!ELEMENT Bodycabaccess   EMPTY  >

<!ATTLIST Bodycabaccess
               configgrpSGMLid  ID    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               bodycabmfrcode  NMTOKEN    #REQUIRED 
               bodycabdesc  CDATA    #REQUIRED 
               nbrofdoors  NMTOKEN    #REQUIRED 
               bodycabstyletype  CDATA    #REQUIRED 
               mfrbodycabcode  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "5" >

<!--Table 15-->
<!ELEMENT Brake   EMPTY  >

<!ATTLIST Brake
               configgrpSGMLid  ID    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               brakemfrcode  NMTOKEN    #REQUIRED 
               braketypenbr  NMTOKEN    #REQUIRED 
               brakedesc  CDATA    #IMPLIED 
               brakesize  CDATA    #IMPLIED 
               unitcode  NMTOKEN    #IMPLIED 
               brakesystemtype  CDATA    #REQUIRED 
               brakecontrolsystemtype  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "1" >

<!--Table 17-->
<!ELEMENT Driveline   EMPTY  >

<!ATTLIST Driveline
               configgrpSGMLid  ID    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               drivemfrcode  NMTOKEN    #REQUIRED 
               drivetypenbr  NMTOKEN    #REQUIRED 
               drivedesc  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "7" >

<!--Table 18-->
<!ELEMENT EngineMotor  (Combustengine | Motor) >

<!ATTLIST EngineMotor
               configgrpSGMLid  ID    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               engmotormfrcode  NMTOKEN    #REQUIRED 
               engmotordesc  CDATA    #REQUIRED 
               engmotorvin  CDATA    #IMPLIED 
               emissionconfig  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "2" >

<!--Table 16-->
<!ELEMENT Combustengine   EMPTY  >

<!ATTLIST Combustengine
               engdisp  CDATA    #REQUIRED 
               unitcode  NMTOKEN    #REQUIRED 
               blockconfig  CDATA    #REQUIRED 
               nbrofcyl  NMTOKEN    #REQUIRED 
               valveconfigdesc  CDATA    #IMPLIED 
               aspirtype  CDATA    #IMPLIED 
               fueltype  CDATA    #REQUIRED 
               fuelsystemtype  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Table 20-->
<!ELEMENT Motor   EMPTY  >

<!ATTLIST Motor
               powersource  CDATA    #REQUIRED  >

<!--Table 19-->
<!ELEMENT HVAC   EMPTY  >

<!ATTLIST HVAC
               configgrpSGMLid  ID    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               hvacmfrcode  NMTOKEN    #REQUIRED 
               hvactype  CDATA    #REQUIRED 
               hvacdesc  CDATA    #REQUIRED 
               hvacmodel  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "9" >

<!--Table 21-->
<!ELEMENT Steering   EMPTY  >

<!ATTLIST Steering
               configgrpSGMLid  ID    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               steeringmfrcode  NMTOKEN    #IMPLIED 
               steeringdesc  CDATA    #REQUIRED 
               steeringtype  CDATA    #IMPLIED 
               sterringassisttype  CDATA    #IMPLIED 
               steeringcolumntype  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "3" >

<!--Table 22-->
<!ELEMENT Suspension   EMPTY  >

<!ATTLIST Suspension
               configgrpSGMLid  ID    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               suspmfrcode  NMTOKEN    #REQUIRED 
               susptypenbr  CDATA    #REQUIRED 
               suspdesc  CDATA    #REQUIRED 
               suspcapacity  NMTOKEN    #IMPLIED 
               unitcode  NMTOKEN    #IMPLIED 
               dampertype  CDATA    #REQUIRED 
               springtype  CDATA    #REQUIRED 
               linkarmconfig  CDATA    #IMPLIED 
               dampingcntldesc  CDATA    #IMPLIED 
               levelingsystem  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "6" >

<!--Table 23-->
<!ELEMENT Transtaxle   EMPTY  >

<!ATTLIST Transtaxle
               configgrpSGMLid  ID    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               transtaxlemfrcode  NMTOKEN    #REQUIRED 
               transtaxleind  NMTOKEN    #REQUIRED 
               transdesc  CDATA    #REQUIRED 
               nbrofspeeds  NMTOKEN    #REQUIRED 
               transtype  CDATA    #REQUIRED 
               mfrtranscode  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "4" >

<!--Table 64, Paths 11-13; Table 87, Paths 4-7-->
<!ELEMENT ConfigGroupYrs  (AxleYr | BodycabaccessYr | BrakeYr | DrivelineYr | 
               EngineMotorYr | HVACYr | SteeringYr | SuspensionYr | TranstaxleYr)+ >

<!--Table 65-->
<!ELEMENT AxleYr   EMPTY  >

<!ATTLIST AxleYr
               configgrpyrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               axlemfrcode  NMTOKEN    #REQUIRED 
               axledesc  CDATA    #REQUIRED 
               axlemodelcode  CDATA    #REQUIRED 
               axlecapacity  NMTOKEN    #REQUIRED 
               axlecapacityunitcode  NMTOKEN    #REQUIRED 
               axleringgearsize  CDATA    #IMPLIED 
               axleringgearunitcode  NMTOKEN    #IMPLIED 
               axlegearratio  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "8" >

<!--Table 66-->
<!ELEMENT BodycabaccessYr   EMPTY  >

<!ATTLIST BodycabaccessYr
               configgrpyrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               bodycabmfrcode  NMTOKEN    #REQUIRED 
               bodycabdesc  CDATA    #REQUIRED 
               nbrofdoors  NMTOKEN    #REQUIRED 
               bodycabstyletype  CDATA    #REQUIRED 
               mfrbodycabcode  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "5" >

<!--Table 67-->
<!ELEMENT BrakeYr   EMPTY  >

<!ATTLIST BrakeYr
               configgrpyrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               brakemfrcode  NMTOKEN    #REQUIRED 
               braketypenbr  NMTOKEN    #REQUIRED 
               brakedesc  CDATA    #IMPLIED 
               brakesize  CDATA    #IMPLIED 
               unitcode  NMTOKEN    #IMPLIED 
               brakesystemtype  CDATA    #REQUIRED 
               brakecontrolsystemtype  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "1" >

<!--Table 69-->
<!ELEMENT DrivelineYr   EMPTY  >

<!ATTLIST DrivelineYr
               configgrpyrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               drivemfrcode  NMTOKEN    #REQUIRED 
               drivetypenbr  NMTOKEN    #REQUIRED 
               drivedesc  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "7" >

<!--Table 70-->
<!ELEMENT EngineMotorYr  (CombustengineYr | MotorYr) >

<!ATTLIST EngineMotorYr
               configgrpyrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               engmotormfrcode  NMTOKEN    #REQUIRED 
               engmotordesc  CDATA    #REQUIRED 
               engmotorvin  CDATA    #IMPLIED 
               emissionconfig  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "2" >

<!--Table 68-->
<!ELEMENT CombustengineYr   EMPTY  >

<!ATTLIST CombustengineYr
               engdisp  CDATA    #REQUIRED 
               unitcode  NMTOKEN    #REQUIRED 
               blockconfig  CDATA    #REQUIRED 
               nbrofcyl  NMTOKEN    #REQUIRED 
               valveconfigdesc  CDATA    #IMPLIED 
               aspirtype  CDATA    #IMPLIED 
               fueltype  CDATA    #REQUIRED 
               fuelsystemtype  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Table 72-->
<!ELEMENT MotorYr   EMPTY  >

<!ATTLIST MotorYr
               powersource  CDATA    #REQUIRED  >

<!--Table 71-->
<!ELEMENT HVACYr   EMPTY  >

<!ATTLIST HVACYr
               configgrpyrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               hvacmfrcode  NMTOKEN    #REQUIRED 
               hvactype  CDATA    #REQUIRED 
               hvacdesc  CDATA    #REQUIRED 
               hvacmodel  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "9" >

<!--Table 73-->
<!ELEMENT SteeringYr   EMPTY  >

<!ATTLIST SteeringYr
               configgrpyrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               steeringmfrcode  NMTOKEN    #IMPLIED 
               steeringdesc  CDATA    #REQUIRED 
               steeringtype  CDATA    #IMPLIED 
               sterringassisttype  CDATA    #IMPLIED 
               steeringcolumntype  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "3" >

<!--Table 74-->
<!ELEMENT SuspensionYr   EMPTY  >

<!ATTLIST SuspensionYr
               configgrpyrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               suspmfrcode  NMTOKEN    #REQUIRED 
               susptypenbr  CDATA    #REQUIRED 
               suspdesc  CDATA    #REQUIRED 
               suspcapacity  NMTOKEN    #IMPLIED 
               unitcode  NMTOKEN    #IMPLIED 
               dampertype  CDATA    #REQUIRED 
               springtype  CDATA    #REQUIRED 
               linkarmconfig  CDATA    #IMPLIED 
               dampingcntldesc  CDATA    #IMPLIED 
               levelingsystem  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "6" >

<!--Table 75-->
<!ELEMENT TranstaxleYr   EMPTY  >

<!ATTLIST TranstaxleYr
               configgrpyrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               transtaxlemfrcode  NMTOKEN    #REQUIRED 
               transtaxleind  NMTOKEN    #REQUIRED 
               transdesc  CDATA    #REQUIRED 
               nbrofspeeds  NMTOKEN    #REQUIRED 
               transtype  CDATA    #REQUIRED 
               mfrtranscode  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED 
               configgrpnbr  NMTOKEN    #FIXED "4" >

<!--Tables 31-33, Paths 17-19-->
<!ELEMENT ConfigVars  (ConfigVar+) >

<!ELEMENT ConfigVar  (MfrConfigRange+) >

<!ATTLIST ConfigVar
               configvarSGMLid  ID    #REQUIRED 
               configgrpnbr  NMTOKEN    #REQUIRED 
               mcseqnbr  NMTOKEN    #REQUIRED 
               mcvseqnbr  NMTOKEN    #REQUIRED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!ELEMENT MfrConfigRange   EMPTY  >

<!ATTLIST MfrConfigRange
               mcrseqnbr  NMTOKEN    #REQUIRED 
               rangetype (serialnbr | productdate)   #REQUIRED 
               start  CDATA    #REQUIRED 
               end  CDATA    #IMPLIED  >

<!--Table 45-47, Paths 11-13-->
<!ELEMENT ConfigVarYrs  (ConfigVarYr+) >

<!ELEMENT ConfigVarYr  (MfrYrConfigRange+) >

<!ATTLIST ConfigVarYr
               configvaryrSGMLid  ID    #REQUIRED 
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               configgrpnbr  NMTOKEN    #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               mycvseqnbr  NMTOKEN    #REQUIRED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!ELEMENT MfrYrConfigRange   EMPTY  >

<!ATTLIST MfrYrConfigRange
               mycrseqnbr  NMTOKEN    #REQUIRED 
               rangetype (serialnbr | productdate)   #REQUIRED 
               start  CDATA    #REQUIRED 
               end  CDATA    #IMPLIED  >

<!--Table 87-89, Paths 4-7-->
<!ELEMENT VehConfigVarYrs  (VehConfigVarYr+) >

<!ELEMENT VehConfigVarYr  (VehConfigVarYrRange+) >

<!ATTLIST VehConfigVarYr
               vehconfigvaryrSGMLid  ID    #REQUIRED 
               vehSGMLid  IDREF    #REQUIRED 
               configgrpnbr  NMTOKEN    #REQUIRED 
               mycseqnbr  NMTOKEN    #REQUIRED 
               mycvseqnbr  NMTOKEN    #REQUIRED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!ELEMENT VehConfigVarYrRange   EMPTY  >

<!ATTLIST VehConfigVarYrRange
               mycrseqnbr  NMTOKEN    #REQUIRED 
               rangetype (serialnbr | productdate)   #REQUIRED 
               start  CDATA    #REQUIRED 
               end  CDATA    #IMPLIED  >

<!--Table 24, Paths 3, 6, 10, 13, 16, 19-->
<!ELEMENT Components  (Component+) >

<!ELEMENT Component   EMPTY  >

<!ATTLIST Component
               compSGMLid  ID    #REQUIRED 
               compid  NMTOKEN    #REQUIRED 
               compmfrcode  NMTOKEN    #REQUIRED 
               compdesc  CDATA    #REQUIRED 
               compmfrmodelnbr  CDATA    #IMPLIED 
               compVMRScode  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Table 60,62, Paths : ALL-->
<!ELEMENT Symptoms  (Symptom+) >

<!ELEMENT Symptom   EMPTY  >

<!ATTLIST Symptom
               sympSGMLid  ID    #REQUIRED 
               sympcatgnbr  NMTOKEN    #IMPLIED 
               sympnbr  NMTOKEN    #REQUIRED 
               sympcode  CDATA    #IMPLIED 
               sympdesc  CDATA    #REQUIRED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Table 61,62; Paths ALL-->
<!ELEMENT SymptomCats  (SymptomCat+) >

<!ELEMENT SymptomCat   EMPTY  >

<!ATTLIST SymptomCat
               sympcatgnbr  NMTOKEN    #REQUIRED 
               sympcatgdesc  CDATA    #REQUIRED 
               sympcatgcode  CDATA    #IMPLIED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Table 59, Paths All-->
<!ELEMENT SvcInfoTypeSubQuals  (SvcInfoTypeSubQual+) >

<!ELEMENT SvcInfoTypeSubQual   EMPTY  >

<!ATTLIST SvcInfoTypeSubQual
               svcinfosubqualSGMLid  ID    #REQUIRED 
               svcinfotypenbr  NMTOKEN    #REQUIRED 
               svcinfoqualnbr  NMTOKEN    #REQUIRED 
               svcinfosubqualnbr  NMTOKEN    #REQUIRED 
               svcinfosubqualdesc  CDATA    #REQUIRED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Table 27; Paths:ALL-->
<!ELEMENT MktAreas  (Mktarea+) >

<!ELEMENT Mktarea   EMPTY  >

<!ATTLIST Mktarea
               mktareaSGMLid  ID    #REQUIRED 
               mktareaseqnbr  NMTOKEN    #REQUIRED 
               mktareadesc  CDATA    #REQUIRED 
               update (delete | change | original)   #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!ELEMENT Paths  (Path1 | Path2 | Path3 | Path4 | Path5 | Path6 | Path7 | Path8 | 
               Path9 | Path10 | Path11 | Path12 | Path13 | Path14 | Path15 | Path16 | 
               Path17 | Path18 | Path19)+ >

<!--Supporting OEM Tables 103 (85,105)-->
<!ELEMENT Path1  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!--Links Tbl 85-->
<!ATTLIST Path1
               vehSGMLid  IDREF    #REQUIRED 
               vehvarSGMLid  IDREF    #IMPLIED  >

<!ELEMENT ServInforef   EMPTY  >

<!ATTLIST ServInforef
               servinfoSGMLid  IDREF    #REQUIRED  >

<!ELEMENT SIEdeletefrompath   EMPTY  >

<!ATTLIST SIEdeletefrompath
               servinfoSGMLid  CDATA    #REQUIRED 
               ldup  CDATA    #REQUIRED  >

<!--Supporting OEM Tables 102 (85,99,105)-->
<!ELEMENT Path2  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!--Links Tbl 85-->
<!ATTLIST Path2
               vehSGMLid  IDREF    #REQUIRED 
               svccatgSGMLid  IDREF    #REQUIRED 
               vehvarSGMLid  IDREF    #IMPLIED  >

<!--Supporting OEM Tables 101 (85,99,100,105)-->
<!ELEMENT Path3  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!--Links Tbl 85-->
<!ATTLIST Path3
               vehSGMLid  IDREF    #REQUIRED 
               svccatgSGMLid  IDREF    #REQUIRED 
               compSGMLid  IDREF    #REQUIRED 
               vehvarSGMLid  IDREF    #IMPLIED  >

<!--Supporting OEM Tables 97 (85,87,90,105)-->
<!ELEMENT Path4  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!--Links Tbl 85-->
<!ATTLIST Path4
               vehSGMLid  IDREF    #REQUIRED 
               configgrpyrSGMLid  IDREF    #REQUIRED 
               vehconfigvaryrSGMLid  IDREF    #IMPLIED 
               vehvarSGMLid  IDREF    #IMPLIED  >

<!--Supporting OEM Tables 96 (85,87,90,91,99,105)-->
<!ELEMENT Path5  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!--Links Tbl 85-->
<!ATTLIST Path5
               vehSGMLid  IDREF    #REQUIRED 
               configgrpyrSGMLid  IDREF    #REQUIRED 
               svccatgSGMLid  IDREF    #REQUIRED 
               vehconfigvaryrSGMLid  IDREF    #IMPLIED 
               vehvarSGMLid  IDREF    #IMPLIED  >

<!--Supporting OEM Tables 95 (85,87,90,91,94,99,105)-->
<!ELEMENT Path6  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!--Links Tbl 85-->
<!ATTLIST Path6
               vehSGMLid  IDREF    #REQUIRED 
               configgrpyrSGMLid  IDREF    #REQUIRED 
               svccatgSGMLid  IDREF    #REQUIRED 
               compSGMLid  IDREF    #REQUIRED 
               vehconfigvaryrSGMLid  IDREF    #IMPLIED 
               vehvarSGMLid  IDREF    #IMPLIED  >

<!--Supporting OEM Tables 93 (85,87,90,91,92,99,105)-->
<!ELEMENT Path7  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!--Links Tbl 85-->
<!--This also links to a config group year SGML Ref-->
<!ATTLIST Path7
               vehSGMLid  IDREF    #REQUIRED 
               configgrpyrSGMLid  IDREF    #REQUIRED 
               svccatgSGMLid  IDREF    #REQUIRED 
               assocconfiggrpyrSGMLid  IDREF    #REQUIRED 
               vehconfigvaryrSGMLid  IDREF    #IMPLIED 
               vehvarSGMLid  IDREF    #IMPLIED  >

<!--Supporting OEM Tables 57 (44)-->
<!ELEMENT Path8  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path8
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED  >

<!--Supporting OEM Tables 56 (44,48,53)-->
<!ELEMENT Path9  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path9
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               svccatgSGMLid  IDREF    #REQUIRED  >

<!--Supporting OEM Tables 55 (44,48,53,54)-->
<!ELEMENT Path10  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path10
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               svccatgSGMLid  IDREF    #REQUIRED 
               compSGMLid  IDREF    #REQUIRED  >

<!--Supporting OEM Tables 52 (44,47,64)-->
<!ELEMENT Path11  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path11
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               configgrpyrSGMLid  IDREF    #REQUIRED 
               configvaryrSGMLid  IDREF    #IMPLIED  >

<!--Supporting OEM Tables 51 (44,47,48,64)-->
<!ELEMENT Path12  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path12
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               configgrpyrSGMLid  IDREF    #REQUIRED 
               configvaryrSGMLid  IDREF    #IMPLIED 
               svccatgSGMLid  IDREF    #REQUIRED  >

<!--Supporting OEM Tables 50 (44,47,48,49,64)-->
<!ELEMENT Path13  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path13
               year  NMTOKEN    #REQUIRED 
               yeartype (production | model)   #REQUIRED 
               configgrpyrSGMLid  IDREF    #REQUIRED 
               configvaryrSGMLid  IDREF    #IMPLIED 
               svccatgSGMLid  IDREF    #REQUIRED 
               compSGMLid  IDREF    #REQUIRED  >

<!--Supporting OEM Table 43-->
<!ELEMENT Path14  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!--Supporting OEM Tables 42 (39)-->
<!ELEMENT Path15  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path15
               svccatgSGMLid  IDREF    #REQUIRED  >

<!--Supporting OEM Tables 41 (39,40)-->
<!ELEMENT Path16  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path16
               svccatgSGMLid  IDREF    #REQUIRED 
               compSGMLid  IDREF    #REQUIRED  >

<!--Supporting OEM Tables 38 (30,33)-->
<!ELEMENT Path17  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path17
               configgrpSGMLid  IDREF    #REQUIRED 
               configvarSGMLid  IDREF    #IMPLIED  >

<!--Supporting OEM Tables 37 (30,33,34)-->
<!ELEMENT Path18  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path18
               configgrpSGMLid  IDREF    #REQUIRED 
               svccatgSGMLid  IDREF    #REQUIRED 
               configvarSGMLid  IDREF    #IMPLIED  >

<!--Supporting OEM Tables 36 (30,33,34,35)-->
<!ELEMENT Path19  (ServInfo | ServInforef | SIEdeletefrompath)+ >

<!ATTLIST Path19
               configgrpSGMLid  IDREF    #REQUIRED 
               svccatgSGMLid  IDREF    #REQUIRED 
               compSGMLid  IDREF    #REQUIRED 
               configvarSGMLid  IDREF    #IMPLIED  >

<!NOTATION cgmbin SYSTEM "FILE://ISO 8632:1993//NOTATION Binary encoding//EN" >

<!NOTATION saetiff SYSTEM "FILE://-//USA-SAE//NOTATION tiff//EN" >

<!ENTITY % ISOlat1   SYSTEM "FILE://ISO 8879:1986//ENTITIES Added Latin 1//EN"    >

%ISOlat1;
<!ENTITY % ISOpub   SYSTEM "FILE://ISO 8879:1986//ENTITIES Publishing//EN"    >

%ISOpub;
<!ENTITY % ISOgrk3   SYSTEM "FILE://ISO 8879:1986//ENTITIES Greek Symbols//EN"    >

%ISOgrk3;
<!ENTITY % ISOnum   SYSTEM 
               "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN"    >

%ISOnum;
<!ENTITY % ISOtech   SYSTEM "FILE://ISO 8879:1986//ENTITIES General Technical//EN"    >

%ISOtech;
<!ENTITY % SAEgen   SYSTEM "FILE://-USA-SAE//ENTITIES General//EN"    >

%SAEgen;
]>


Return to SAE J2008 Page
Return to Home Page