<?xml version="1.0"?>

<!-- ==========================================================================
 Author:      Stefan Brass
 Email:       sbrass@sis.pitt.edu
 Project:     Notes for XML Course, August 2000, University of Giessen
 Last Change: September 05, 2000
 Module:      notes_ie.xsl
 Purpose:     Stylesheet (Version for Internet Explorer 5)
=========================================================================== -->

<!DOCTYPE stylesheet_umlaute [
	<!ENTITY Auml "&#x00C4;">
	<!ENTITY auml "&#x00E4;">
	<!ENTITY Ouml "&#x00D6;">
	<!ENTITY ouml "&#x00F6;">
	<!ENTITY Uuml "&#x00DC;">
	<!ENTITY uuml "&#x00FC;">
	<!ENTITY szlig "&#x00DF;">
	<!ENTITY nbsp "&#x00A0;">
	<!ENTITY copy "&#x00A9;">
]>

<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl" version="1.0">
<!-- xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" -->

<!-- **************************************************************************
     Output Method:
     ********************************************************************** -->

<!-- xsl:output method="html"
	encoding="ISO-8859-1"
	doctype-public="-//W3C//DTD HTML 3.2 Final//EN"
	indent="yes"/ -->
<!-- "-//W3C//DTD HTML 4.0//EN" -->
<!-- "-//W3C//DTD HTML 3.2 Final//EN" -->

<!-- **************************************************************************
     Root Element: Creates HTML Frame
     ********************************************************************** -->

<xsl:template match="/">
<HTML>
<HEAD>
<TITLE>Kompaktkurs XML</TITLE>
<LINK REV="made" HREF="mailto:sbrass@sis.pitt.edu"/>
<STYLE TYPE="text/css">
        BODY { background-color: white; color: black }
        .note {margin-top: 0ex; padding-top: 0ex; border-top: 0ex}
	H2 {color: red; background-color: white}
	H3 {color: red; background-color: white}
</STYLE>
</HEAD>
<BODY>

<P><A HREF="http://www.uni-giessen.de/"
                >UNIVERSIT&Auml;T GIESSEN</A><BR/>
<A HREF="http://www.informatik.uni-giessen.de/"
                >Institut f&uuml;r Informatik</A><BR/>
<A HREF="http://www.informatik.uni-giessen.de/staff/brass/"
		>Dr.&nbsp;Stefan Brass</A></P>

	<xsl:apply-templates select="COURSENOTES"/>

<P/>
<HR/>
<P/>

<P>&copy; Stefan Brass
(<A HREF="mailto:sbrass@sis.pitt.edu"
	>sbrass@sis.pitt.edu</A>),
<xsl:value-of select="COURSENOTES/@DATE"/></P>

<P><SMALL>Original URL:
  <A><xsl:attribute name="HREF"
	>http://www.informatik.uni-giessen.de/staff/brass/xml00/<xsl:value-of
	select='COURSENOTES/@FILE'/></xsl:attribute
       >http://www.informatik.uni-giessen.de/staff/brass/xml00/<xsl:value-of
	select='COURSENOTES/@FILE'/></A>
  </SMALL></P>
</BODY>

</HTML>
</xsl:template>

<!-- **************************************************************************
     COURSENOTES:
     ********************************************************************** -->

<xsl:template match="COURSENOTES">
	<xsl:apply-templates select="CHAPTER"/>
</xsl:template>

<!-- **************************************************************************
     CHAPTER:
     ********************************************************************** -->

<xsl:template match="CHAPTER">
	<P/>
	<HR/>
	<H2>Kompaktkurs XML, Kapitel&nbsp;<xsl:value-of select="@NO"/>:
		<xsl:apply-templates select="TITLE"/></H2>
	<HR/>
	<xsl:apply-templates select="SECTION"/>
</xsl:template>

<!-- **************************************************************************
     TITLE:
     ********************************************************************** -->

<xsl:template match="TITLE">
	<xsl:apply-templates/>
</xsl:template>

<!-- **************************************************************************
     SECTION:
     ********************************************************************** -->

<xsl:template match="SECTION">
	<xsl:apply-templates/>
</xsl:template>

<!-- **************************************************************************
     H:
     ********************************************************************** -->

<xsl:template match="H">
	<H3><xsl:apply-templates/></H3>
</xsl:template>

<!-- **************************************************************************
     LIST:
     ********************************************************************** -->

