<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="cctHW.xsl" ?>

<assignment
   name="Electronic Submission Format"
   course="for Dr. Taylor's Courses"
   date="Spring 2001-present" xml:space="preserve">
<copyright update="Sun Mar  5 21:22:53  2006" date="2-12-2001" notice="Copyright &#160; 2001-2006 Dr. Christopher C. Taylor">
  <image src="../icons/email.png" height="20" width="170" />
</copyright>

<section name="Introduction">

<p>
View a "Getting Started with the XML submission Format"
<a href="xmlHelp.wmv">Here</a>.
</p>

<p>
All laboratory reports for courses I teach must be submitted
electronically using the following <a href="../submit/">web submission
page</a>.  The student is responsible for ensuring that each report
is uploaded correctly by the specified due date.
I will grade the reports and return them via email to the student.
My comments will appear in <font color="#FF0000">red</font>.
</p>

<p>
Reports should consist of one XML file and should include both the
documented source code and the lab discussion.  The entire report should
consist of <bold>one</bold> file unless images or certain other files are
included (more on this below).  This document provides format guidelines for
submissions.
</p>

</section>

<section name="Sample Report">

<p>
Many of the methods described in this document (and some that are not)
are demonstrated in the <a href="hwsamp.xml">sample report</a>.
You may also wish to look at the <a href="hwsampGrd.xml">graded
sample report</a>.
</p>

</section>

<section name="Markup Language Basics">

<p>
All reports should be formatted in XML using
<a href="cctHW.xsl">this style sheet</a>.  The style sheet defines a
markup language that is similar to HTML.  By placing the style sheet
file and your report in the same directory, you should be able to view
your report using a current version of Internet Explorer.
</p>

<p>
Here are a few basic things to keep in mind when composing your report:
</p>

<ul>
  <li>You must have the <a href="cctHW.xsl">style sheet</a>
      file in the same directory as your report file.</li>
  <li>All markup commands are lower case and found within
      angle brackets <command>&lt; &gt;</command>.</li>
  <li>Almost all formatting commands involve a start and
      an end tag.
  <ul>
    <li>The start tag begins with the markup command's name
        and may contain additional attributes.  For example,
        <p>
          <command>&lt;section name="Introduction"&gt;</command>
        </p>
        is the start tag for <command>section</command> with one
        attribute, <command>name</command>, assigned the value
        <command>Introduction</command>.</li>
    <li>The end tag contains a slash and the command name.  For example,
        <p>
          <command>&lt;/section&gt;</command>
        </p></li>
  </ul></li>
  <li>All markup commands that do not have both start and end tags
      should only have a one tag and that tag must end with a slash.
      For example,
        <p>
          <command>&lt;image src="taylorSerious.png" /&gt;</command>
        </p></li>
  <li>The following characters cannot be included in your report in the
      standard way.  The alternative is given immediately after.
  <ul>
    <li><command>&lt;</command> should be written as
        <command>&amp;lt;</command></li>
    <li><command>&gt;</command> should be written as
        <command>&amp;gt;</command></li>
    <li><command>&amp;</command> should be written as
        <command>&amp;amp;</command></li>
    <li><command>&quot;</command> may need to be written as
        <command>&amp;quot;</command></li>
    <li><command>&apos;</command> may need to be written as
        <command>&amp;apos;</command></li>
  </ul></li>
  <li>Markup commands must be closed in the opposite order in which
      they were opened.  For example,
      <p>
        Legal: <command>&lt;italic&gt;&lt;bold&gt;toilet&lt;/bold&gt;&lt;/italic&gt;</command>
      </p>
      <p>
        Illegal: <command>&lt;italic&gt;&lt;bold&gt;paper&lt;/italic&gt;&lt;/bold&gt;</command>
      </p></li>
</ul>

</section>

