diff --git a/org.eclipse.emf.refactor.build.extensions/build/refactor-extensions-0.7.0.20121218154459.jar b/org.eclipse.emf.refactor.build.extensions/build/refactor-extensions-0.7.0.20121218154459.jar
new file mode 100644
index 0000000..eef1184
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/refactor-extensions-0.7.0.20121218154459.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.henshin.feature_0.7.0.20121218154459.jar b/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.henshin.feature_0.7.0.20121218154459.jar
new file mode 100644
index 0000000..8ef9132
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.henshin.feature_0.7.0.20121218154459.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.ocl.feature_0.7.0.20121218154459.jar b/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.ocl.feature_0.7.0.20121218154459.jar
new file mode 100644
index 0000000..0a8d884
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.ocl.feature_0.7.0.20121218154459.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.papyrus.feature_0.7.0.20121218154459.jar b/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.papyrus.feature_0.7.0.20121218154459.jar
new file mode 100644
index 0000000..83b986e
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.papyrus.feature_0.7.0.20121218154459.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.reporter.feature_0.7.0.20121218154459.jar b/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.reporter.feature_0.7.0.20121218154459.jar
new file mode 100644
index 0000000..c59a145
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/features/org.eclipse.emf.refactor.reporter.feature_0.7.0.20121218154459.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.henshin_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.henshin_0.7.0.jar
new file mode 100644
index 0000000..c52b512
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.henshin_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.ocl_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.ocl_0.7.0.jar
new file mode 100644
index 0000000..97dc94f
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.ocl_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.papyrus_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.papyrus_0.7.0.jar
new file mode 100644
index 0000000..973b1d8
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.papyrus_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.reporter_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.reporter_0.7.0.jar
new file mode 100644
index 0000000..a945be5
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.metrics.reporter_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.refactoring.henshin_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.refactoring.henshin_0.7.0.jar
new file mode 100644
index 0000000..b883713
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.refactoring.henshin_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.refactoring.ocl_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.refactoring.ocl_0.7.0.jar
new file mode 100644
index 0000000..f0c2014
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.refactoring.ocl_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.refactoring.papyrus_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.refactoring.papyrus_0.7.0.jar
new file mode 100644
index 0000000..8814572
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.refactoring.papyrus_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.henshin_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.henshin_0.7.0.jar
new file mode 100644
index 0000000..ce4a5ff
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.henshin_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.ocl_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.ocl_0.7.0.jar
new file mode 100644
index 0000000..29e5633
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.ocl_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.papyrus_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.papyrus_0.7.0.jar
new file mode 100644
index 0000000..75468e4
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.papyrus_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.reporter_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.reporter_0.7.0.jar
new file mode 100644
index 0000000..4a26845
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/source/plugins/org.eclipse.emf.refactor.smells.reporter_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/artifacts.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/artifacts.jar
new file mode 100644
index 0000000..3b15743
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/artifacts.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/content.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/content.jar
new file mode 100644
index 0000000..10db274
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/content.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.henshin.feature_0.7.0.20121218154459.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.henshin.feature_0.7.0.20121218154459.jar
new file mode 100644
index 0000000..8ef9132
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.henshin.feature_0.7.0.20121218154459.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.ocl.feature_0.7.0.20121218154459.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.ocl.feature_0.7.0.20121218154459.jar
new file mode 100644
index 0000000..0a8d884
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.ocl.feature_0.7.0.20121218154459.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.papyrus.feature_0.7.0.20121218154459.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.papyrus.feature_0.7.0.20121218154459.jar
new file mode 100644
index 0000000..83b986e
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.papyrus.feature_0.7.0.20121218154459.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.reporter.feature_0.7.0.20121218154459.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.reporter.feature_0.7.0.20121218154459.jar
new file mode 100644
index 0000000..c59a145
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/features/org.eclipse.emf.refactor.reporter.feature_0.7.0.20121218154459.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/index.html b/org.eclipse.emf.refactor.build.extensions/build/updatesite/index.html
new file mode 100644
index 0000000..7d4bfb8
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/index.html
@@ -0,0 +1,60 @@
+<html>
+<head>
+<title>org.eclipse.emf.refactor.updatesite</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<style>@import url("web/site.css");</style>
+<script type="text/javascript">
+	var returnval = 0;
+	var stylesheet, xmlFile, cache, doc;
+	function init(){
+		// NSCP 7.1+ / Mozilla 1.4.1+ / Safari
+		// Use the standard DOM Level 2 technique, if it is supported
+		if (document.implementation && document.implementation.createDocument) {
+			xmlFile = document.implementation.createDocument("", "", null);
+			stylesheet = document.implementation.createDocument("", "", null);
+			if (xmlFile.load){
+				xmlFile.load("site.xml");
+				stylesheet.load("web/site.xsl");
+			} else {
+				alert("Document could not be loaded by browser.");
+			}
+			xmlFile.addEventListener("load", transform, false);
+			stylesheet.addEventListener("load", transform, false);
+		}
+		//IE 6.0+ solution
+		else if (window.ActiveXObject) {
+			xmlFile = new ActiveXObject("msxml2.DOMDocument.3.0");
+			xmlFile.async = false;
+			xmlFile.load("site.xml");
+			stylesheet = new ActiveXObject("msxml2.FreeThreadedDOMDocument.3.0");
+			stylesheet.async = false;
+			stylesheet.load("web/site.xsl");
+			cache = new ActiveXObject("msxml2.XSLTemplate.3.0");
+			cache.stylesheet = stylesheet;
+			transformData();
+		}
+	}
+	// separate transformation function for IE 6.0+
+	function transformData(){
+		var processor = cache.createProcessor();
+		processor.input = xmlFile;
+		processor.transform();
+		data.innerHTML = processor.output;
+	}
+	// separate transformation function for NSCP 7.1+ and Mozilla 1.4.1+ 
+	function transform(){
+		returnval+=1;
+		if (returnval==2){
+			var processor = new XSLTProcessor();
+			processor.importStylesheet(stylesheet); 
+			doc = processor.transformToDocument(xmlFile);
+			document.getElementById("data").innerHTML = doc.documentElement.innerHTML;
+		}
+	}
+</script>
+</head>
+<body onload="init();">
+<!--[insert static HTML here]-->
+<div id="data"><!-- this is where the transformed data goes --></div>
+</body>
+</html>
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.henshin_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.henshin_0.7.0.jar
new file mode 100644
index 0000000..c52b512
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.henshin_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.ocl_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.ocl_0.7.0.jar
new file mode 100644
index 0000000..97dc94f
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.ocl_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.papyrus_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.papyrus_0.7.0.jar
new file mode 100644
index 0000000..973b1d8
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.papyrus_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.reporter_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.reporter_0.7.0.jar
new file mode 100644
index 0000000..a945be5
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.metrics.reporter_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.refactoring.henshin_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.refactoring.henshin_0.7.0.jar
new file mode 100644
index 0000000..b883713
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.refactoring.henshin_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.refactoring.ocl_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.refactoring.ocl_0.7.0.jar
new file mode 100644
index 0000000..f0c2014
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.refactoring.ocl_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.refactoring.papyrus_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.refactoring.papyrus_0.7.0.jar
new file mode 100644
index 0000000..8814572
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.refactoring.papyrus_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.henshin_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.henshin_0.7.0.jar
new file mode 100644
index 0000000..ce4a5ff
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.henshin_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.ocl_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.ocl_0.7.0.jar
new file mode 100644
index 0000000..29e5633
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.ocl_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.papyrus_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.papyrus_0.7.0.jar
new file mode 100644
index 0000000..75468e4
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.papyrus_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.reporter_0.7.0.jar b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.reporter_0.7.0.jar
new file mode 100644
index 0000000..4a26845
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/plugins/org.eclipse.emf.refactor.smells.reporter_0.7.0.jar
Binary files differ
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/site.xml b/org.eclipse.emf.refactor.build.extensions/build/updatesite/site.xml
new file mode 100644
index 0000000..a877f40
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/site.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+	<feature url="features/org.eclipse.emf.refactor.henshin.feature_0.7.0.20121218154459.jar" id="org.eclipse.emf.refactor.henshin.feature" version="0.7.0.20121218154459">
+    	<category name="EMF Refactor - Specification Extensions (Incubation)"/>
+   	</feature>
+	<feature url="features/org.eclipse.emf.refactor.ocl.feature_0.7.0.20121218154459.jar" id="org.eclipse.emf.refactor.ocl.feature" version="0.7.0.20121218154459">
+	    	<category name="EMF Refactor - Specification Extensions (Incubation)"/>
+	   	</feature>
+	<feature url="features/org.eclipse.emf.refactor.papyrus.feature_0.7.0.20121218154459.jar" id="org.eclipse.emf.refactor.papyrus.feature" version="0.7.0.20121218154459">
+	    	<category name="EMF Refactor - Runtime Extensions (Incubation)"/>
+	   	</feature>
+	<feature url="features/org.eclipse.emf.refactor.reporter.feature_0.7.0.20121218154459.jar" id="org.eclipse.emf.refactor.reporter.feature" version="0.7.0.20121218154459">
+	    	<category name="EMF Refactor - Runtime Extensions (Incubation)"/>
+	   	</feature>
+   	<category-def name="EMF Refactor - Specification Extensions (Incubation)" label="EMF Refactor - Specification Extensions (Incubation)"/>
+	<category-def name="EMF Refactor - Runtime Extensions (Incubation)" label="EMF Refactor - Runtime Extensions (Incubation)"/>
+</site>
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/web/site.css b/org.eclipse.emf.refactor.build.extensions/build/updatesite/web/site.css
new file mode 100644
index 0000000..62c6f9f
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/web/site.css
@@ -0,0 +1,12 @@
+<STYLE type="text/css">
+td.spacer {padding-bottom: 10px; padding-top: 10px;}
+.title { font-family: sans-serif; color: #99AACC;}
+.bodyText { font-family: sans-serif; font-size: 9pt; color:#000000;  }
+.sub-header { font-family: sans-serif; font-style: normal; font-weight: bold; font-size: 9pt; color: white;}
+.log-text {font-family: sans-serif; font-style: normal; font-weight: lighter; font-size: 8pt; color:black;}
+.big-header { font-family: sans-serif; font-style: normal; font-weight: bold; font-size: 9pt; color: white; border-top:10px solid white;}
+.light-row {background:#FFFFFF}
+.dark-row {background:#EEEEFF}
+.header {background:#99AADD}
+#indent {word-wrap : break-word;width :300px;text-indent:10px;}
+</STYLE>
diff --git a/org.eclipse.emf.refactor.build.extensions/build/updatesite/web/site.xsl b/org.eclipse.emf.refactor.build.extensions/build/updatesite/web/site.xsl
new file mode 100644
index 0000000..854bd47
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/updatesite/web/site.xsl
@@ -0,0 +1,214 @@
+<xsl:stylesheet version = '1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' xmlns:msxsl="urn:schemas-microsoft-com:xslt">
+<xsl:output method="html" encoding="UTF-8"/>
+<xsl:key name="cat" match="category" use="@name"/>
+<xsl:template match="/">
+<xsl:for-each select="site">
+	<html>
+	<head>
+	<title>org.eclipse.emf.refactor.updatesite</title>
+	<style>@import url("web/site.css");</style>
+	</head>
+	<body>
+	<h1 class="title">org.eclipse.emf.refactor.updatesite</h1>
+	<p class="bodyText"><xsl:value-of select="description"/></p>
+	<table width="100%" border="0" cellspacing="1" cellpadding="2">
+	<xsl:for-each select="category-def">
+		<xsl:sort select="@label" order="ascending" case-order="upper-first"/>
+		<xsl:sort select="@name" order="ascending" case-order="upper-first"/>
+	<xsl:if test="count(key('cat',@name)) != 0">
+			<tr class="header">
+				<td class="sub-header" width="30%">
+					<xsl:value-of select="@name"/>
+				</td>
+				<td class="sub-header" width="70%">
+					<xsl:value-of select="@label"/>
+				</td>
+			</tr>
+			<xsl:for-each select="key('cat',@name)">
+			<xsl:sort select="ancestor::feature//@version" order="ascending"/>
+			<xsl:sort select="ancestor::feature//@id" order="ascending" case-order="upper-first"/>
+			<tr>
+				<xsl:choose>
+				<xsl:when test="(position() mod 2 = 1)">
+					<xsl:attribute name="class">dark-row</xsl:attribute>
+				</xsl:when>
+				<xsl:otherwise>
+					<xsl:attribute name="class">light-row</xsl:attribute>
+				</xsl:otherwise>
+				</xsl:choose>
+				<td class="log-text" id="indent">
+						<xsl:choose>
+						<xsl:when test="ancestor::feature//@label">
+							<a href="{ancestor::feature//@url}"><xsl:value-of select="ancestor::feature//@label"/></a>
+							<br/>
+							<div id="indent">
+							(<xsl:value-of select="ancestor::feature//@id"/> - <xsl:value-of select="ancestor::feature//@version"/>)
+							</div>
+						</xsl:when>
+						<xsl:otherwise>
+						<a href="{ancestor::feature//@url}"><xsl:value-of select="ancestor::feature//@id"/> - <xsl:value-of select="ancestor::feature//@version"/></a>
+						</xsl:otherwise>
+						</xsl:choose>
+						<br />
+				</td>
+				<td>
+					<table>
+						<xsl:if test="ancestor::feature//@os">
+							<tr><td class="log-text" id="indent">Operating Systems:</td>
+							<td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@os"/></td>
+							</tr>
+						</xsl:if>
+						<xsl:if test="ancestor::feature//@ws">
+							<tr><td class="log-text" id="indent">Windows Systems:</td>
+							<td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@ws"/></td>
+							</tr>
+						</xsl:if>
+						<xsl:if test="ancestor::feature//@nl">
+							<tr><td class="log-text" id="indent">Languages:</td>
+							<td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@nl"/></td>
+							</tr>
+						</xsl:if>
+						<xsl:if test="ancestor::feature//@arch">
+							<tr><td class="log-text" id="indent">Architecture:</td>
+							<td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@arch"/></td>
+							</tr>
+						</xsl:if>
+					</table>
+				</td>
+			</tr>
+			</xsl:for-each>
+			<tr><td class="spacer"><br/></td><td class="spacer"><br/></td></tr>
+		</xsl:if>
+	</xsl:for-each>
+	<xsl:if test="count(feature)  &gt; count(feature/category)">
+	<tr class="header">
+		<td class="sub-header" colspan="2">
+		Uncategorized
+		</td>
+	</tr>
+	</xsl:if>
+	<xsl:choose>
+	<xsl:when test="function-available('msxsl:node-set')">
+	   <xsl:variable name="rtf-nodes">
+		<xsl:for-each select="feature[not(category)]">
+			<xsl:sort select="@id" order="ascending" case-order="upper-first"/>
+			<xsl:sort select="@version" order="ascending" />
+			<xsl:value-of select="."/>
+			<xsl:copy-of select="." />
+		</xsl:for-each>
+	   </xsl:variable>
+	   <xsl:variable name="myNodeSet" select="msxsl:node-set($rtf-nodes)/*"/>
+	<xsl:for-each select="$myNodeSet">
+	<tr>
+		<xsl:choose>
+		<xsl:when test="position() mod 2 = 1">
+		<xsl:attribute name="class">dark-row</xsl:attribute>
+		</xsl:when>
+		<xsl:otherwise>
+		<xsl:attribute name="class">light-row</xsl:attribute>
+		</xsl:otherwise>
+		</xsl:choose>
+		<td class="log-text" id="indent">
+			<xsl:choose>
+			<xsl:when test="@label">
+				<a href="{@url}"><xsl:value-of select="@label"/></a>
+				<br />
+				<div id="indent">
+				(<xsl:value-of select="@id"/> - <xsl:value-of select="@version"/>)
+				</div>
+			</xsl:when>
+			<xsl:otherwise>
+				<a href="{@url}"><xsl:value-of select="@id"/> - <xsl:value-of select="@version"/></a>
+			</xsl:otherwise>
+			</xsl:choose>
+			<br /><br />
+		</td>
+		<td>
+			<table>
+				<xsl:if test="@os">
+					<tr><td class="log-text" id="indent">Operating Systems:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@os"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@ws">
+					<tr><td class="log-text" id="indent">Windows Systems:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@ws"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@nl">
+					<tr><td class="log-text" id="indent">Languages:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@nl"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@arch">
+					<tr><td class="log-text" id="indent">Architecture:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@arch"/></td>
+					</tr>
+				</xsl:if>
+			</table>
+		</td>
+	</tr>
+	</xsl:for-each>
+	</xsl:when>
+	<xsl:otherwise>
+	<xsl:for-each select="feature[not(category)]">
+	<xsl:sort select="@id" order="ascending" case-order="upper-first"/>
+	<xsl:sort select="@version" order="ascending" />
+	<tr>
+		<xsl:choose>
+		<xsl:when test="count(preceding-sibling::feature[not(category)]) mod 2 = 1">
+		<xsl:attribute name="class">dark-row</xsl:attribute>
+		</xsl:when>
+		<xsl:otherwise>
+		<xsl:attribute name="class">light-row</xsl:attribute>
+		</xsl:otherwise>
+		</xsl:choose>
+		<td class="log-text" id="indent">
+			<xsl:choose>
+			<xsl:when test="@label">
+				<a href="{@url}"><xsl:value-of select="@label"/></a>
+				<br />
+				<div id="indent">
+				(<xsl:value-of select="@id"/> - <xsl:value-of select="@version"/>)
+				</div>
+			</xsl:when>
+			<xsl:otherwise>
+				<a href="{@url}"><xsl:value-of select="@id"/> - <xsl:value-of select="@version"/></a>
+			</xsl:otherwise>
+			</xsl:choose>
+			<br /><br />
+		</td>
+		<td>
+			<table>
+				<xsl:if test="@os">
+					<tr><td class="log-text" id="indent">Operating Systems:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@os"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@ws">
+					<tr><td class="log-text" id="indent">Windows Systems:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@ws"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@nl">
+					<tr><td class="log-text" id="indent">Languages:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@nl"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@arch">
+					<tr><td class="log-text" id="indent">Architecture:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@arch"/></td>
+					</tr>
+				</xsl:if>
+			</table>
+		</td>
+	</tr>
+	</xsl:for-each>
+	</xsl:otherwise>
+	</xsl:choose>
+	</table>
+	</body>
+	</html>
+</xsl:for-each>
+</xsl:template>
+</xsl:stylesheet>
diff --git a/org.eclipse.emf.refactor.build.extensions/build/web-eclipse/downloads.php b/org.eclipse.emf.refactor.build.extensions/build/web-eclipse/downloads.php
new file mode 100644
index 0000000..8334b1e
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/web-eclipse/downloads.php
@@ -0,0 +1,39 @@
+<?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 		= "EMF Refactor - Downloads";
+	$pageKeywords	= "EMF, Refactor, model refactoring, refactoring";
+	$pageAuthor		= "Thorsten Arendt";
+	
+	$html = <<<EOHTML
+
+<div id="maincontent">
+
+	<div id="midcolumn">
+		<h1>$pageTitle</h1>
+		<p>
+	<h2>Releases</h2>
+		
+<h3>Version 0.7.0</h3>
+<ul class="midlist">
+    <li><a href="downloads/refactor-extensions-0.7.0.20121218154459.jar">refactor-extensions-0.7.0.20121218154459.jar</a> (released Dez 18, 2012 15:47)</li>
+</ul>
+	</div>
+	
+	<div id="rightcolumn">
+		<div class="sideitem">	
+   		<h6>Incubation</h6>
+		<p>This component is currently in its <a href="http://www.eclipse.org/projects/dev_process/validation-phase.php">Validation (Incubation) Phase</a>.</p>
+   			<div align="center"><a href="/projects/what-is-incubation.php"><img align="center" src="/images/egg-incubation.png"  border="0" alt="Incubation" /></a></div>
+ 		</div>
+		
+	</div>
+		
+</div>
+
+
+EOHTML;
+
+
+	# Generate the web page
+	$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
+?>
\ No newline at end of file
diff --git a/org.eclipse.emf.refactor.build.extensions/build/web-eclipse/downloads_1.php b/org.eclipse.emf.refactor.build.extensions/build/web-eclipse/downloads_1.php
new file mode 100644
index 0000000..425e6f8
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/web-eclipse/downloads_1.php
@@ -0,0 +1,19 @@
+<?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 		= "EMF Refactor - Downloads";
+	$pageKeywords	= "EMF, Refactor, model refactoring, refactoring";
+	$pageAuthor		= "Thorsten Arendt";
+	
+	$html = <<<EOHTML
+
+<div id="maincontent">
+
+	<div id="midcolumn">
+		<h1>$pageTitle</h1>
+		<p>
+	<h2>Releases</h2>
+		
+<h3>Version 0.7.0</h3>
+<ul class="midlist">
+    <li><a href="downloads/refactor-extensions-0.7.0.20121218154459.jar">refactor-extensions-0.7.0.20121218154459.jar</a> (released Dez 18, 2012 15:47)</li>
+</ul>
diff --git a/org.eclipse.emf.refactor.build.extensions/build/web-eclipse/downloads_2.php b/org.eclipse.emf.refactor.build.extensions/build/web-eclipse/downloads_2.php
new file mode 100644
index 0000000..496bf87
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build/web-eclipse/downloads_2.php
@@ -0,0 +1,20 @@
+	</div>
+	
+	<div id="rightcolumn">
+		<div class="sideitem">	
+   		<h6>Incubation</h6>
+		<p>This component is currently in its <a href="http://www.eclipse.org/projects/dev_process/validation-phase.php">Validation (Incubation) Phase</a>.</p>
+   			<div align="center"><a href="/projects/what-is-incubation.php"><img align="center" src="/images/egg-incubation.png"  border="0" alt="Incubation" /></a></div>
+ 		</div>
+		
+	</div>
+		
+</div>
+
+
+EOHTML;
+
+
+	# Generate the web page
+	$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
+?>
\ No newline at end of file
diff --git a/org.eclipse.emf.refactor.build.extensions/build_1_features.xml b/org.eclipse.emf.refactor.build.extensions/build_1_features.xml
new file mode 100644
index 0000000..ae298a0
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build_1_features.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+IMPORTANT: Run it in the same JRE as the workspace. 
+Run AS -> ANT Build.. -> JRE -> Run in the same JRE as the workspace.
+
+-->
+
+<project default="feature.export" name="feature.generate" basedir=".">
+
+	<property name="home" location=""/>
+	<property name="builddirectory" location="build"/>
+	<property name="qualifierfile" location="qualifier.txt"/>
+	
+	<!-- delete directory 'build/' -->	
+	<target name="clean">
+	   <delete dir="${builddirectory}"/>
+	</target>
+
+	<!-- remember time stamp in file 'qualifier.txt' -->	
+	<target name="init" depends="clean">
+		<tstamp>
+			<format property="qualifier" pattern="yyyyMMddHHmmss" />
+		</tstamp>
+		<echo file="${qualifierfile}">qualifier=${qualifier}</echo>
+	</target>
+	
+	<!-- export 'basic' feature to 'build/source/' -->	
+	<target name="feature.export" depends="init">
+		<pde.exportFeatures  
+			destination="${builddirectory}/source" 
+			exportSource="false" 
+			exportType="directory" 
+			qualifier="${qualifier}"
+			features="org.eclipse.emf.refactor.henshin.feature,org.eclipse.emf.refactor.ocl.feature,org.eclipse.emf.refactor.papyrus.feature,org.eclipse.emf.refactor.reporter.feature" useJARFormat="true"/>
+	</target>
+	
+</project>
diff --git a/org.eclipse.emf.refactor.build.extensions/build_2_updatesite.xml b/org.eclipse.emf.refactor.build.extensions/build_2_updatesite.xml
new file mode 100644
index 0000000..6ac8810
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build_2_updatesite.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+IMPORTANT: Run it in the same JRE as the workspace. 
+Run AS -> ANT Build.. -> JRE -> Run in the same JRE as the workspace.
+
+-->
+
+<project default="feature.publish" name="updatesite.build" basedir=".">
+
+	<property name="home" location=""/>
+	<property name="builddirectory" location="build"/>
+	<property file="qualifier.txt" prefix="input"/>
+	<property name="resourcesdirectory" location="resources"/>
+	<property name="updatesite" value="updatesite"/>
+	<property name="releaseno" value="0.7.0"/>
+	
+	<!-- Read qualifier from file: -->
+	<target name="init">
+		<property name="qualifier" value="${input.qualifier}"/>
+	</target>    		
+
+	<!-- Generate update site: -->
+	<target name="site.add" depends="init">
+		<copy todir="${builddirectory}/${updatesite}/" overwrite="true">
+		    <fileset dir="${resourcesdirectory}/site">
+ 		   	  <exclude name="site.xml"/>
+		    </fileset>
+	    </copy>
+<echo file="${builddirectory}/${updatesite}/site.xml" append="false">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;site&gt;
+	&lt;feature url="features/org.eclipse.emf.refactor.henshin.feature_${releaseno}.${qualifier}.jar" id="org.eclipse.emf.refactor.henshin.feature" version="${releaseno}.${qualifier}"&gt;
+    	&lt;category name="EMF Refactor - Specification Extensions (Incubation)"/&gt;
+   	&lt;/feature&gt;
+	&lt;feature url="features/org.eclipse.emf.refactor.ocl.feature_${releaseno}.${qualifier}.jar" id="org.eclipse.emf.refactor.ocl.feature" version="${releaseno}.${qualifier}"&gt;
+	    	&lt;category name="EMF Refactor - Specification Extensions (Incubation)"/&gt;
+	   	&lt;/feature&gt;
+	&lt;feature url="features/org.eclipse.emf.refactor.papyrus.feature_${releaseno}.${qualifier}.jar" id="org.eclipse.emf.refactor.papyrus.feature" version="${releaseno}.${qualifier}"&gt;
+	    	&lt;category name="EMF Refactor - Runtime Extensions (Incubation)"/&gt;
+	   	&lt;/feature&gt;
+	&lt;feature url="features/org.eclipse.emf.refactor.reporter.feature_${releaseno}.${qualifier}.jar" id="org.eclipse.emf.refactor.reporter.feature" version="${releaseno}.${qualifier}"&gt;
+	    	&lt;category name="EMF Refactor - Runtime Extensions (Incubation)"/&gt;
+	   	&lt;/feature&gt;
+   	&lt;category-def name="EMF Refactor - Specification Extensions (Incubation)" label="EMF Refactor - Specification Extensions (Incubation)"/&gt;
+	&lt;category-def name="EMF Refactor - Runtime Extensions (Incubation)" label="EMF Refactor - Runtime Extensions (Incubation)"/&gt;
+&lt;/site&gt;
+</echo>
+	</target>    		
+
+	<!-- Publish update site: -->
+	<!-- target name="feature.publish" depends="site.add" -->	
+	<!-- categoryversion="${releaseno}.${qualifier}" -->
+	<target name="feature.publish" depends="site.add">	
+		<eclipse.publish.featuresAndBundles
+			 site="file:${builddirectory}/${updatesite}/site.xml"			
+			 repository="file:${builddirectory}/${updatesite}" 			  
+			 compress="true">
+		     	<features dir="${builddirectory}/source/features/" includes="*.jar"/>
+		     	<bundles dir="${builddirectory}/source/plugins/" includes="*.jar"/>
+		</eclipse.publish.featuresAndBundles>
+		<zip destfile="${builddirectory}/refactor-extensions-${releaseno}.${qualifier}.jar">
+			<fileset dir="${builddirectory}/${updatesite}/"/>
+		</zip>
+	</target>
+	
+</project>
diff --git a/org.eclipse.emf.refactor.build.extensions/build_3_website.xml b/org.eclipse.emf.refactor.build.extensions/build_3_website.xml
new file mode 100644
index 0000000..12405c6
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/build_3_website.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+IMPORTANT: Run it in the same JRE as the workspace. 
+Run AS -> ANT Build.. -> JRE -> Run in the same JRE as the workspace.
+
+-->
+
+<project default="downloadpage.generate" name="downloadpage.generate" basedir=".">
+
+	<property name="home" location=""/>
+	<property name="builddirectory" location="build"/>
+	<property file="qualifier.txt" prefix="input"/>
+	<property name="releaseno" value="0.7.0"/>  
+	
+	<!-- Read qualifier from file: -->
+	<target name="init">
+		<property name="qualifier" value="${input.qualifier}"/>
+	</target>    
+
+	<!-- Publish download page: -->
+	<target name="downloadpage.generate" depends="init">
+		<tstamp>
+			<format property="timestamp" pattern="MMM dd, yyyy HH:mm" />
+		</tstamp>
+		
+		<!-- Copy release: -->
+		<delete failonerror="false">
+			<fileset dir="../../emf-refactor/downloads/" includes="refactor-extensions-${releaseno}.*.jar"/>
+		</delete>
+		<copy todir="../../emf-refactor/downloads/">
+		    <fileset file="${builddirectory}/refactor-extensions-${releaseno}.${qualifier}.jar"/>
+	    </copy>
+		
+		<!-- Generate download file: -->
+		<copy todir="${builddirectory}/web-eclipse">
+		    <fileset dir="resources/web-eclipse" includes="*"/>
+	    </copy>
+<echo file="${builddirectory}/web-eclipse/downloads_1.php" append="true">
+&lt;h3&gt;Version ${releaseno}&lt;/h3&gt;
+&lt;ul class="midlist"&gt;
+    &lt;li&gt;&lt;a href="downloads/refactor-extensions-${releaseno}.${qualifier}.jar"&gt;refactor-extensions-${releaseno}.${qualifier}.jar&lt;/a&gt; (released ${timestamp})&lt;/li&gt;
+&lt;/ul&gt;
+</echo>
+		<concat destfile="${builddirectory}/web-eclipse/downloads.php">
+		    <fileset dir="${builddirectory}/web-eclipse" includes="downloads_*.php"/>
+		</concat>
+		
+		<!-- Update Download-File on website: -->
+		<!-- copy todir="../../emf-refactor/" overwrite="true">
+		    <fileset file="${builddirectory}/web-eclipse/downloads.php"/>
+	    </copy -->
+		
+	</target>    		
+
+	
+</project>
diff --git a/org.eclipse.emf.refactor.build.extensions/clean.xml b/org.eclipse.emf.refactor.build.extensions/clean.xml
new file mode 100644
index 0000000..1dff4fe
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/clean.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+IMPORTANT: Run it in the same JRE as the workspace. 
+Run AS -> ANT Build.. -> JRE -> Run in the same JRE as the workspace.
+
+-->
+
+<project default="cleanup" name="clean" basedir=".">
+
+	<property name="home" location=""/>
+	<property name="builddirectory" location="build"/>
+
+	<!-- Cleanup: -->
+	<target name="cleanup">
+		<delete includeEmptyDirs="true" quiet="true">
+			<fileset dir="${builddirectory}/updatesite/"/>
+			<fileset dir="${builddirectory}/source/"/>
+			<fileset dir="${builddirectory}/web-eclipse/"/>
+		</delete>
+	</target>
+	
+</project>
diff --git a/org.eclipse.emf.refactor.build.extensions/qualifier.txt b/org.eclipse.emf.refactor.build.extensions/qualifier.txt
new file mode 100644
index 0000000..08c50ad
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/qualifier.txt
@@ -0,0 +1 @@
+qualifier=20121218154459
\ No newline at end of file
diff --git a/org.eclipse.emf.refactor.build.extensions/resources/site/index.html b/org.eclipse.emf.refactor.build.extensions/resources/site/index.html
new file mode 100644
index 0000000..7d4bfb8
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/resources/site/index.html
@@ -0,0 +1,60 @@
+<html>
+<head>
+<title>org.eclipse.emf.refactor.updatesite</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<style>@import url("web/site.css");</style>
+<script type="text/javascript">
+	var returnval = 0;
+	var stylesheet, xmlFile, cache, doc;
+	function init(){
+		// NSCP 7.1+ / Mozilla 1.4.1+ / Safari
+		// Use the standard DOM Level 2 technique, if it is supported
+		if (document.implementation && document.implementation.createDocument) {
+			xmlFile = document.implementation.createDocument("", "", null);
+			stylesheet = document.implementation.createDocument("", "", null);
+			if (xmlFile.load){
+				xmlFile.load("site.xml");
+				stylesheet.load("web/site.xsl");
+			} else {
+				alert("Document could not be loaded by browser.");
+			}
+			xmlFile.addEventListener("load", transform, false);
+			stylesheet.addEventListener("load", transform, false);
+		}
+		//IE 6.0+ solution
+		else if (window.ActiveXObject) {
+			xmlFile = new ActiveXObject("msxml2.DOMDocument.3.0");
+			xmlFile.async = false;
+			xmlFile.load("site.xml");
+			stylesheet = new ActiveXObject("msxml2.FreeThreadedDOMDocument.3.0");
+			stylesheet.async = false;
+			stylesheet.load("web/site.xsl");
+			cache = new ActiveXObject("msxml2.XSLTemplate.3.0");
+			cache.stylesheet = stylesheet;
+			transformData();
+		}
+	}
+	// separate transformation function for IE 6.0+
+	function transformData(){
+		var processor = cache.createProcessor();
+		processor.input = xmlFile;
+		processor.transform();
+		data.innerHTML = processor.output;
+	}
+	// separate transformation function for NSCP 7.1+ and Mozilla 1.4.1+ 
+	function transform(){
+		returnval+=1;
+		if (returnval==2){
+			var processor = new XSLTProcessor();
+			processor.importStylesheet(stylesheet); 
+			doc = processor.transformToDocument(xmlFile);
+			document.getElementById("data").innerHTML = doc.documentElement.innerHTML;
+		}
+	}
+</script>
+</head>
+<body onload="init();">
+<!--[insert static HTML here]-->
+<div id="data"><!-- this is where the transformed data goes --></div>
+</body>
+</html>
diff --git a/org.eclipse.emf.refactor.build.extensions/resources/site/site.xml b/org.eclipse.emf.refactor.build.extensions/resources/site/site.xml
new file mode 100644
index 0000000..fc64996
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/resources/site/site.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+   <feature url="features/org.eclipse.emf.refactor.generator.feature_0.6.0.qualifier.jar" id="org.eclipse.emf.refactor.generator.feature" version="0.6.0.qualifier">
+      <category name="org.eclipse.emf.refactor.BASIC"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.refactor.runtime.feature_0.6.0.qualifier.jar" id="org.eclipse.emf.refactor.runtime.feature" version="0.6.0.qualifier">
+      <category name="org.eclipse.emf.refactor.BASIC"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.refactor.henshin.feature_0.6.0.qualifier.jar" id="org.eclipse.emf.refactor.henshin.feature" version="0.6.0.qualifier">
+      <category name="org.eclipse.emf.refactor.EXTENSION"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.refactor.example.feature_0.6.0.qualifier.jar" id="org.eclipse.emf.refactor.example.feature" version="0.6.0.qualifier">
+      <category name="org.eclipse.emf.refactor.EXTENSION"/>
+   </feature>
+   <category-def name="org.eclipse.emf.refactor.BASIC" label="Emf Refactor">
+      <description>
+         Emf Refactor
+      </description>
+   </category-def>
+   <category-def name="org.eclipse.emf.refactor.EXTENSION" label="EMF Refactor Extensions">
+      <description>
+         EMF Refactor Extensions
+      </description>
+   </category-def>
+</site>
diff --git a/org.eclipse.emf.refactor.build.extensions/resources/site/web/site.css b/org.eclipse.emf.refactor.build.extensions/resources/site/web/site.css
new file mode 100644
index 0000000..62c6f9f
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/resources/site/web/site.css
@@ -0,0 +1,12 @@
+<STYLE type="text/css">
+td.spacer {padding-bottom: 10px; padding-top: 10px;}
+.title { font-family: sans-serif; color: #99AACC;}
+.bodyText { font-family: sans-serif; font-size: 9pt; color:#000000;  }
+.sub-header { font-family: sans-serif; font-style: normal; font-weight: bold; font-size: 9pt; color: white;}
+.log-text {font-family: sans-serif; font-style: normal; font-weight: lighter; font-size: 8pt; color:black;}
+.big-header { font-family: sans-serif; font-style: normal; font-weight: bold; font-size: 9pt; color: white; border-top:10px solid white;}
+.light-row {background:#FFFFFF}
+.dark-row {background:#EEEEFF}
+.header {background:#99AADD}
+#indent {word-wrap : break-word;width :300px;text-indent:10px;}
+</STYLE>
diff --git a/org.eclipse.emf.refactor.build.extensions/resources/site/web/site.xsl b/org.eclipse.emf.refactor.build.extensions/resources/site/web/site.xsl
new file mode 100644
index 0000000..854bd47
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/resources/site/web/site.xsl
@@ -0,0 +1,214 @@
+<xsl:stylesheet version = '1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' xmlns:msxsl="urn:schemas-microsoft-com:xslt">
+<xsl:output method="html" encoding="UTF-8"/>
+<xsl:key name="cat" match="category" use="@name"/>
+<xsl:template match="/">
+<xsl:for-each select="site">
+	<html>
+	<head>
+	<title>org.eclipse.emf.refactor.updatesite</title>
+	<style>@import url("web/site.css");</style>
+	</head>
+	<body>
+	<h1 class="title">org.eclipse.emf.refactor.updatesite</h1>
+	<p class="bodyText"><xsl:value-of select="description"/></p>
+	<table width="100%" border="0" cellspacing="1" cellpadding="2">
+	<xsl:for-each select="category-def">
+		<xsl:sort select="@label" order="ascending" case-order="upper-first"/>
+		<xsl:sort select="@name" order="ascending" case-order="upper-first"/>
+	<xsl:if test="count(key('cat',@name)) != 0">
+			<tr class="header">
+				<td class="sub-header" width="30%">
+					<xsl:value-of select="@name"/>
+				</td>
+				<td class="sub-header" width="70%">
+					<xsl:value-of select="@label"/>
+				</td>
+			</tr>
+			<xsl:for-each select="key('cat',@name)">
+			<xsl:sort select="ancestor::feature//@version" order="ascending"/>
+			<xsl:sort select="ancestor::feature//@id" order="ascending" case-order="upper-first"/>
+			<tr>
+				<xsl:choose>
+				<xsl:when test="(position() mod 2 = 1)">
+					<xsl:attribute name="class">dark-row</xsl:attribute>
+				</xsl:when>
+				<xsl:otherwise>
+					<xsl:attribute name="class">light-row</xsl:attribute>
+				</xsl:otherwise>
+				</xsl:choose>
+				<td class="log-text" id="indent">
+						<xsl:choose>
+						<xsl:when test="ancestor::feature//@label">
+							<a href="{ancestor::feature//@url}"><xsl:value-of select="ancestor::feature//@label"/></a>
+							<br/>
+							<div id="indent">
+							(<xsl:value-of select="ancestor::feature//@id"/> - <xsl:value-of select="ancestor::feature//@version"/>)
+							</div>
+						</xsl:when>
+						<xsl:otherwise>
+						<a href="{ancestor::feature//@url}"><xsl:value-of select="ancestor::feature//@id"/> - <xsl:value-of select="ancestor::feature//@version"/></a>
+						</xsl:otherwise>
+						</xsl:choose>
+						<br />
+				</td>
+				<td>
+					<table>
+						<xsl:if test="ancestor::feature//@os">
+							<tr><td class="log-text" id="indent">Operating Systems:</td>
+							<td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@os"/></td>
+							</tr>
+						</xsl:if>
+						<xsl:if test="ancestor::feature//@ws">
+							<tr><td class="log-text" id="indent">Windows Systems:</td>
+							<td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@ws"/></td>
+							</tr>
+						</xsl:if>
+						<xsl:if test="ancestor::feature//@nl">
+							<tr><td class="log-text" id="indent">Languages:</td>
+							<td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@nl"/></td>
+							</tr>
+						</xsl:if>
+						<xsl:if test="ancestor::feature//@arch">
+							<tr><td class="log-text" id="indent">Architecture:</td>
+							<td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@arch"/></td>
+							</tr>
+						</xsl:if>
+					</table>
+				</td>
+			</tr>
+			</xsl:for-each>
+			<tr><td class="spacer"><br/></td><td class="spacer"><br/></td></tr>
+		</xsl:if>
+	</xsl:for-each>
+	<xsl:if test="count(feature)  &gt; count(feature/category)">
+	<tr class="header">
+		<td class="sub-header" colspan="2">
+		Uncategorized
+		</td>
+	</tr>
+	</xsl:if>
+	<xsl:choose>
+	<xsl:when test="function-available('msxsl:node-set')">
+	   <xsl:variable name="rtf-nodes">
+		<xsl:for-each select="feature[not(category)]">
+			<xsl:sort select="@id" order="ascending" case-order="upper-first"/>
+			<xsl:sort select="@version" order="ascending" />
+			<xsl:value-of select="."/>
+			<xsl:copy-of select="." />
+		</xsl:for-each>
+	   </xsl:variable>
+	   <xsl:variable name="myNodeSet" select="msxsl:node-set($rtf-nodes)/*"/>
+	<xsl:for-each select="$myNodeSet">
+	<tr>
+		<xsl:choose>
+		<xsl:when test="position() mod 2 = 1">
+		<xsl:attribute name="class">dark-row</xsl:attribute>
+		</xsl:when>
+		<xsl:otherwise>
+		<xsl:attribute name="class">light-row</xsl:attribute>
+		</xsl:otherwise>
+		</xsl:choose>
+		<td class="log-text" id="indent">
+			<xsl:choose>
+			<xsl:when test="@label">
+				<a href="{@url}"><xsl:value-of select="@label"/></a>
+				<br />
+				<div id="indent">
+				(<xsl:value-of select="@id"/> - <xsl:value-of select="@version"/>)
+				</div>
+			</xsl:when>
+			<xsl:otherwise>
+				<a href="{@url}"><xsl:value-of select="@id"/> - <xsl:value-of select="@version"/></a>
+			</xsl:otherwise>
+			</xsl:choose>
+			<br /><br />
+		</td>
+		<td>
+			<table>
+				<xsl:if test="@os">
+					<tr><td class="log-text" id="indent">Operating Systems:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@os"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@ws">
+					<tr><td class="log-text" id="indent">Windows Systems:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@ws"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@nl">
+					<tr><td class="log-text" id="indent">Languages:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@nl"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@arch">
+					<tr><td class="log-text" id="indent">Architecture:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@arch"/></td>
+					</tr>
+				</xsl:if>
+			</table>
+		</td>
+	</tr>
+	</xsl:for-each>
+	</xsl:when>
+	<xsl:otherwise>
+	<xsl:for-each select="feature[not(category)]">
+	<xsl:sort select="@id" order="ascending" case-order="upper-first"/>
+	<xsl:sort select="@version" order="ascending" />
+	<tr>
+		<xsl:choose>
+		<xsl:when test="count(preceding-sibling::feature[not(category)]) mod 2 = 1">
+		<xsl:attribute name="class">dark-row</xsl:attribute>
+		</xsl:when>
+		<xsl:otherwise>
+		<xsl:attribute name="class">light-row</xsl:attribute>
+		</xsl:otherwise>
+		</xsl:choose>
+		<td class="log-text" id="indent">
+			<xsl:choose>
+			<xsl:when test="@label">
+				<a href="{@url}"><xsl:value-of select="@label"/></a>
+				<br />
+				<div id="indent">
+				(<xsl:value-of select="@id"/> - <xsl:value-of select="@version"/>)
+				</div>
+			</xsl:when>
+			<xsl:otherwise>
+				<a href="{@url}"><xsl:value-of select="@id"/> - <xsl:value-of select="@version"/></a>
+			</xsl:otherwise>
+			</xsl:choose>
+			<br /><br />
+		</td>
+		<td>
+			<table>
+				<xsl:if test="@os">
+					<tr><td class="log-text" id="indent">Operating Systems:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@os"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@ws">
+					<tr><td class="log-text" id="indent">Windows Systems:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@ws"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@nl">
+					<tr><td class="log-text" id="indent">Languages:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@nl"/></td>
+					</tr>
+				</xsl:if>
+				<xsl:if test="@arch">
+					<tr><td class="log-text" id="indent">Architecture:</td>
+					<td class="log-text" id="indent"><xsl:value-of select="@arch"/></td>
+					</tr>
+				</xsl:if>
+			</table>
+		</td>
+	</tr>
+	</xsl:for-each>
+	</xsl:otherwise>
+	</xsl:choose>
+	</table>
+	</body>
+	</html>
+</xsl:for-each>
+</xsl:template>
+</xsl:stylesheet>
diff --git a/org.eclipse.emf.refactor.build.extensions/resources/web-eclipse/downloads_1.php b/org.eclipse.emf.refactor.build.extensions/resources/web-eclipse/downloads_1.php
new file mode 100644
index 0000000..268fba0
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/resources/web-eclipse/downloads_1.php
@@ -0,0 +1,15 @@
+<?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 		= "EMF Refactor - Downloads";
+	$pageKeywords	= "EMF, Refactor, model refactoring, refactoring";
+	$pageAuthor		= "Thorsten Arendt";
+	
+	$html = <<<EOHTML
+
+<div id="maincontent">
+
+	<div id="midcolumn">
+		<h1>$pageTitle</h1>
+		<p>
+	<h2>Releases</h2>
+		
\ No newline at end of file
diff --git a/org.eclipse.emf.refactor.build.extensions/resources/web-eclipse/downloads_2.php b/org.eclipse.emf.refactor.build.extensions/resources/web-eclipse/downloads_2.php
new file mode 100644
index 0000000..496bf87
--- /dev/null
+++ b/org.eclipse.emf.refactor.build.extensions/resources/web-eclipse/downloads_2.php
@@ -0,0 +1,20 @@
+	</div>
+	
+	<div id="rightcolumn">
+		<div class="sideitem">	
+   		<h6>Incubation</h6>
+		<p>This component is currently in its <a href="http://www.eclipse.org/projects/dev_process/validation-phase.php">Validation (Incubation) Phase</a>.</p>
+   			<div align="center"><a href="/projects/what-is-incubation.php"><img align="center" src="/images/egg-incubation.png"  border="0" alt="Incubation" /></a></div>
+ 		</div>
+		
+	</div>
+		
+</div>
+
+
+EOHTML;
+
+
+	# Generate the web page
+	$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
+?>
\ No newline at end of file
