diff --git a/oracle-docs.perl b/oracle-docs.perl
index a16021d..f33404c 100755
--- a/oracle-docs.perl
+++ b/oracle-docs.perl
@@ -20,23 +20,23 @@
 @references =
 (
 	# Name(0)	Code(1)	URL(2)
-	"Documentation										Docs			${oracle_documentation_root}",
-	"Database Administrators Guide			Admin			${oracle_documentation_root}server.111/b28310/toc.htm",
-	"2 Day Developers Guide				AppDev2Day		${oracle_documentation_root}appdev.111/b28843/toc.htm",
-	"Advanced Application Developers Guide	AppDevAdv		${oracle_documentation_root}appdev.111/b28424/toc.htm",
-	"Object-Relational Developers Guide	AppDevOR		${oracle_documentation_root}appdev.111/b28371/toc.htm",
-	"Database Concepts									Concepts		${oracle_documentation_root}server.111/b28318/toc.htm",
-	"Data Warehousing Guide								DataWarehousing	${oracle_documentation_root}server.111/b28313/toc.htm",
-	"Database Error Messages							Errors			${oracle_documentation_root}server.111/b28278/toc.htm",
-	"SQL Reference										SQL				${oracle_documentation_root}server.111/b28286/toc.htm",
-	"Java Developers Guide					Java			${oracle_documentation_root}java.111/b31225/toc.htm",
-	"JDBC Developers Guide and Reference	JDBC			${oracle_documentation_root}java.111/b31224/toc.htm",
-	"Database Master Glossary							Glossary		${oracle_documentation_root}mix.111/b14388/toc.htm",
-	"Performance Tuning Guide							Tuning			${oracle_documentation_root}server.111/b28274/toc.htm",
-	"PL/SQL Language Reference							PLSQL			${oracle_documentation_root}appdev.111/b28370/toc.htm",
-	"PL/SQL Packages and Types Reference				PLSQLPkgTyp		${oracle_documentation_root}appdev.111/b28419/toc.htm",
-	"Database Master Index								Index			${oracle_documentation_root}mix.111/b14387/toc.htm",
-	"Database Reference									Reference		${oracle_documentation_root}server.111/b28320/toc.htm"
+	"Documentation											Docs			${oracle_documentation_root}",
+	"Database Administrators Guide			Admin			${oracle_documentation_root}server.111/b28310/toc.htm",
+	"2 Day Developers Guide					AppDev2Day		${oracle_documentation_root}appdev.111/b28843/toc.htm",
+	"Advanced Application Developers Guide	AppDevAdv		${oracle_documentation_root}appdev.111/b28424/toc.htm",
+	"Object-Relational Developers Guide		AppDevOR		${oracle_documentation_root}appdev.111/b28371/toc.htm",
+	"Database Concepts										Concepts		${oracle_documentation_root}server.111/b28318/toc.htm",
+	"Data Warehousing Guide									DataWarehousing	${oracle_documentation_root}server.111/b28313/toc.htm",
+	"Database Error Messages								Errors			${oracle_documentation_root}server.111/b28278/toc.htm",
+	"SQL Reference											SQL				${oracle_documentation_root}server.111/b28286/toc.htm",
+	"Java Developers Guide					Java			${oracle_documentation_root}java.111/b31225/toc.htm",
+	"JDBC Developers Guide and Reference		JDBC			${oracle_documentation_root}java.111/b31224/toc.htm",
+	"Database Master Glossary								Glossary		${oracle_documentation_root}mix.111/b14388/toc.htm",
+	"Performance Tuning Guide								Tuning			${oracle_documentation_root}server.111/b28274/toc.htm",
+	"PL/SQL Language Reference								PLSQL			${oracle_documentation_root}appdev.111/b28370/toc.htm",
+	"PL/SQL Packages and Types Reference					PLSQLPkgTyp		${oracle_documentation_root}appdev.111/b28419/toc.htm",
+	"Database Master Index									Index			${oracle_documentation_root}mix.111/b14387/toc.htm",
+	"Database Reference										Reference		${oracle_documentation_root}server.111/b28320/toc.htm"
 );
 
 # Prefix to use in the generated template names:
@@ -52,15 +52,27 @@
 $output_type = $ARGV[1];
 
 if ($output_type eq "xslt") {
-	print "\n" . 
-		"\n" . 
-		"\n";
+	print <
+
+
+
+END_OF_HEADER
+;
 }
 
 # One-off hard-coded template for a link to the root of the documentation set, using the URL as the anchor text.
 # This is used in several places in the INFO 212 course book and updating them is more of a pain than implementing this!
 if ($output_type eq "xslt") {
-	print "" . $oracle_documentation_root . "\n";
+	print <
+		
+			${oracle_documentation_root}
+		
+	
+
+END_OF_TEMPLATE
+;
 #	print "" . $oracle_documentation_root . "\n";
 }
 	
@@ -113,17 +125,21 @@
 # Generate an XSLT meta-template for generating either an HTML or a LaTeX producing template.
 # Arguments: (, , )
 sub generate_xsl_metatemplate {
-	return "" . 
-		"" . # mode=\"hyperlink-internal\">" .
-		"" . $_[2] . "" .
-		"" . "" . " " . $_[0] . "" .
-		"" .
-		"";
-	
+	return <
+		
+			${_[2]}
+			
+				 ${_[0]}
+			
+		
+	
+END_OF_TEMPLATE
+;
 	# Nope, wrong tree here:
 	return "" . 
-		"" . "\\href{" . $_[2] . "}" . "{" . "" . " " . $_[0] . "}" . "" . 
-		"" . "" . "" . " " . $_[0] . "" . "" . 
+		"" . "\\href{" . $_[2] . "}" . "{" . "" . " " . $_[0] . "}" . "" . 
+		"" . "" . "" . " " . $_[0] . "" . "" . 
 		"";
 }
 
@@ -131,7 +147,7 @@
 # Produce the actual XML markup to be used in authoring (just to provide a handy list of them all):
 # Arguments: ()
 sub generate_xml {
-	return "<" . $oracle_prefix . $_[0]. "/>";
+	return "<" . $oracle_prefix . $_[0]. " />";
 }
 
 # Produce XML markup for a link to a section of the documentation (deprecated):
@@ -141,11 +157,11 @@
 
 # Generate an XSLT template for HTML output (deprecated):
 sub generate_xsl_template_for_html {
-		return "" . $_[1] . "" . " " . $_[2] . "";
+		return "" . $_[1] . "" . " " . $_[2] . "";
 }
 
 # Generate an XSLT template for LaTeX output (deprecated):
 sub generate_xsl_template_for_latex {
-	return "\\href{" . $_[1] . "}{ " . $_[2] . "}";
+	return "\\href{" . $_[1] . "}{ " . $_[2] . "}";
 }