<?php  																														require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); 	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); 	$App 	= new App();	$Nav	= new Nav();	$Menu 	= new Menu();		include($App->getProjectCommon());    # All on the same line to unclutter the user's desktop'

	#*****************************************************************************
	#
	# template.php
	#
	# Author: 		Denis Roy
	# Date:			2005-06-16
	#
	# Description: Type your page comments here - these are not sent to the browser
	#
	#
	#****************************************************************************
	
	#
	# Begin: page-specific settings.  Change these. 
	$pageTitle 		= "BPEL Validator Rules";
	$pageKeywords	= "BPEL, process, designer, milestone,validator";
	$pageAuthor		= "BPEL Team";
	
	# Add page-specific Nav bars here
	# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
	# $Nav->addNavSeparator("Interesting Links", 	"");
	# $Nav->addCustomNav("Scientific Workflows using BPEL", "http://sse.cs.ucl.ac.uk/index.php?id=omii-bpel", "_blank", 1);
	# $Nav->addCustomNav("WS-BPEL 2.0", "http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.html", "_blank", 1);
	# $Nav->addCustomNav("OASIS TC", "http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel", "_blank", 1);
	
	# End: page-specific settings
	#
	$rules_html=get_include_contents("rules.html");
	 
	
	# Paste your HTML content between the EOHTML markers!	
	$html = <<<EOHTML


<div id="maincontent">
		
	<div id="midcolumn">
		<h1>$pageTitle</h1>
     
	<p style="margin-top: 50px;">
	$rules_html 
	</p>
	
	</div>

	
</div>


EOHTML;


	# Generate the web page
	$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>