<section name="Template File">

  <p>
  A <a href="template.xml">template file</a> is available that may be used
  as a starting point for your submission.  The file looks
  something like this (without the line numbers).
  </p>

    <code><![CDATA[
1       <?xml version="1.0"?>
        <?xml-stylesheet type="text/xsl" href="cctHW.xsl" ?>
        <assignment
           name="FIX"
5          date="FIX"
           course="FIX"
           professor="Dr. Chris Taylor" xml:space="preserve">
        <author msoelogin="FIX" email="FIX">FIX</author>

10

        <section name="Introduction">

        <p>
15      FIX
        </p>
  
        </section>

20      <section name="Activity Log">
        <figure caption="Activity Log">
          <table border="1">
            <tr>
              <td align="center">Activity</td>
25            <td align="center">Time (in minutes)</td>
            </tr>
            <tr>
              <td align="left">Designing</td>
              <td align="right">FIX</td>
30          </tr>
            <tr>
              <td align="left">Coding</td>
              <td align="right">FIX</td>
            </tr>
35          <tr>
              <td align="left">Debugging</td>
              <td align="right">FIX</td>
            </tr>
            <tr>
40            <td align="left">Testing</td>
              <td align="right">FIX</td>
            </tr>
            <tr>
              <td align="left">Writing Report</td>
45            <td align="right">FIX</td>
            </tr>
            <tr>
              <td align="left">Other</td>
              <td align="right">FIX</td>
50          </tr>
            <tr>
              <td align="left">Total</td>
              <td align="right" bgcolor="#AAAAAA">FIX</td>
            </tr>
55        </table>
        </figure>
        </section>

        <section name="Source Code">
60        <code><![CDATA[
            FIX
    ]]></code>
<font face="courier" size="-1">&#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160;
]]&gt;&lt;/code&gt;</font>
    <code><![CDATA[
        </section>

65      <section name="Source Code">
  
          <section name="FIX">
            <code><![CDATA[
              FIX
    ]]></code>
<font face="courier" size="-1">70&#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160;
]]&gt;&lt;/code&gt;</font>
            <code><![CDATA[
          </section>

          <section name="FIX">
            <code><![CDATA[
75            FIX
    ]]></code>
<font face="courier" size="-1">&#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
]]&gt;&lt;/code&gt;</font>
            <code><![CDATA[
          </section>

        </section>
80      </assignment>
    ]]></code>

  <ul>
    <li>Lines 1-2: Indicate that this is an XML document that is using
        the <command>cctHW.xsl</command> stylesheet.</li>
    <li>Lines 3-7: Indicate the <command>name</command> of the assignment,
        the <command>date</command> the report was submitted, the
        <command>course</command> associated with the assignment,
        and the <command>professor</command> to whom the assignment was
        submitted.</li>
    <li>Line 8: Gives the name and email address for the author of the
        report.  If more than one author exists, a separate
        <command>author</command> element should be given for each author.</li>
    <li>Lines 12-18: Specify the first section.  The section is given a
        <command>name</command> and is automatically numbered when displayed
        in the web browser.</li>
    <li>Lines 14-16: Specify a paragraph within the first section.  Additional
        paragraphs may be added as needed.</li>
    <li>Line 20: Starts a <command>section</command> for the activity log.</li>
    <li>Line 21: Starts a <command>figure</command> with the
        <command>caption</command> of "Activity Log".</li>
    <li>Line 22: Starts a <command>table</command> with a small
        <command>border</command> around each cell.  Note: any valid
        attributes for the HTML <command>table</command> tag will work
        here.</li>
    <li>Lines 23-26: Specify the first row of the table.</li>
    <li>Line 24: Specifies the first cell of the table.  It indicates that
        "Activity" should be centered within the cell.  Note: any valid
        attributes for the HTML <command>td</command> tag will work here.</li>
    <li>Lines 23-54: Specify the remaining rows of the table.</li>
    <li>Lines 55-57: End the table, figure, and section.</li>
    <li>Line 59: Begins a section for sample results from your program.</li>
    <li>Lines 60-62: Contain the sample results for one program run.  The
        actual results (copy and paste from the DOS window) should
        replace the <command>FIX</command> on line 61.</li>
    <li>Lines 60 and 62: Start and end the sample output.  They tell
        the browser to display the text exactly as it appears in the file.</li>
    <li>Line 65: Begins a section for all of the source code.</li>
    <li>Lines 67-71: Specify the first subsection containing one C++ source
        file.  The name of the source file should replace the
        <command>FIX</command> on line 67, and the actual source code should
        replace <command>FIX</command> on line 69.<br/>
        Notice that subsections are defined by nesting
        <command>section</command> tags.</li>
    <li>Lines 73-77: Specify the second subsection containing one C++ source
        file.</li>
    <li>Lines 79-80: End the "Source Code" section and the
        <command>assignment</command> that started on line 3.</li>
  </ul>

  <p>
  You may find it helpful to look at a complete <a href="hwsamp.xml">sample
  laboratory report</a>.
  </p>

</section>

<section name="Multiple File Submissions">

<p>
Typically, lab reports will consist of one XML file which contains a
narrative, all of the source code for the assignment, and appropriate
sample results.  However, there are times when it is necessary to
include additional files.  When additional files are required,
the following conventions must be observed:
</p>

