Annotation of doc/gutshtml/SessionFour.html, revision 1.1

1.1     ! www         1: <html>
        !             2: <head>
        !             3: <meta name=Title
        !             4: content="Session Four: How to install, Proper Debug Cycle for Handlers, Coding/Documentation Guidelines (Guy)">
        !             5: <meta http-equiv=Content-Type content="text/html; charset=macintosh">
        !             6: <title>Session Four: How to install, Proper Debug Cycle for Handlers, Coding/Documentation 
        !             7: Guidelines (Guy)</title>
        !             8: <style><!--
        !             9: .MsoPlainText
        !            10: 	{font-size:10.0pt;
        !            11: 	font-family:"Courier New";}
        !            12: .Section1
        !            13: 	{page:Section1;}
        !            14: .Section2
        !            15: 	{page:Section2;}
        !            16: -->
        !            17: </style>
        !            18: </head>
        !            19: <body bgcolor=#FFFFFF link=blue vlink=purple class="Normal" lang=EN-US>
        !            20: <div class=Section1> 
        !            21:   <h2>Session Four: How to install, Proper Debug Cycle for Handlers, Coding/Documentation 
        !            22:     Guidelines (Guy)</h2>
        !            23:   <h3><a name="_Toc421867078">lpml.dtd</a></h3>
        !            24:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!--</span></p>
        !            25:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            26:     Linux Packaging Markup Language version 1.0.</span></p>
        !            27:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            28:     Date: May 3, 2001</span></p>
        !            29:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            30:     Author: Scott Harrison</span></p>
        !            31:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            32:     Linux Packaging Markup Language aims to capture</span></p>
        !            33:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            34:     a source code development tree and effectively map</span></p>
        !            35:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            36:     that to a compilation and installation process for</span></p>
        !            37:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            38:     generating software packages and updating a run-time</span></p>
        !            39:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            40:     system.&nbsp; This language helps handle dependency information,</span></p>
        !            41:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            42:     file globbing, file permissions, file ownerships,</span></p>
        !            43:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            44:     different targets for different linux distributions,</span></p>
        !            45:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            46:     preservation of configuration information, directory</span></p>
        !            47:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            48:     permissions, directory ownerships, compilation commands,</span></p>
        !            49:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;and, 
        !            50:     ultimately, system software status reports.</span></p>
        !            51:   <p class=MsoPlainText><span style='font-size:8.0pt'>--&gt;</span></p>
        !            52:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!--</span></p>
        !            53:   <p class=MsoPlainText><span style='font-size:8.0pt'>Copyright Michigan State 
        !            54:     University Board of Trustees</span></p>
        !            55:   <p class=MsoPlainText><span style='font-size:8.0pt'>This file is part of the 
        !            56:     LearningOnline Network with CAPA (LON-CAPA).</span></p>
        !            57:   <p class=MsoPlainText><span style='font-size:8.0pt'>LON-CAPA is free software; 
        !            58:     you can redistribute it and/or modify</span></p>
        !            59:   <p class=MsoPlainText><span style='font-size:8.0pt'>it under the terms of the 
        !            60:     GNU General Public License as published by</span></p>
        !            61:   <p class=MsoPlainText><span style='font-size:8.0pt'>the Free Software Foundation; 
        !            62:     either version 2 of the License, or</span></p>
        !            63:   <p class=MsoPlainText><span style='font-size:8.0pt'>(at your option) any later 
        !            64:     version.</span></p>
        !            65:   <p class=MsoPlainText><span style='font-size:8.0pt'>LON-CAPA is distributed 
        !            66:     in the hope that it will be useful,</span></p>
        !            67:   <p class=MsoPlainText><span style='font-size:8.0pt'>but WITHOUT ANY WARRANTY; 
        !            68:     without even the implied warranty of</span></p>
        !            69:   <p class=MsoPlainText><span style='font-size:8.0pt'>MERCHANTABILITY or FITNESS 
        !            70:     FOR A PARTICULAR PURPOSE.&nbsp; See the</span></p>
        !            71:   <p class=MsoPlainText><span style='font-size:8.0pt'>GNU General Public License 
        !            72:     for more details.</span></p>
        !            73:   <p class=MsoPlainText><span style='font-size:8.0pt'>You should have received 
        !            74:     a copy of the GNU General Public License</span></p>
        !            75:   <p class=MsoPlainText><span style='font-size:8.0pt'>along with LON-CAPA; if 
        !            76:     not, write to the Free Software</span></p>
        !            77:   <p class=MsoPlainText><span style='font-size:8.0pt'>Foundation, Inc., 59 Temple 
        !            78:     Place, Suite 330, Boston, MA&nbsp; 02111-1307&nbsp; USA</span></p>
        !            79:   <p class=MsoPlainText><span style='font-size:8.0pt'>/home/httpd/html/adm/gpl.txt</span></p>
        !            80:   <p class=MsoPlainText><span style='font-size:8.0pt'>http://www.lon-capa.org/</span></p>
        !            81:   <p class=MsoPlainText><span style='font-size:8.0pt'>--&gt;</span></p>
        !            82:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ENTITY % lpml.Version</span></p>
        !            83:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            84:     &quot;-//TUX//DTD lpml 1.0 Final//EN&quot;</span></p>
        !            85:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            86:     &gt;</span></p>
        !            87:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!-- Typical usage: --&gt;</span></p>
        !            88:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!-- &lt;!DOCTYPE lpml 
        !            89:     PUBLIC &quot;-//TUX/DTD LPML 1.0 Final//EN&quot;</span></p>
        !            90:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !            91:     &quot;http://lpml.sourceforge.net/DTD/lpml.dtd&quot;&gt; --&gt;</span></p>
        !            92:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!-- &lt;lpml&gt; --&gt;</span></p>
        !            93:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!-- ... --&gt;</span></p>
        !            94:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!-- &lt;/lpml&gt; --&gt;</span></p>
        !            95:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT categoryname 
        !            96:     (#PCDATA)&gt;</span></p>
        !            97:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT targetroot 
        !            98:     (#PCDATA)&gt;</span></p>
        !            99:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT sourceroot 
        !           100:     (#PCDATA)&gt;</span></p>
        !           101:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT target (#PCDATA)&gt;</span></p>
        !           102:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST target</span></p>
        !           103:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           104:     CDATA #REQUIRED</span></p>
        !           105:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           106:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT source (#PCDATA)&gt;</span></p>
        !           107:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT targetdir (#PCDATA)&gt;</span></p>
        !           108:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST targetdir</span></p>
        !           109:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           110:     CDATA #REQUIRED</span></p>
        !           111:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           112:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT sourcedir (#PCDATA)&gt;</span></p>
        !           113:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT glob (#PCDATA)&gt;</span></p>
        !           114:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT build (#PCDATA)&gt;</span></p>
        !           115:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT buildlink (#PCDATA)&gt;</span></p>
        !           116:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!-- </span></p>
        !           117:   <p class=MsoPlainText><span style='font-size:8.0pt'>The trigger attribute of 
        !           118:     the build element is meant</span></p>
        !           119:   <p class=MsoPlainText><span style='font-size:8.0pt'>to only have one of two 
        !           120:     possible values:</span></p>
        !           121:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp; &quot;always run&quot;, 
        !           122:     or</span></p>
        !           123:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp; &quot;run if dependencies 
        !           124:     change&quot;</span></p>
        !           125:   <p class=MsoPlainText><span style='font-size:8.0pt'>Note that you must type 
        !           126:     this text exactly in for the</span></p>
        !           127:   <p class=MsoPlainText><span style='font-size:8.0pt'>attribute value to be understood 
        !           128:     and processed correctly</span></p>
        !           129:   <p class=MsoPlainText><span style='font-size:8.0pt'>by the lpml &quot;make build&quot; 
        !           130:     parser.</span></p>
        !           131:   <p class=MsoPlainText><span style='font-size:8.0pt'>--&gt;</span></p>
        !           132:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT lpml</span></p>
        !           133:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;(targetroot|sourceroot|specialnotices|files|categories|directories|rpm)+&gt;</span></p>
        !           134:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST build</span></p>
        !           135:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp; trigger CDATA 
        !           136:     #REQUIRED</span></p>
        !           137:   <p class=MsoPlainText><span style='font-size:8.0pt'>&gt;</span></p>
        !           138:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT specialnotices 
        !           139:     (specialnotice)+&gt;</span></p>
        !           140:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT categories 
        !           141:     (category)+&gt;</span></p>
        !           142:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT directories 
        !           143:     (directory)+&gt;</span></p>
        !           144:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT files (file|fileglob|link)+&gt;</span></p>
        !           145:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT dependencies 
        !           146:     (#PCDATA)&gt;</span></p>
        !           147:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT note (#PCDATA|table|b|br)*&gt;</span></p>
        !           148:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT b (#PCDATA)&gt;</span></p>
        !           149:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT specialnotice 
        !           150:     (#PCDATA)&gt;</span></p>
        !           151:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST specialnotice</span></p>
        !           152:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           153:     CDATA #REQUIRED</span></p>
        !           154:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           155:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT category (chmod,chown,abbreviation)&gt;</span></p>
        !           156:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST category</span></p>
        !           157:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; type 
        !           158:     CDATA #REQUIRED</span></p>
        !           159:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; name 
        !           160:     CDATA #REQUIRED</span></p>
        !           161:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           162:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT chown (#PCDATA)&gt;</span></p>
        !           163:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST chown</span></p>
        !           164:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           165:     CDATA #REQUIRED</span></p>
        !           166:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           167:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT chmod (#PCDATA)&gt;</span></p>
        !           168:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST chmod</span></p>
        !           169:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           170:     CDATA #REQUIRED</span></p>
        !           171:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           172:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT abbreviation 
        !           173:     (#PCDATA)&gt;</span></p>
        !           174:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT br EMPTY&gt;</span></p>
        !           175:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT nobr EMPTY&gt;</span></p>
        !           176:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT table (#PCDATA|tr)*&gt;</span></p>
        !           177:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST table</span></p>
        !           178:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; cellpadding 
        !           179:     CDATA #IMPLIED</span></p>
        !           180:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; cellspacing 
        !           181:     CDATA #IMPLIED</span></p>
        !           182:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; border 
        !           183:     CDATA #IMPLIED</span></p>
        !           184:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           185:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT tr (#PCDATA|td)*&gt;</span></p>
        !           186:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT td (#PCDATA|br|ul|tt|nobr)*&gt;</span></p>
        !           187:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT description 
        !           188:     (#PCDATA|br|tt|u)*&gt;</span></p>
        !           189:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT ul (#PCDATA|li)*&gt;</span></p>
        !           190:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT li (#PCDATA)&gt;</span></p>
        !           191:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT tt (#PCDATA)&gt;</span></p>
        !           192:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT u (#PCDATA)&gt;</span></p>
        !           193:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT status (#PCDATA)&gt;</span></p>
        !           194:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT linkto (#PCDATA)&gt;</span></p>
        !           195:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT directory (targetdir+,categoryname,description?)&gt;</span></p>
        !           196:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST directory</span></p>
        !           197:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           198:     CDATA #REQUIRED</span></p>
        !           199:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           200:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT file (source,target+,categoryname,description?,buildlink?,</span></p>
        !           201:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           202:     note?,build?,status?,dependencies?)&gt;</span></p>
        !           203:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT link (linkto,target,categoryname,description?,</span></p>
        !           204:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           205:     note?,build?,status?,dependencies?)&gt;</span></p>
        !           206:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT fileglob (glob,sourcedir,targetdir,categoryname,</span></p>
        !           207:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           208:     description?,note?,build?,buildlink?,status?,dependencies?,filenames?)&gt;</span></p>
        !           209:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT filenames (#PCDATA)&gt;</span></p>
        !           210:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpm (rpmSummary,rpmName,rpmVersion,rpmRelease,rpmVendor,</span></p>
        !           211:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           212:     rpmBuildRoot,rpmCopyright,rpmGroup,rpmSource,rpmAutoReqProv,</span></p>
        !           213:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           214:     rpmdescription,rpmpre,rpmRequires)&gt;</span></p>
        !           215:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmSummary 
        !           216:     (#PCDATA)&gt;</span></p>
        !           217:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmName (#PCDATA)&gt;</span></p>
        !           218:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmVersion 
        !           219:     (#PCDATA)&gt;</span></p>
        !           220:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmRelease 
        !           221:     (#PCDATA)&gt;</span></p>
        !           222:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmVendor (#PCDATA)&gt;</span></p>
        !           223:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmBuildRoot 
        !           224:     (#PCDATA)&gt;</span></p>
        !           225:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmCopyright 
        !           226:     (#PCDATA)&gt;</span></p>
        !           227:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmGroup (#PCDATA)&gt;</span></p>
        !           228:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmSource (#PCDATA)&gt;</span></p>
        !           229:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmAutoReqProv 
        !           230:     (#PCDATA)&gt;</span></p>
        !           231:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmdescription 
        !           232:     (#PCDATA)&gt;</span></p>
        !           233:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmpre (#PCDATA)&gt;</span></p>
        !           234:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT rpmRequires 
        !           235:     (item)+&gt;</span></p>
        !           236:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT item (#PCDATA)&gt;</span></p>
        !           237:   <h3><a name="_Toc421867079">piml.dtd</a></h3>
        !           238:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!--</span></p>
        !           239:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           240:     Post Installation Markup Language version 1.0.</span></p>
        !           241:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           242:     Date: January 24, 2002</span></p>
        !           243:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           244:     Author: Scott Harrison</span></p>
        !           245:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           246:     Post Installation Markup Language works to perform</span></p>
        !           247:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           248:     'intelligent' modifications of existing files on</span></p>
        !           249:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           250:     a software system.&nbsp; This allows for the reconfiguring</span></p>
        !           251:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           252:     of existing configuration files without having the</span></p>
        !           253:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           254:     overlap of files between software packages.&nbsp; PIML</span></p>
        !           255:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           256:     also allows you to have file permission/ownership</span></p>
        !           257:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           258:     specifications different than that specified by the</span></p>
        !           259:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           260:     original software package.</span></p>
        !           261:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           262:     For instance, Apache web server configuration files</span></p>
        !           263:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           264:     are a popular target for many different software applications.</span></p>
        !           265:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           266:     A preferred approach is to simply append an 'Include ...'</span></p>
        !           267:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           268:     line to the Apache web server configuration files.</span></p>
        !           269:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           270:     Post Installation Markup Language is meant to be</span></p>
        !           271:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           272:     a natural wrapper to target installations generated</span></p>
        !           273:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           274:     by LPML (Linux Packaging Markup Language).</span></p>
        !           275:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           276:     Usages of Post Installation Markup Language are:</span></p>
        !           277:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           278:     * immediately after installation with LPML</span></p>
        !           279:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           280:     * generating '%post' syntax for RPMs</span></p>
        !           281:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           282:     * generating post-installation syntax for Debian packages.</span></p>
        !           283:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           284:     Dependency checking is supported as a poor man's probing....</span></p>
        !           285:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           286:     There is no point in reconfiguring a file that isn't installed,</span></p>
        !           287:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           288:     or is missing a system component for successful operation.</span></p>
        !           289:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           290:     Another neat use of PIML is to allow for invocation of various</span></p>
        !           291:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           292:     processes after installation.</span></p>
        !           293:   <p class=MsoPlainText><span style='font-size:8.0pt'>--&gt;</span></p>
        !           294:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!--</span></p>
        !           295:   <p class=MsoPlainText><span style='font-size:8.0pt'>Copyright Michigan State 
        !           296:     University Board of Trustees</span></p>
        !           297:   <p class=MsoPlainText><span style='font-size:8.0pt'>This file is part of the 
        !           298:     LearningOnline Network with CAPA (LON-CAPA).</span></p>
        !           299:   <p class=MsoPlainText><span style='font-size:8.0pt'>LON-CAPA is free software; 
        !           300:     you can redistribute it and/or modify</span></p>
        !           301:   <p class=MsoPlainText><span style='font-size:8.0pt'>it under the terms of the 
        !           302:     GNU General Public License as published by</span></p>
        !           303:   <p class=MsoPlainText><span style='font-size:8.0pt'>the Free Software Foundation; 
        !           304:     either version 2 of the License, or</span></p>
        !           305:   <p class=MsoPlainText><span style='font-size:8.0pt'>(at your option) any later 
        !           306:     version.</span></p>
        !           307:   <p class=MsoPlainText><span style='font-size:8.0pt'>LON-CAPA is distributed 
        !           308:     in the hope that it will be useful,</span></p>
        !           309:   <p class=MsoPlainText><span style='font-size:8.0pt'>but WITHOUT ANY WARRANTY; 
        !           310:     without even the implied warranty of</span></p>
        !           311:   <p class=MsoPlainText><span style='font-size:8.0pt'>MERCHANTABILITY or FITNESS 
        !           312:     FOR A PARTICULAR PURPOSE.&nbsp; See the</span></p>
        !           313:   <p class=MsoPlainText><span style='font-size:8.0pt'>GNU General Public License 
        !           314:     for more details.</span></p>
        !           315:   <p class=MsoPlainText><span style='font-size:8.0pt'>You should have received 
        !           316:     a copy of the GNU General Public License</span></p>
        !           317:   <p class=MsoPlainText><span style='font-size:8.0pt'>along with LON-CAPA; if 
        !           318:     not, write to the Free Software</span></p>
        !           319:   <p class=MsoPlainText><span style='font-size:8.0pt'>Foundation, Inc., 59 Temple 
        !           320:     Place, Suite 330, Boston, MA&nbsp; 02111-1307&nbsp; USA</span></p>
        !           321:   <p class=MsoPlainText><span style='font-size:8.0pt'>/home/httpd/html/adm/gpl.txt</span></p>
        !           322:   <p class=MsoPlainText><span style='font-size:8.0pt'>http://www.lon-capa.org/</span></p>
        !           323:   <p class=MsoPlainText><span style='font-size:8.0pt'>--&gt;</span></p>
        !           324:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ENTITY % piml.Version</span></p>
        !           325:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           326:     &quot;-//TUX//DTD piml 1.0 Final//EN&quot;&gt;</span></p>
        !           327:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!-- Typical usage:</span></p>
        !           328:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           329:     &lt;!DOCTYPE piml PUBLIC &quot;-//TUX//DTD PIML 1.0 Final//EN&quot;</span></p>
        !           330:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           331:     &nbsp;&nbsp;&nbsp; &quot;http://lpml.sourceforge.net/DTD/piml.dtd&quot;&gt;</span></p>
        !           332:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           333:     &lt;piml&gt;</span></p>
        !           334:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           335:     &lt;/piml&gt;</span></p>
        !           336:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;--&gt;</span></p>
        !           337:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT categoryname 
        !           338:     (#PCDATA)&gt;</span></p>
        !           339:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT targetroot 
        !           340:     (#PCDATA)&gt;</span></p>
        !           341:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT target (#PCDATA)&gt;</span></p>
        !           342:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST target</span></p>
        !           343:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           344:     CDATA #REQUIRED</span></p>
        !           345:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           346:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT piml (targetroot|specialnotices|files|categories)+&gt;</span></p>
        !           347:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT specialnotices 
        !           348:     (specialnotice)+&gt;</span></p>
        !           349:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT categories 
        !           350:     (category)+&gt;</span></p>
        !           351:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT files (file)+&gt;</span></p>
        !           352:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT dependencies 
        !           353:     (#PCDATA)&gt;</span></p>
        !           354:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST dependencies</span></p>
        !           355:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           356:     CDATA #REQUIRED</span></p>
        !           357:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           358:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT note (#PCDATA)&gt;</span></p>
        !           359:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT specialnotice 
        !           360:     (#PCDATA)&gt;</span></p>
        !           361:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT category (chmod,chown,abbreviation)&gt;</span></p>
        !           362:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST category</span></p>
        !           363:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; type 
        !           364:     CDATA #REQUIRED</span></p>
        !           365:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; name 
        !           366:     CDATA #REQUIRED</span></p>
        !           367:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           368:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT chown (#PCDATA)&gt;</span></p>
        !           369:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST chown</span></p>
        !           370:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           371:     CDATA #REQUIRED</span></p>
        !           372:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           373:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT chmod (#PCDATA)&gt;</span></p>
        !           374:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST chmod</span></p>
        !           375:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; dist 
        !           376:     CDATA #REQUIRED</span></p>
        !           377:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           378:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT abbreviation 
        !           379:     (#PCDATA)&gt;</span></p>
        !           380:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT file (target,categoryname?,</span></p>
        !           381:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           382:     note?,status?,dependencies?,perlscript)&gt;</span></p>
        !           383:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT TARGET EMPTY&gt;</span></p>
        !           384:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT perlscript 
        !           385:     (#PCDATA|TARGET)*&gt;</span></p>
        !           386:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST perlscript</span></p>
        !           387:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; mode 
        !           388:     CDATA #REQUIRED</span></p>
        !           389:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &gt;</span></p>
        !           390:   <h3><a name="_Toc421867080">xfml.dtd</a></h3>
        !           391:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!--</span></p>
        !           392:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           393:     XML Filter Markup Language version 1.0.</span></p>
        !           394:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;Date: 
        !           395:     January 27, 2002</span></p>
        !           396:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           397:     Author: Scott Harrison</span></p>
        !           398:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           399:     XML Filter Markup Language works to extract those sections</span></p>
        !           400:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           401:     of an XML document matching certain conditions.&nbsp; This, in some</span></p>
        !           402:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           403:     respects, relies on functionality similar to that expected</span></p>
        !           404:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           405:     with XSL-type files.&nbsp; (I do not use standard XSL syntax because</span></p>
        !           406:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           407:     I am not convinced that it would be simple and elegant for</span></p>
        !           408:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           409:     this particular task).</span></p>
        !           410:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           411:     This is anticipated to be a very important feature associated</span></p>
        !           412:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           413:     with a larger Makefile-ish type approach involving the XML dtds:</span></p>
        !           414:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           415:     LPML and PIML.</span></p>
        !           416:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           417:     LPML (Linux Packaging Markup Language) can work to install files</span></p>
        !           418:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           419:     on a single computer or a distributed network of computers with</span></p>
        !           420:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           421:     pre-configured ssh accessibility (.ssh/authorized_keys, etc).</span></p>
        !           422:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           423:     PIML (Post Installation Markup Language) works to coordinate the</span></p>
        !           424:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           425:     last little scripts that need to be run after an installation.</span></p>
        !           426:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           427:     With all this make-&quot;power&quot;, wouldn't it be nice to only pass through</span></p>
        !           428:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;portions 
        !           429:     of an LPML specification?</span></p>
        !           430:   <p class=MsoPlainText><span style='font-size:8.0pt'>--&gt;</span></p>
        !           431:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!--</span></p>
        !           432:   <p class=MsoPlainText><span style='font-size:8.0pt'>Copyright Michigan State 
        !           433:     University Board of Trustees</span></p>
        !           434:   <p class=MsoPlainText><span style='font-size:8.0pt'>This file is part of the 
        !           435:     LearningOnline Network with CAPA (LON-CAPA).</span></p>
        !           436:   <p class=MsoPlainText><span style='font-size:8.0pt'>LON-CAPA is free software; 
        !           437:     you can redistribute it and/or modify</span></p>
        !           438:   <p class=MsoPlainText><span style='font-size:8.0pt'>it under the terms of the 
        !           439:     GNU General Public License as published by</span></p>
        !           440:   <p class=MsoPlainText><span style='font-size:8.0pt'>the Free Software Foundation; 
        !           441:     either version 2 of the License, or</span></p>
        !           442:   <p class=MsoPlainText><span style='font-size:8.0pt'>(at your option) any later 
        !           443:     version.</span></p>
        !           444:   <p class=MsoPlainText><span style='font-size:8.0pt'>LON-CAPA is distributed 
        !           445:     in the hope that it will be useful,</span></p>
        !           446:   <p class=MsoPlainText><span style='font-size:8.0pt'>but WITHOUT ANY WARRANTY; 
        !           447:     without even the implied warranty of</span></p>
        !           448:   <p class=MsoPlainText><span style='font-size:8.0pt'>MERCHANTABILITY or FITNESS 
        !           449:     FOR A PARTICULAR PURPOSE.&nbsp; See the</span></p>
        !           450:   <p class=MsoPlainText><span style='font-size:8.0pt'>GNU General Public License 
        !           451:     for more details.</span></p>
        !           452:   <p class=MsoPlainText><span style='font-size:8.0pt'>You should have received 
        !           453:     a copy of the GNU General Public License</span></p>
        !           454:   <p class=MsoPlainText><span style='font-size:8.0pt'>along with LON-CAPA; if 
        !           455:     not, write to the Free Software</span></p>
        !           456:   <p class=MsoPlainText><span style='font-size:8.0pt'>Foundation, Inc., 59 Temple 
        !           457:     Place, Suite 330, Boston, MA&nbsp; 02111-1307&nbsp; USA</span></p>
        !           458:   <p class=MsoPlainText><span style='font-size:8.0pt'>/home/httpd/html/adm/gpl.txt</span></p>
        !           459:   <p class=MsoPlainText><span style='font-size:8.0pt'>http://www.lon-capa.org/</span></p>
        !           460:   <p class=MsoPlainText><span style='font-size:8.0pt'>--&gt;</span></p>
        !           461:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!-- Note: current status 
        !           462:     is that choice:include is currently unsupported and</span></p>
        !           463:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp; 
        !           464:     all matching statements REQUIRE two levels of 'when' statements;</span></p>
        !           465:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp; 
        !           466:     not one or more than two...&nbsp; okay.. this will be fixed soon --&gt;</span></p>
        !           467:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ENTITY % xfml.Version</span></p>
        !           468:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           469:     &quot;-//TUX//DTD piml 1.0 Final//EN&quot;&gt;</span></p>
        !           470:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!-- Typical usage:</span></p>
        !           471:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           472:     &lt;!DOCTYPE xfml PUBLIC &quot;-//TUX//DTD PIML 1.0 Final//EN&quot;&gt;</span></p>
        !           473:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;xfml&gt;</span></p>
        !           474:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        !           475:     &lt;/xfml&gt;</span></p>
        !           476:   <p class=MsoPlainText><span style='font-size:8.0pt'>--&gt;</span></p>
        !           477:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT choice:include 
        !           478:     (#PCDATA)&gt;</span></p>
        !           479:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT choice:exclude 
        !           480:     (#PCDATA)&gt;</span></p>
        !           481:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT xfml (clause)+&gt;</span></p>
        !           482:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT clause (when:cdata|when:name|when:attribute|choice:exclude)+&gt;</span></p>
        !           483:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT when:name</span></p>
        !           484:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;(when:cdata|when:name|when:attribute|choice:include|choice:exclude)+&gt;</span></p>
        !           485:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT when:attribute 
        !           486:     </span></p>
        !           487:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp; (when:cdata|when:name|when:attribute|choice:include|</span></p>
        !           488:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp; choice:exclude)+&gt;</span></p>
        !           489:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ELEMENT when:cdata 
        !           490:     </span></p>
        !           491:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp; (when:cdata|when:name|when:attribute|choice:include|</span></p>
        !           492:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp; choice:exclude)+&gt;</span></p>
        !           493:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST when:name</span></p>
        !           494:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; match 
        !           495:     CDATA #REQUIRED&gt;</span></p>
        !           496:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST when:attribute</span></p>
        !           497:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; match 
        !           498:     CDATA #REQUIRED&gt;</span></p>
        !           499:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST when:cdata</span></p>
        !           500:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; match 
        !           501:     CDATA #REQUIRED&gt;</span></p>
        !           502:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST choice:include</span></p>
        !           503:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; nodename 
        !           504:     CDATA #REQUIRED&gt;</span></p>
        !           505:   <p class=MsoPlainText><span style='font-size:8.0pt'>&lt;!ATTLIST choice:exclude</span></p>
        !           506:   <p class=MsoPlainText><span style='font-size:8.0pt'>&nbsp;&nbsp;&nbsp; nodename 
        !           507:     CDATA #REQUIRED&gt;</span></p>
        !           508: </div>
        !           509: <br
        !           510: clear=ALL style='page-break-before:always;'>
        !           511: <div class=Section2> </div>
        !           512: </body>
        !           513: </html>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>