<xsl:template match="LIST">
	<UL>
	<xsl:apply-templates/>
	</UL>
</xsl:template>

<!-- **************************************************************************
     ENUMERATE:
     ********************************************************************** -->

<xsl:template match="ENUMERATE">
	<OL>
	<xsl:apply-templates/>
	</OL>
</xsl:template>


<!-- **************************************************************************
     I:
     ********************************************************************** -->

<xsl:template match="I">
	<LI><xsl:apply-templates/></LI>
</xsl:template>

<!-- **************************************************************************
     NOTE:
     ********************************************************************** -->

<xsl:template match="NOTE">
	<BLOCKQUOTE CLASS="note"><P><SMALL><xsl:apply-templates
		/></SMALL></P></BLOCKQUOTE>
</xsl:template>

<!-- **************************************************************************
     M (Mathematical Formula):
     ********************************************************************** -->

<xsl:template match="M"><EM><xsl:apply-templates/></EM></xsl:template>

<!-- **************************************************************************
     CODE:
     ********************************************************************** -->

<xsl:template match="CODE">
	<BLOCKQUOTE><P><KBD>
	<xsl:apply-templates/>
	</KBD></P></BLOCKQUOTE>
</xsl:template>

<!-- **************************************************************************
     ICODE:
     ********************************************************************** -->

<xsl:template match="ICODE"><KBD><xsl:apply-templates/></KBD></xsl:template>

<!-- **************************************************************************
     L (Line):
     ********************************************************************** -->

<xsl:template match="L">
	<xsl:apply-templates/><BR/>
</xsl:template>

<!-- **************************************************************************
     T (Tab):
     ********************************************************************** -->

<xsl:template match="T">
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</xsl:template>

<!-- **************************************************************************
     STR:
     ********************************************************************** -->

<xsl:template match="STR">&quot;<xsl:apply-templates/>&quot;</xsl:template>

<!-- **************************************************************************
     BEG:
     ********************************************************************** -->

<xsl:template match="BEG">&lt;<xsl:apply-templates/>&gt;</xsl:template>

<!-- **************************************************************************
     TAG_BEG:
     ********************************************************************** -->

<xsl:template match="TAG_BEG">&lt;</xsl:template>

<!-- **************************************************************************
     TAG_END:
     ********************************************************************** -->

<xsl:template match="TAG_END">&gt;</xsl:template>

<!-- **************************************************************************
     END:
     ********************************************************************** -->

<xsl:template match="END">&lt;/<xsl:apply-templates/>&gt;</xsl:template>

<!-- **************************************************************************
     EMPTY:
     ********************************************************************** -->

<xsl:template match="EMPTY">&lt;<xsl:apply-templates/>/&gt;</xsl:template>

<!-- **************************************************************************
     XDECL:
     ********************************************************************** -->

<xsl:template match="XDECL">&lt;?xml <xsl:apply-templates/>?&gt;</xsl:template>

<!-- **************************************************************************
     PI:
     ********************************************************************** -->

<xsl:template match="PI">&lt;?<xsl:apply-templates/>?&gt;</xsl:template>

<!-- **************************************************************************
     COMMENT:
     ********************************************************************** -->

<xsl:template match="COMMENT">&lt;!-- <xsl:apply-templates/>
			--&gt;</xsl:template>
	
<!-- **************************************************************************
     CREF:
     ********************************************************************** -->

<xsl:template match="CREF">&amp;#<xsl:apply-templates/>;</xsl:template>

<!-- **************************************************************************
     EREF:
     ********************************************************************** -->

<xsl:template match="EREF">&amp;<xsl:apply-templates/>;</xsl:template>

<!-- **************************************************************************
     PEREF:
     ********************************************************************** -->

<xsl:template match="PEREF">%<xsl:apply-templates/>;</xsl:template>

<!-- **************************************************************************
     TAG:
     ********************************************************************** -->

<xsl:template match="TAG">&lt;<xsl:apply-templates/>&gt;</xsl:template>

<!-- **************************************************************************
     DOCDECL:
     ********************************************************************** -->

<xsl:template match="DOCDECL">&lt;!DOCTYPE
	<xsl:apply-templates/>&gt;</xsl:template>

<!-- **************************************************************************
     DOCDECL_BEG:
     ********************************************************************** -->

