<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="styles/xhtml2html.xsl"?>
  
<!-- < ! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 2.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml2.dtd"> -->
<html xml:lang="en" class="style-marist-html"
  xmlns="http://www.w3.org/2002/06/xhtml2"
  xmlns:ev="http://www.w3.org/2001/xml-events">
  <head>
    <title>Matthew A Johnson - Professional Lecturer @ Marist College</title>
    <style type="text/css">
      blockcode { border:1px dotted #bbb;background-color:#eee;padding:1ex;max-height:36em;overflow:auto;}
      separator {color:#f00;}
      .xml-fmt {color:#000;font-weight:bold;}
      .xml-doc {color:#4e9eed;}
      .xml-com {color:#aaa;font-style:italic;}
      .xml-tag {color:#162c42;}
      .xml-elm {color:#369;font-weight:bold;}
      .xml-att {color:#963;font-weight:normal;}
      .xml-val {color:#393;}
    </style>
    <model>
      <instance>
        <filename/>
      </instance>
      <submission id="load-xml-frm" method="get" action=""/>
    </model>
  </head>
  <body>
    <h href="http://www.marist.edu">Matthew A Johnson</h>
    <section>
      <h>Bio</h>
      <section>
        <ul>
          <li>Professional Lecturer, Department of Computer Science and <abbr title="Information Technology &amp; Systems">ITS</abbr>, Marist College</li>
          <li>...</li>
        </ul>
      </section>
      <h>Current Courses</h>
      <section>
        <ul>
          <li href="courses/sysadmin">ITS410L: Systems Administration</li>
          <li href="courses/robotics">CMSC412L: Robotics</li>
          <li href="courses/graphics">CMSC446L: Computer Graphics</li>
          <li href="courses/distrib">MSCS620L: Distributed Systems</li>
        </ul>
      </section>
      <h>Other Courses</h>
      <section>
        <ul>
          <li href="courses/webprog">ITS210L: Web Programming I</li>
          <li href="courses/webprog">ITS220L: Web Programming II</li>
          <li href="courses/unix">ITS312L: Unix/Linux</li>
          <li href="courses/webtech">MSIS517L: Web Technologies</li>
          <li href="courses/atpl">MSCS610L: Adv. Theory of Programming Languages</li>
        </ul>
      </section>
      <h>Summer Scholars</h>
      <section>
        <ul>
          <li href="SS09/home.php">Summer Scholars 2009</li>
          <li>Summer Scholars 2008</li>
        </ul>
      </section>
      <separator/>
      <h>Syntax Highlighting Tester</h>
      <section>
        <select1 id="file-chooser" ref="filename">
          <handler type="text/ecmascript" ev:event="change">
            <![CDATA[
              requestContent(document.getElementById('code-pane'), getElementById('file-chooser').value);
            ]]>
          </handler>
          <label>Filename:</label>
          <item>
            <label>Business Card XML</label>
            <value>courses/webtech/bcard_example.xml</value>
          </item>
          <item>
            <label>CFGML: LET Syntax</label>
            <value>cfgml/examples/let.xml</value>
          </item>
          <item>
            <label>CFGML: PROC Syntax</label>
            <value>cfgml/examples/proc.xml</value>
          </item>
          <item>
            <label>CFGML: Scheme Syntax</label>
            <value>cfgml/examples/scheme.xml</value>
          </item>
        </select1>
        <!-- <submit submission="load-xml-frm" onsubmit="ecmascript:requestContent(document.getElementById('code-pane'), getElementById('input-xml-file').value);return false;"><label>Load XML</label></submit> -->
        <blockcode id="code-pane"></blockcode>
      </section>
    </section>
    <handler type="text/ecmascript" src="scripts/syntax-xml.es"/>
    <handler type="text/ecmascript">
      <![CDATA[
        var request_queue = new Array();
        var lastPageLoaded;

        function setContent(elem, http_request)
        {
          if (http_request.readyState == 4)
          {
            if (http_request.status == 200)
            {
              if (window.ActiveXObject) // MSIE
                elem.innerHTML = highlightSyntax(http_request.responseText, xmlSyntaxPatterns, null).replace(/\n/g, '<br\>').replace(/  /g, '&nbsp;&nbsp;');
              else
                elem.innerHTML = highlightSyntax(http_request.responseText, xmlSyntaxPatterns, null);
          }
            else
            {
              elem.innerHTML = 'Failed to get response from server.';
            }
          }
        }

        function requestContent(elem, url)
        {
          var http_request;
          if (window.XMLHttpRequest) // Mozilla, Safari, ...
          {
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType)
            {
              http_request.overrideMimeType('application/xhtml+xml');
              // See note below about this line
            }
          }
          else if (window.ActiveXObject) // MSIE
          {
            try
            {
              http_request = new ActiveXObject("Msxml2.XMLHTTP");
            }
            catch (e)
            {
              try
              {
                http_request = new ActiveXObject("Microsoft.XMLHTTP");
              }
              catch (e)
              {}
            }
          }
          if (!http_request)
          {
            alert('Giving up :( Cannot create an XMLHTTP instance');
            return false;
          }
          http_request.onreadystatechange = function() { setContent(elem, http_request); };
          http_request.open('GET', url, true);
          http_request.send(null);
        }
      ]]>
    </handler>
  </body>
</html>