<ul>
  <li>All filenames for the additional files should have the following format:
      <command>183taylorL3.png</command> where <command>183</command>
      is the course number, <command>taylor</command> is your MSOE login,
      <command>L3</command> is the assignment, and <command>png</command> is
      the extension for the file.  If more than one file with the same
      extension is submitted, you may name the files as follows:
      <command>183taylorL3a.png</command>,
      <command>183taylorL3b.png</command>...</li>
  <li>All additional files should be zip'd into one archive.
  <ul>
    <li>I use <a href="http://www.powerarchiver.com/">PowerArchiver</a>,
        a free (provided you get an old version of it) archiving utility that
        supports zip files.</li>
    <li>You should submit the report and one zip'd file only.</li>
    <li>Links should be made from within your XML report to each of the
        additional files.
    <ul>
      <li>The following line will create a link (called "CSP Spreadsheet")
          to the file <command>286taylorL2.xls</command>:
          <p>
          <command>&lt;a href="286taylorL2.xls"&gt;CSP Spreadsheet&lt;/a&gt;</command>
          </p></li>
      <li>Images (.png, .jpg, .gif formats only) may be included within your
          report using the following command:
          <p>
          <command>&lt;figure caption="Figure 1: Original Image"&gt;<br/>
          &#160;&#160;&lt;image src="183taylorL2a.png" /&gt;<br/>
          &lt;/figure&gt;</command>
          </p></li>
    </ul></li>
  </ul></li>
</ul>

</section>

<section name="Markup Language Reference">

<p>
The following table provides examples of the various markup commands available
to you.  The left column demonstrates the results of the markup commands
given in the right column.
</p>

<table width="95%" cellpadding="1" border="1">
  <tr>
    <td>
This is how I get a<br/> new line in my text.
    </td>
    <td>
<command>This is how I get a&lt;br/&gt; new line in my text.</command>
    </td>
  </tr>
  <tr>
    <td>
<bold>Bold</bold>
    </td>
    <td>
<command>&lt;bold&gt;Bold&lt;/bold&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
<italic>Italics</italic>
    </td>
    <td>
<command>&lt;italic&gt;Italics&lt;/italic&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
<underline>Underline</underline>
    </td>
    <td>
<command>&lt;underline&gt;Underline&lt;/underline&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
<command>Command</command>
    </td>
    <td>
<command>&lt;command&gt;Command&lt;/command&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
C++ keywords like <cppkey>int</cppkey>
    </td>
    <td>
<command>C++ keywords like &lt;cppkey&gt;int&lt;/cppkey&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
C++ comments like<br/><cppcmt>// ignore this</cppcmt>
    </td>
    <td>
<command>C++ comments like&lt;br/&gt;&lt;cppcmt&gt;// ignore this&lt;/cppcmt&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
<ol>
  <li>Item 1</li>
  <li>Item 2</li>
</ol>
    </td>
    <td>
      <command>&lt;ol&gt;<br/>
        &#160;&#160;&lt;li&gt;Item 1&lt;/li&gt;<br/>
        &#160;&#160;&lt;li&gt;Item 2&lt;/li&gt;<br/>
      &lt;/ol&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
<ul>
  <li>Item 1</li>
  <li>Item 2</li>
</ul>
    </td>
    <td>
      <command>&lt;ul&gt;<br/>
        &#160;&#160;&lt;li&gt;Item 1&lt;/li&gt;<br/>
        &#160;&#160;&lt;li&gt;Item 2&lt;/li&gt;<br/>
      &lt;/ul&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
x<sup>3</sup>
    </td>
    <td>
<command>x&lt;sup&gt;3&lt;/sup&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
x<sub>3</sub>
    </td>
    <td>
<command>x&lt;sub&gt;3&lt;/sub&gt;</command>
    </td>
  </tr>
  <tr>
    <td>
<image width="40" height="40" src="../graphics/nlogo2.gif" />
    </td>
    <td>
<command>&lt;image width="40" height="40" src="../graphics/nlogo2.gif" /&gt;</command><br/>
    Note: You can use any of the attributes for the HTML <command>img</command>
    command.
    </td>
  </tr>
  <tr>
    <td>
      <table border="1">
        <tr>
          <td>Cell 1,1</td>
          <td bgcolor="#888888">Cell 1,2</td>
        </tr>
        <tr>
          <td>Cell 2,1</td>
          <td>Cell 2,2</td>
        </tr>
      </table>
    </td>
    <td>
      <command>&lt;table border="1"&gt;<br/>
        &#160;&#160;&lt;tr&gt;<br/>
          &#160;&#160;&#160;&#160;&lt;td&gt;Cell 1,1&lt;/td&gt;<br/>
          &#160;&#160;&#160;&#160;&lt;td bgcolor="#888888"&gt;Cell 1,2&lt;/td&gt;<br/>
        &#160;&#160;&lt;/tr&gt;<br/>
        &#160;&#160;&lt;tr&gt;<br/>
          &#160;&#160;&#160;&#160;&lt;td&gt;Cell 2,1&lt;/td&gt;<br/>
          &#160;&#160;&#160;&#160;&lt;td&gt;Cell 2,2&lt;/td&gt;<br/>
        &#160;&#160;&lt;/tr&gt;<br/>
      &lt;/table&gt;<br/></command>
    Note: You can use any of the attributes for the HTML
    <command>table</command> and <command>td</command> commands.
    </td>
  </tr>
</table>

</section>
</assignment>