<xsl:template match="DOCDECL_BEG">&lt;!DOCTYPE
	<xsl:apply-templates/> [</xsl:template>

<!-- **************************************************************************
     DOCDECL_END:
     ********************************************************************** -->

<xsl:template match="DOCDECL_END">]&gt;</xsl:template>

<!-- **************************************************************************
     ELEMENT:
     ********************************************************************** -->

<xsl:template match="ELEMENT">&lt;!ELEMENT
	<xsl:apply-templates/>&gt;</xsl:template>

<!-- **************************************************************************
     ATTLIST:
     ********************************************************************** -->

<xsl:template match="ATTLIST">&lt;!ATTLIST
	<xsl:apply-templates/>&gt;</xsl:template>

<!-- **************************************************************************
     ATTLIST_BEG:
     ********************************************************************** -->

<xsl:template match="ATTLIST_BEG">&lt;!ATTLIST </xsl:template>

<!-- **************************************************************************
     ATTLIST_END:
     ********************************************************************** -->

<xsl:template match="ATTLIST_END">&gt;</xsl:template>

<!-- **************************************************************************
     EDECL:
     ********************************************************************** -->

<xsl:template match="EDECL">&lt;!ENTITY
	<xsl:apply-templates/>&gt;</xsl:template>

<!-- **************************************************************************
     PEDECL:
     ********************************************************************** -->

<xsl:template match="PEDECL">&lt;!ENTITY %
	<xsl:apply-templates/>&gt;</xsl:template>

<!-- **************************************************************************
     NOTATION:
     ********************************************************************** -->

<xsl:template match="NOTATION">&lt;!NOTATION
	<xsl:apply-templates/>&gt;</xsl:template>

<!-- **************************************************************************
     NOTATION_BEG:
     ********************************************************************** -->

<xsl:template match="NOTATION_BEG">&lt;!NOTATION </xsl:template>

<!-- **************************************************************************
     NOTATION_END:
     ********************************************************************** -->

<xsl:template match="NOTATION_END">&gt;</xsl:template>

<!-- **************************************************************************
     REQUIRED:
     ********************************************************************** -->

<xsl:template match="REQUIRED">#REQUIRED</xsl:template>

<!-- **************************************************************************
     IMPLIED:
     ********************************************************************** -->

<xsl:template match="IMPLIED">#IMPLIED</xsl:template>

<!-- **************************************************************************
     FIXED:
     ********************************************************************** -->

<xsl:template match="FIXED">#FIXED</xsl:template>

<!-- **************************************************************************
     PCDATA:
     ********************************************************************** -->

<xsl:template match="PCDATA">#PCDATA</xsl:template>

<!-- **************************************************************************
     URLs:
     ********************************************************************** -->

<xsl:template match="URL">[<A
	><xsl:attribute name="HREF"><xsl:apply-templates/></xsl:attribute
	><xsl:apply-templates/></A>]</xsl:template>

<!-- **************************************************************************
     Special Characters (German "Umlaute"):
     ********************************************************************** -->

<xsl:template match="ae">&auml;</xsl:template>
<xsl:template match="AE">&Auml;</xsl:template>
<xsl:template match="oe">&ouml;</xsl:template>
<xsl:template match="OE">&Ouml;</xsl:template>
<xsl:template match="ue">&uuml;</xsl:template>
<xsl:template match="UE">&Uuml;</xsl:template>
<xsl:template match="ss">&szlig;</xsl:template>
<xsl:template match="n">&nbsp;</xsl:template>

<xsl:template match="U">_</xsl:template>
<xsl:template match="LT">&lt;</xsl:template>
<xsl:template match="GT">&gt;</xsl:template>
<xsl:template match="AMP">&amp;</xsl:template>
<xsl:template match="APOS">&apos;</xsl:template>
<xsl:template match="QUOT">&quot;</xsl:template>
<xsl:template match="HASH">#</xsl:template>
<xsl:template match="SNAKE">~</xsl:template>
<xsl:template match="D">$</xsl:template>
<xsl:template match="COPYRIGHT">&copy;</xsl:template>
<xsl:template match="GE">&gt;=</xsl:template>

<!-- **************************************************************************
     Copy Text Nodes to Output:
     ********************************************************************** -->

<xsl:template match="text()"><xsl:value-of select="."/></xsl:template>

<!-- **************************************************************************
     End of Stylesheet:
     ********************************************************************** -->

</xsl:stylesheet>

