<?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'
	$pageTitle 		= "SMILA - Documentation";
	$pageKeywords	= "SMILA, Unified Information Access Architecture, unstructured information management, information logistics, semantic web, framework, platform, eclipse, big data, bigdata";
	$pageAuthor		= "Igor Novakovic";

	# Paste your HTML content between the EOHTML markers!	
	$html = <<<EOHTML

	<div id="midcolumn">
		<h1>Documentation</h1>
		<p>
			SMILA's <a href="http://wiki.eclipse.org/SMILA">current documentation</a> (corresponds always to the code in trunk) together with concepts and specifications is being 
			completely maintained in our <a href="http://wiki.eclipse.org/SMILA" target="_blank">project wiki</a>. 
		</p>
		<p>
			The current (generated from the code in trunk) JavaDocs are always available 
			<a href="http://archive.eclipse.org/rt/smila/javadoc/current/" target="_blank">here</a>. 
		</p>
		<h2>Documentation archive</h2>
		<p>
			SMILA's archived documentation is provided as read-only  
			wiki export:
			<ul>
			    <li><a href="documentation/1.2/wiki.eclipse.org/SMILA.html" target="_blank">1.2</a> (<a href="documentation/wiki.eclipse.org_1.2_17.4.2013.zip">download</a>)</li>
			    <li><a href="documentation/1.1/wiki.eclipse.org/SMILA.html" target="_blank">1.1</a> (<a href="documentation/wiki.eclipse.org_1.1_11.7.2012.zip">download</a>)</li>
				<li><a href="documentation/1.0/wiki.eclipse.org/SMILA.html" target="_blank">1.0</a> (<a href="documentation/wiki.eclipse.org_1.0_2.2.2012.zip">download</a>)</li>				
				<li><a href="documentation/0.9/SMILA.html" target="_blank">0.9</a> (<a href="documentation/wiki.eclipse.org_0.9_27.10.2011.zip">download</a>)</li>				
				<li><a href="documentation/0.8/SMILA.html" target="_blank">0.8</a> (<a href="documentation/wiki.eclipse.org_0.8_17.6.2011.zip">download</a>)</li>				
				<li><a href="documentation/0.7/SMILA.html" target="_blank">0.7</a> (<a href="documentation/wiki.eclipse.org_0.7_30.3.2011.zip">download</a>)</li>
                <li><a href="docs/ORDO_D.11.1.1.b_ConceptIntegrationFramework_V1.0.pdf" target="_blank">SMILA in a nutshell (corresponds to the state of 0.5 version)</a>.
			</ul>
		</p>
		<p>
			Archived JavaDocs are also available:
			<ul>								
			    <li><a href="http://archive.eclipse.org/rt/smila/javadoc/1.2/" target="_blank">1.2</a> (<a href="http://archive.eclipse.org/rt/smila/javadoc/SMILA-javadoc-1.2.zip">download</a>)</li>
		    	<li><a href="http://archive.eclipse.org/rt/smila/javadoc/1.1/" target="_blank">1.1</a> (<a href="http://archive.eclipse.org/rt/smila/javadoc/SMILA-javadoc-1.1.zip">download</a>)</li>
				<li><a href="http://archive.eclipse.org/rt/smila/javadoc/1.0/" target="_blank">1.0</a> (<a href="http://archive.eclipse.org/rt/smila/javadoc/SMILA-javadoc-1.0.zip">download</a>)</li>				
				<li><a href="http://archive.eclipse.org/rt/smila/javadoc/0.9/" target="_blank">0.9</a> (<a href="http://archive.eclipse.org/rt/smila/javadoc/SMILA-javadoc-0.9.zip">download</a>)</li>				
				<li><a href="http://archive.eclipse.org/rt/smila/javadoc/0.8/" target="_blank">0.8</a> (<a href="http://archive.eclipse.org/rt/smila/javadoc/SMILA-javadoc-0.8.zip">download</a>)</li>				
				<li><a href="http://archive.eclipse.org/rt/smila/javadoc/0.7/" target="_blank">0.7</a> (<a href="http://archive.eclipse.org/rt/smila/javadoc/SMILA-javadoc-0.7.zip">download</a>)</li>
			</ul>
		</p>
	</div>
	  
EOHTML;

	include('rightColumn.php');
	$html .= $rightColumn;

	# Generate the web page
	$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>
