--- doc/gutshtml/SessionFour.html 2002/06/28 20:30:29 1.1 +++ doc/gutshtml/SessionFour.html 2003/07/22 14:47:00 1.2 @@ -1,513 +1,1026 @@ - -
- - -<!--
-- Linux Packaging Markup Language version 1.0.
-- Date: May 3, 2001
-- Author: Scott Harrison
-- Linux Packaging Markup Language aims to capture
-- a source code development tree and effectively map
-- that to a compilation and installation process for
-- generating software packages and updating a run-time
-- system. This language helps handle dependency information,
-- file globbing, file permissions, file ownerships,
-- different targets for different linux distributions,
-- preservation of configuration information, directory
-- permissions, directory ownerships, compilation commands,
-and, - ultimately, system software status reports.
--->
-<!--
-Copyright Michigan State - University Board of Trustees
-This file is part of the - LearningOnline Network with CAPA (LON-CAPA).
-LON-CAPA is free software; - you can redistribute it and/or modify
-it under the terms of the - GNU General Public License as published by
-the Free Software Foundation; - either version 2 of the License, or
-(at your option) any later - version.
-LON-CAPA is distributed - in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; - without even the implied warranty of
-MERCHANTABILITY or FITNESS - FOR A PARTICULAR PURPOSE. See the
-GNU General Public License - for more details.
-You should have received - a copy of the GNU General Public License
-along with LON-CAPA; if - not, write to the Free Software
-Foundation, Inc., 59 Temple - Place, Suite 330, Boston, MA 02111-1307 USA
-/home/httpd/html/adm/gpl.txt
-http://www.lon-capa.org/
--->
-<!ENTITY % lpml.Version
-- "-//TUX//DTD lpml 1.0 Final//EN"
-- >
-<!-- Typical usage: -->
-<!-- <!DOCTYPE lpml - PUBLIC "-//TUX/DTD LPML 1.0 Final//EN"
-- "http://lpml.sourceforge.net/DTD/lpml.dtd"> -->
-<!-- <lpml> -->
-<!-- ... -->
-<!-- </lpml> -->
-<!ELEMENT categoryname - (#PCDATA)>
-<!ELEMENT targetroot - (#PCDATA)>
-<!ELEMENT sourceroot - (#PCDATA)>
-<!ELEMENT target (#PCDATA)>
-<!ATTLIST target
-dist - CDATA #REQUIRED
->
-<!ELEMENT source (#PCDATA)>
-<!ELEMENT targetdir (#PCDATA)>
-<!ATTLIST targetdir
-dist - CDATA #REQUIRED
->
-<!ELEMENT sourcedir (#PCDATA)>
-<!ELEMENT glob (#PCDATA)>
-<!ELEMENT build (#PCDATA)>
-<!ELEMENT buildlink (#PCDATA)>
-<!--
-The trigger attribute of - the build element is meant
-to only have one of two - possible values:
-"always run", - or
-"run if dependencies - change"
-Note that you must type - this text exactly in for the
-attribute value to be understood - and processed correctly
-by the lpml "make build" - parser.
--->
-<!ELEMENT lpml
-(targetroot|sourceroot|specialnotices|files|categories|directories|rpm)+>
-<!ATTLIST build
-trigger CDATA - #REQUIRED
->
-<!ELEMENT specialnotices - (specialnotice)+>
-<!ELEMENT categories - (category)+>
-<!ELEMENT directories - (directory)+>
-<!ELEMENT files (file|fileglob|link)+>
-<!ELEMENT dependencies - (#PCDATA)>
-<!ELEMENT note (#PCDATA|table|b|br)*>
-<!ELEMENT b (#PCDATA)>
-<!ELEMENT specialnotice - (#PCDATA)>
-<!ATTLIST specialnotice
-dist - CDATA #REQUIRED
->
-<!ELEMENT category (chmod,chown,abbreviation)>
-<!ATTLIST category
-type - CDATA #REQUIRED
-name - CDATA #REQUIRED
->
-<!ELEMENT chown (#PCDATA)>
-<!ATTLIST chown
-dist - CDATA #REQUIRED
->
-<!ELEMENT chmod (#PCDATA)>
-<!ATTLIST chmod
-dist - CDATA #REQUIRED
->
-<!ELEMENT abbreviation - (#PCDATA)>
-<!ELEMENT br EMPTY>
-<!ELEMENT nobr EMPTY>
-<!ELEMENT table (#PCDATA|tr)*>
-<!ATTLIST table
-cellpadding - CDATA #IMPLIED
-cellspacing - CDATA #IMPLIED
-border - CDATA #IMPLIED
->
-<!ELEMENT tr (#PCDATA|td)*>
-<!ELEMENT td (#PCDATA|br|ul|tt|nobr)*>
-<!ELEMENT description - (#PCDATA|br|tt|u)*>
-<!ELEMENT ul (#PCDATA|li)*>
-<!ELEMENT li (#PCDATA)>
-<!ELEMENT tt (#PCDATA)>
-<!ELEMENT u (#PCDATA)>
-<!ELEMENT status (#PCDATA)>
-<!ELEMENT linkto (#PCDATA)>
-<!ELEMENT directory (targetdir+,categoryname,description?)>
-<!ATTLIST directory
-dist - CDATA #REQUIRED
->
-<!ELEMENT file (source,target+,categoryname,description?,buildlink?,
-- note?,build?,status?,dependencies?)>
-<!ELEMENT link (linkto,target,categoryname,description?,
-- note?,build?,status?,dependencies?)>
-<!ELEMENT fileglob (glob,sourcedir,targetdir,categoryname,
-- description?,note?,build?,buildlink?,status?,dependencies?,filenames?)>
-<!ELEMENT filenames (#PCDATA)>
-<!ELEMENT rpm (rpmSummary,rpmName,rpmVersion,rpmRelease,rpmVendor,
-- rpmBuildRoot,rpmCopyright,rpmGroup,rpmSource,rpmAutoReqProv,
-- rpmdescription,rpmpre,rpmRequires)>
-<!ELEMENT rpmSummary - (#PCDATA)>
-<!ELEMENT rpmName (#PCDATA)>
-<!ELEMENT rpmVersion - (#PCDATA)>
-<!ELEMENT rpmRelease - (#PCDATA)>
-<!ELEMENT rpmVendor (#PCDATA)>
-<!ELEMENT rpmBuildRoot - (#PCDATA)>
-<!ELEMENT rpmCopyright - (#PCDATA)>
-<!ELEMENT rpmGroup (#PCDATA)>
-<!ELEMENT rpmSource (#PCDATA)>
-<!ELEMENT rpmAutoReqProv - (#PCDATA)>
-<!ELEMENT rpmdescription - (#PCDATA)>
-<!ELEMENT rpmpre (#PCDATA)>
-<!ELEMENT rpmRequires - (item)+>
-<!ELEMENT item (#PCDATA)>
-<!--
-- Post Installation Markup Language version 1.0.
-- Date: January 24, 2002
-- Author: Scott Harrison
-- Post Installation Markup Language works to perform
-- 'intelligent' modifications of existing files on
-- a software system. This allows for the reconfiguring
-- of existing configuration files without having the
-- overlap of files between software packages. PIML
-- also allows you to have file permission/ownership
-- specifications different than that specified by the
-- original software package.
-- For instance, Apache web server configuration files
-- are a popular target for many different software applications.
-- A preferred approach is to simply append an 'Include ...'
-- line to the Apache web server configuration files.
-- Post Installation Markup Language is meant to be
-- a natural wrapper to target installations generated
-- by LPML (Linux Packaging Markup Language).
-- Usages of Post Installation Markup Language are:
-- * immediately after installation with LPML
-- * generating '%post' syntax for RPMs
-- * generating post-installation syntax for Debian packages.
-- Dependency checking is supported as a poor man's probing....
-- There is no point in reconfiguring a file that isn't installed,
-- or is missing a system component for successful operation.
-- Another neat use of PIML is to allow for invocation of various
-- processes after installation.
--->
-<!--
-Copyright Michigan State - University Board of Trustees
-This file is part of the - LearningOnline Network with CAPA (LON-CAPA).
-LON-CAPA is free software; - you can redistribute it and/or modify
-it under the terms of the - GNU General Public License as published by
-the Free Software Foundation; - either version 2 of the License, or
-(at your option) any later - version.
-LON-CAPA is distributed - in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; - without even the implied warranty of
-MERCHANTABILITY or FITNESS - FOR A PARTICULAR PURPOSE. See the
-GNU General Public License - for more details.
-You should have received - a copy of the GNU General Public License
-along with LON-CAPA; if - not, write to the Free Software
-Foundation, Inc., 59 Temple - Place, Suite 330, Boston, MA 02111-1307 USA
-/home/httpd/html/adm/gpl.txt
-http://www.lon-capa.org/
--->
-<!ENTITY % piml.Version
-- "-//TUX//DTD piml 1.0 Final//EN">
-<!-- Typical usage:
-- <!DOCTYPE piml PUBLIC "-//TUX//DTD PIML 1.0 Final//EN"
-- "http://lpml.sourceforge.net/DTD/piml.dtd">
-- <piml>
-- </piml>
--->
-<!ELEMENT categoryname - (#PCDATA)>
-<!ELEMENT targetroot - (#PCDATA)>
-<!ELEMENT target (#PCDATA)>
-<!ATTLIST target
-dist - CDATA #REQUIRED
->
-<!ELEMENT piml (targetroot|specialnotices|files|categories)+>
-<!ELEMENT specialnotices - (specialnotice)+>
-<!ELEMENT categories - (category)+>
-<!ELEMENT files (file)+>
-<!ELEMENT dependencies - (#PCDATA)>
-<!ATTLIST dependencies
-dist - CDATA #REQUIRED
->
-<!ELEMENT note (#PCDATA)>
-<!ELEMENT specialnotice - (#PCDATA)>
-<!ELEMENT category (chmod,chown,abbreviation)>
-<!ATTLIST category
-type - CDATA #REQUIRED
-name - CDATA #REQUIRED
->
-<!ELEMENT chown (#PCDATA)>
-<!ATTLIST chown
-dist - CDATA #REQUIRED
->
-<!ELEMENT chmod (#PCDATA)>
-<!ATTLIST chmod
-dist - CDATA #REQUIRED
->
-<!ELEMENT abbreviation - (#PCDATA)>
-<!ELEMENT file (target,categoryname?,
-- note?,status?,dependencies?,perlscript)>
-<!ELEMENT TARGET EMPTY>
-<!ELEMENT perlscript - (#PCDATA|TARGET)*>
-<!ATTLIST perlscript
-mode - CDATA #REQUIRED
->
-<!--
-- XML Filter Markup Language version 1.0.
-Date: - January 27, 2002
-- Author: Scott Harrison
-- XML Filter Markup Language works to extract those sections
-- of an XML document matching certain conditions. This, in some
-- respects, relies on functionality similar to that expected
-- with XSL-type files. (I do not use standard XSL syntax because
-- I am not convinced that it would be simple and elegant for
-- this particular task).
-- This is anticipated to be a very important feature associated
-- with a larger Makefile-ish type approach involving the XML dtds:
-- LPML and PIML.
-- LPML (Linux Packaging Markup Language) can work to install files
-- on a single computer or a distributed network of computers with
-- pre-configured ssh accessibility (.ssh/authorized_keys, etc).
-- PIML (Post Installation Markup Language) works to coordinate the
-- last little scripts that need to be run after an installation.
-- With all this make-"power", wouldn't it be nice to only pass through
-portions - of an LPML specification?
--->
-<!--
-Copyright Michigan State - University Board of Trustees
-This file is part of the - LearningOnline Network with CAPA (LON-CAPA).
-LON-CAPA is free software; - you can redistribute it and/or modify
-it under the terms of the - GNU General Public License as published by
-the Free Software Foundation; - either version 2 of the License, or
-(at your option) any later - version.
-LON-CAPA is distributed - in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; - without even the implied warranty of
-MERCHANTABILITY or FITNESS - FOR A PARTICULAR PURPOSE. See the
-GNU General Public License - for more details.
-You should have received - a copy of the GNU General Public License
-along with LON-CAPA; if - not, write to the Free Software
-Foundation, Inc., 59 Temple - Place, Suite 330, Boston, MA 02111-1307 USA
-/home/httpd/html/adm/gpl.txt
-http://www.lon-capa.org/
--->
-<!-- Note: current status - is that choice:include is currently unsupported and
-- all matching statements REQUIRE two levels of 'when' statements;
-- not one or more than two... okay.. this will be fixed soon -->
-<!ENTITY % xfml.Version
-- "-//TUX//DTD piml 1.0 Final//EN">
-<!-- Typical usage:
-- <!DOCTYPE xfml PUBLIC "-//TUX//DTD PIML 1.0 Final//EN">
-<xfml>
-- </xfml>
--->
-<!ELEMENT choice:include - (#PCDATA)>
-<!ELEMENT choice:exclude - (#PCDATA)>
-<!ELEMENT xfml (clause)+>
-<!ELEMENT clause (when:cdata|when:name|when:attribute|choice:exclude)+>
-<!ELEMENT when:name
-(when:cdata|when:name|when:attribute|choice:include|choice:exclude)+>
-<!ELEMENT when:attribute -
-(when:cdata|when:name|when:attribute|choice:include|
-choice:exclude)+>
-<!ELEMENT when:cdata -
-(when:cdata|when:name|when:attribute|choice:include|
-choice:exclude)+>
-<!ATTLIST when:name
-match - CDATA #REQUIRED>
-<!ATTLIST when:attribute
-match - CDATA #REQUIRED>
-<!ATTLIST when:cdata
-match - CDATA #REQUIRED>
-<!ATTLIST choice:include
-nodename - CDATA #REQUIRED>
-<!ATTLIST choice:exclude
-nodename - CDATA #REQUIRED>
-<!--
+ ++ + Linux Packaging Markup Language version 1.0.
+ ++ + Date: May 3, 2001
+ ++ + Author: Scott Harrison
+ ++ + Linux Packaging Markup Language aims to capture
+ ++ + a source code development tree and effectively map
+ ++ + that to a compilation and installation process for
+ ++ + generating software packages and updating a run-time
+ ++ + system. This language helps handle dependency information,
+ ++ + file globbing, file permissions, file ownerships,
+ ++ + different targets for different linux distributions,
+ ++ + preservation of configuration information, directory
+ ++ + permissions, directory ownerships, compilation commands,
+ +and, + + ultimately, system software status reports.
+ +-->
+ +<!--
+ +Copyright Michigan State + + University Board of Trustees
+ +This file is part of the + + LearningOnline Network with CAPA (LON-CAPA).
+ +LON-CAPA is free software; + + you can redistribute it and/or modify
+ +it under the terms of the + + GNU General Public License as published by
+ +the Free Software Foundation; + + either version 2 of the License, or
+ +(at your option) any later + + version.
+ +LON-CAPA is distributed + + in the hope that it will be useful,
+ +but WITHOUT ANY WARRANTY; + + without even the implied warranty of
+ +MERCHANTABILITY or FITNESS + + FOR A PARTICULAR PURPOSE. See the
+ +GNU General Public License + + for more details.
+ +You should have received + + a copy of the GNU General Public License
+ +along with LON-CAPA; if + + not, write to the Free Software
+ +Foundation, Inc., 59 Temple + + Place, Suite 330, Boston, MA 02111-1307 USA
+ +/home/httpd/html/adm/gpl.txt
+ +http://www.lon-capa.org/
+ +-->
+ +<!ENTITY % lpml.Version
+ ++ + "-//TUX//DTD lpml 1.0 Final//EN"
+ ++ + >
+ +<!-- Typical usage: -->
+ +<!-- <!DOCTYPE lpml + + PUBLIC "-//TUX/DTD LPML 1.0 Final//EN"
+ ++ + "http://lpml.sourceforge.net/DTD/lpml.dtd"> -->
+ +<!-- <lpml> -->
+ +<!-- ... -->
+ +<!-- </lpml> -->
+ +<!ELEMENT categoryname + + (#PCDATA)>
+ +<!ELEMENT targetroot + + (#PCDATA)>
+ +<!ELEMENT sourceroot + + (#PCDATA)>
+ +<!ELEMENT target (#PCDATA)>
+ +<!ATTLIST target
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT source (#PCDATA)>
+ +<!ELEMENT targetdir (#PCDATA)>
+ +<!ATTLIST targetdir
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT sourcedir (#PCDATA)>
+ +<!ELEMENT glob (#PCDATA)>
+ +<!ELEMENT build (#PCDATA)>
+ +<!ELEMENT buildlink (#PCDATA)>
+ +<!--
+ +The trigger attribute of + + the build element is meant
+ +to only have one of two + + possible values:
+ +"always run", + + or
+ +"run if dependencies + + change"
+ +Note that you must type + + this text exactly in for the
+ +attribute value to be understood + + and processed correctly
+ +by the lpml "make build" + + parser.
+ +-->
+ +<!ELEMENT lpml
+ +(targetroot|sourceroot|specialnotices|files|categories|directories|rpm)+>
+ +<!ATTLIST build
+ +trigger CDATA + + #REQUIRED
+ +>
+ +<!ELEMENT specialnotices + + (specialnotice)+>
+ +<!ELEMENT categories + + (category)+>
+ +<!ELEMENT directories + + (directory)+>
+ +<!ELEMENT files (file|fileglob|link)+>
+ +<!ELEMENT dependencies + + (#PCDATA)>
+ +<!ELEMENT note (#PCDATA|table|b|br)*>
+ +<!ELEMENT b (#PCDATA)>
+ +<!ELEMENT specialnotice + + (#PCDATA)>
+ +<!ATTLIST specialnotice
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT category (chmod,chown,abbreviation)>
+ +<!ATTLIST category
+ +type + + CDATA #REQUIRED
+ +name + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT chown (#PCDATA)>
+ +<!ATTLIST chown
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT chmod (#PCDATA)>
+ +<!ATTLIST chmod
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT abbreviation + + (#PCDATA)>
+ +<!ELEMENT br EMPTY>
+ +<!ELEMENT nobr EMPTY>
+ +<!ELEMENT table (#PCDATA|tr)*>
+ +<!ATTLIST table
+ +cellpadding + + CDATA #IMPLIED
+ +cellspacing + + CDATA #IMPLIED
+ +border + + CDATA #IMPLIED
+ +>
+ +<!ELEMENT tr (#PCDATA|td)*>
+ +<!ELEMENT td (#PCDATA|br|ul|tt|nobr)*>
+ +<!ELEMENT description + + (#PCDATA|br|tt|u)*>
+ +<!ELEMENT ul (#PCDATA|li)*>
+ +<!ELEMENT li (#PCDATA)>
+ +<!ELEMENT tt (#PCDATA)>
+ +<!ELEMENT u (#PCDATA)>
+ +<!ELEMENT status (#PCDATA)>
+ +<!ELEMENT linkto (#PCDATA)>
+ +<!ELEMENT directory (targetdir+,categoryname,description?)>
+ +<!ATTLIST directory
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT file (source,target+,categoryname,description?,buildlink?,
+ ++ + note?,build?,status?,dependencies?)>
+ +<!ELEMENT link (linkto,target,categoryname,description?,
+ ++ + note?,build?,status?,dependencies?)>
+ +<!ELEMENT fileglob (glob,sourcedir,targetdir,categoryname,
+ ++ + description?,note?,build?,buildlink?,status?,dependencies?,filenames?)>
+ +<!ELEMENT filenames (#PCDATA)>
+ +<!ELEMENT rpm (rpmSummary,rpmName,rpmVersion,rpmRelease,rpmVendor,
+ ++ + rpmBuildRoot,rpmCopyright,rpmGroup,rpmSource,rpmAutoReqProv,
+ ++ + rpmdescription,rpmpre,rpmRequires)>
+ +<!ELEMENT rpmSummary + + (#PCDATA)>
+ +<!ELEMENT rpmName (#PCDATA)>
+ +<!ELEMENT rpmVersion + + (#PCDATA)>
+ +<!ELEMENT rpmRelease + + (#PCDATA)>
+ +<!ELEMENT rpmVendor (#PCDATA)>
+ +<!ELEMENT rpmBuildRoot + + (#PCDATA)>
+ +<!ELEMENT rpmCopyright + + (#PCDATA)>
+ +<!ELEMENT rpmGroup (#PCDATA)>
+ +<!ELEMENT rpmSource (#PCDATA)>
+ +<!ELEMENT rpmAutoReqProv + + (#PCDATA)>
+ +<!ELEMENT rpmdescription + + (#PCDATA)>
+ +<!ELEMENT rpmpre (#PCDATA)>
+ +<!ELEMENT rpmRequires + + (item)+>
+ +<!ELEMENT item (#PCDATA)>
+ +<!--
+ ++ + Post Installation Markup Language version 1.0.
+ ++ + Date: January 24, 2002
+ ++ + Author: Scott Harrison
+ ++ + Post Installation Markup Language works to perform
+ ++ + 'intelligent' modifications of existing files on
+ ++ + a software system. This allows for the reconfiguring
+ ++ + of existing configuration files without having the
+ ++ + overlap of files between software packages. PIML
+ ++ + also allows you to have file permission/ownership
+ ++ + specifications different than that specified by the
+ ++ + original software package.
+ ++ + For instance, Apache web server configuration files
+ ++ + are a popular target for many different software applications.
+ ++ + A preferred approach is to simply append an 'Include ...'
+ ++ + line to the Apache web server configuration files.
+ ++ + Post Installation Markup Language is meant to be
+ ++ + a natural wrapper to target installations generated
+ ++ + by LPML (Linux Packaging Markup Language).
+ ++ + Usages of Post Installation Markup Language are:
+ ++ + * immediately after installation with LPML
+ ++ + * generating '%post' syntax for RPMs
+ ++ + * generating post-installation syntax for Debian packages.
+ ++ + Dependency checking is supported as a poor man's probing....
+ ++ + There is no point in reconfiguring a file that isn't installed,
+ ++ + or is missing a system component for successful operation.
+ ++ + Another neat use of PIML is to allow for invocation of various
+ ++ + processes after installation.
+ +-->
+ +<!--
+ +Copyright Michigan State + + University Board of Trustees
+ +This file is part of the + + LearningOnline Network with CAPA (LON-CAPA).
+ +LON-CAPA is free software; + + you can redistribute it and/or modify
+ +it under the terms of the + + GNU General Public License as published by
+ +the Free Software Foundation; + + either version 2 of the License, or
+ +(at your option) any later + + version.
+ +LON-CAPA is distributed + + in the hope that it will be useful,
+ +but WITHOUT ANY WARRANTY; + + without even the implied warranty of
+ +MERCHANTABILITY or FITNESS + + FOR A PARTICULAR PURPOSE. See the
+ +GNU General Public License + + for more details.
+ +You should have received + + a copy of the GNU General Public License
+ +along with LON-CAPA; if + + not, write to the Free Software
+ +Foundation, Inc., 59 Temple + + Place, Suite 330, Boston, MA 02111-1307 USA
+ +/home/httpd/html/adm/gpl.txt
+ +http://www.lon-capa.org/
+ +-->
+ +<!ENTITY % piml.Version
+ ++ + "-//TUX//DTD piml 1.0 Final//EN">
+ +<!-- Typical usage:
+ ++ + <!DOCTYPE piml PUBLIC "-//TUX//DTD PIML 1.0 Final//EN"
+ ++ + "http://lpml.sourceforge.net/DTD/piml.dtd">
+ ++ + <piml>
+ ++ + </piml>
+ +-->
+ +<!ELEMENT categoryname + + (#PCDATA)>
+ +<!ELEMENT targetroot + + (#PCDATA)>
+ +<!ELEMENT target (#PCDATA)>
+ +<!ATTLIST target
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT piml (targetroot|specialnotices|files|categories)+>
+ +<!ELEMENT specialnotices + + (specialnotice)+>
+ +<!ELEMENT categories + + (category)+>
+ +<!ELEMENT files (file)+>
+ +<!ELEMENT dependencies + + (#PCDATA)>
+ +<!ATTLIST dependencies
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT note (#PCDATA)>
+ +<!ELEMENT specialnotice + + (#PCDATA)>
+ +<!ELEMENT category (chmod,chown,abbreviation)>
+ +<!ATTLIST category
+ +type + + CDATA #REQUIRED
+ +name + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT chown (#PCDATA)>
+ +<!ATTLIST chown
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT chmod (#PCDATA)>
+ +<!ATTLIST chmod
+ +dist + + CDATA #REQUIRED
+ +>
+ +<!ELEMENT abbreviation + + (#PCDATA)>
+ +<!ELEMENT file (target,categoryname?,
+ ++ + note?,status?,dependencies?,perlscript)>
+ +<!ELEMENT TARGET EMPTY>
+ +<!ELEMENT perlscript + + (#PCDATA|TARGET)*>
+ +<!ATTLIST perlscript
+ +mode + + CDATA #REQUIRED
+ +>
+ +<!--
+ ++ + XML Filter Markup Language version 1.0.
+ +Date: + + January 27, 2002
+ ++ + Author: Scott Harrison
+ ++ + XML Filter Markup Language works to extract those sections
+ ++ + of an XML document matching certain conditions. This, in some
+ ++ + respects, relies on functionality similar to that expected
+ ++ + with XSL-type files. (I do not use standard XSL syntax because
+ ++ + I am not convinced that it would be simple and elegant for
+ ++ + this particular task).
+ ++ + This is anticipated to be a very important feature associated
+ ++ + with a larger Makefile-ish type approach involving the XML dtds:
+ ++ + LPML and PIML.
+ ++ + LPML (Linux Packaging Markup Language) can work to install files
+ ++ + on a single computer or a distributed network of computers with
+ ++ + pre-configured ssh accessibility (.ssh/authorized_keys, etc).
+ ++ + PIML (Post Installation Markup Language) works to coordinate the
+ ++ + last little scripts that need to be run after an installation.
+ ++ + With all this make-"power", wouldn't it be nice to only pass through
+ +portions + + of an LPML specification?
+ +-->
+ +<!--
+ +Copyright Michigan State + + University Board of Trustees
+ +This file is part of the + + LearningOnline Network with CAPA (LON-CAPA).
+ +LON-CAPA is free software; + + you can redistribute it and/or modify
+ +it under the terms of the + + GNU General Public License as published by
+ +the Free Software Foundation; + + either version 2 of the License, or
+ +(at your option) any later + + version.
+ +LON-CAPA is distributed + + in the hope that it will be useful,
+ +but WITHOUT ANY WARRANTY; + + without even the implied warranty of
+ +MERCHANTABILITY or FITNESS + + FOR A PARTICULAR PURPOSE. See the
+ +GNU General Public License + + for more details.
+ +You should have received + + a copy of the GNU General Public License
+ +along with LON-CAPA; if + + not, write to the Free Software
+ +Foundation, Inc., 59 Temple + + Place, Suite 330, Boston, MA 02111-1307 USA
+ +/home/httpd/html/adm/gpl.txt
+ +http://www.lon-capa.org/
+ +-->
+ +<!-- Note: current status + + is that choice:include is currently unsupported and
+ ++ + all matching statements REQUIRE two levels of 'when' statements;
+ ++ + not one or more than two... okay.. this will be fixed soon -->
+ +<!ENTITY % xfml.Version
+ ++ + "-//TUX//DTD piml 1.0 Final//EN">
+ +<!-- Typical usage:
+ ++ + <!DOCTYPE xfml PUBLIC "-//TUX//DTD PIML 1.0 Final//EN">
+ +<xfml>
+ ++ + </xfml>
+ +-->
+ +<!ELEMENT choice:include + + (#PCDATA)>
+ +<!ELEMENT choice:exclude + + (#PCDATA)>
+ +<!ELEMENT xfml (clause)+>
+ +<!ELEMENT clause (when:cdata|when:name|when:attribute|choice:exclude)+>
+ +<!ELEMENT when:name
+ +(when:cdata|when:name|when:attribute|choice:include|choice:exclude)+>
+ +<!ELEMENT when:attribute + +
+ +(when:cdata|when:name|when:attribute|choice:include|
+ +choice:exclude)+>
+ +<!ELEMENT when:cdata + +
+ +(when:cdata|when:name|when:attribute|choice:include|
+ +choice:exclude)+>
+ +<!ATTLIST when:name
+ +match + + CDATA #REQUIRED>
+ +<!ATTLIST when:attribute
+ +match + + CDATA #REQUIRED>
+ +<!ATTLIST when:cdata
+ +match + + CDATA #REQUIRED>
+ +<!ATTLIST choice:include
+ +nodename + + CDATA #REQUIRED>
+ +<!ATTLIST choice:exclude
+ +nodename + + CDATA #REQUIRED>
+ +