You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by wi...@apache.org on 2013/02/19 13:52:00 UTC

[27/52] [partial] code contribution, initial import of relevant modules of LMF-3.0.0-SNAPSHOT based on revision 4bf944319368 of the default branch at https://code.google.com/p/lmf/

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/java/org/apache/marmotta/ldclient/test/youtube/TestYoutubeProvider.java
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/java/org/apache/marmotta/ldclient/test/youtube/TestYoutubeProvider.java b/ldclient/ldclient-provider-youtube/src/test/java/org/apache/marmotta/ldclient/test/youtube/TestYoutubeProvider.java
new file mode 100644
index 0000000..70d166a
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/java/org/apache/marmotta/ldclient/test/youtube/TestYoutubeProvider.java
@@ -0,0 +1,188 @@
+/*
+ * Copyright (c) 2013 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+
+package org.apache.marmotta.ldclient.test.youtube;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.marmotta.ldclient.api.ldclient.LDClientService;
+import org.apache.marmotta.ldclient.model.ClientResponse;
+import org.apache.marmotta.ldclient.services.ldclient.LDClient;
+import org.apache.marmotta.ldclient.test.helper.TestLDClient;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.openrdf.query.BooleanQuery;
+import org.openrdf.query.QueryLanguage;
+import org.openrdf.repository.RepositoryConnection;
+import org.openrdf.rio.RDFFormat;
+import org.openrdf.rio.Rio;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.InputStream;
+import java.io.StringWriter;
+
+/**
+ * Add file description here!
+ * <p/>
+ * Author: Sebastian Schaffert (sschaffert@apache.org)
+ */
+public class TestYoutubeProvider {
+
+    private LDClientService ldclient;
+
+    private static Logger log = LoggerFactory.getLogger(TestYoutubeProvider.class);
+
+    @Before
+    public void setupClient() {
+        ldclient = new TestLDClient(new LDClient());
+    }
+
+    @After
+    public void shutdownClient() {
+        ldclient.shutdown();
+    }
+
+    /**
+     * This method tests accessing the Youtube Video service via the GData API.
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testVideo() throws Exception {
+
+        String uriLMFVideo = "http://youtu.be/_3BmNcHW4Ew";
+        ClientResponse respLMFVideo = ldclient.retrieveResource(uriLMFVideo);
+
+        RepositoryConnection conLMFVideo = respLMFVideo.getTriples().getConnection();
+        conLMFVideo.begin();
+        Assert.assertTrue(conLMFVideo.size() > 0);
+
+        // run a SPARQL test to see if the returned data is correct
+        InputStream sparql = this.getClass().getResourceAsStream("youtube-lmf-video.sparql");
+        BooleanQuery testLabel = conLMFVideo.prepareBooleanQuery(QueryLanguage.SPARQL, IOUtils.toString(sparql));
+        Assert.assertTrue("SPARQL test query failed", testLabel.evaluate());
+
+        if(log.isDebugEnabled()) {
+            StringWriter out = new StringWriter();
+            conLMFVideo.export(Rio.createWriter(RDFFormat.TURTLE, out));
+            log.debug("DATA:");
+            log.debug(out.toString());
+        }
+
+        conLMFVideo.commit();
+        conLMFVideo.close();
+    }
+
+    /**
+     * This method tests accessing the Youtube Video service via the GData API.
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testVideoPage() throws Exception {
+
+        String uriLMFVideo = "http://www.youtube.com/watch?v=_3BmNcHW4Ew";
+        ClientResponse respLMFVideo = ldclient.retrieveResource(uriLMFVideo);
+
+        RepositoryConnection conLMFVideo = respLMFVideo.getTriples().getConnection();
+        conLMFVideo.begin();
+        Assert.assertTrue(conLMFVideo.size() > 0);
+
+        // run a SPARQL test to see if the returned data is correct
+        InputStream sparql = this.getClass().getResourceAsStream("youtube-lmf-video-page.sparql");
+        BooleanQuery testLabel = conLMFVideo.prepareBooleanQuery(QueryLanguage.SPARQL, IOUtils.toString(sparql));
+        Assert.assertTrue("SPARQL test query failed", testLabel.evaluate());
+
+        if(log.isDebugEnabled()) {
+            StringWriter out = new StringWriter();
+            conLMFVideo.export(Rio.createWriter(RDFFormat.TURTLE, out));
+            log.debug("DATA:");
+            log.debug(out.toString());
+        }
+
+        conLMFVideo.commit();
+        conLMFVideo.close();
+    }
+
+    /**
+     * This method tests accessing the Youtube Video service via the GData API.
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testChannel() throws Exception {
+
+        String uriChannel = "http://www.youtube.com/user/dieSpringer";
+        ClientResponse respChannel = ldclient.retrieveResource(uriChannel);
+
+        RepositoryConnection conChannel = respChannel.getTriples().getConnection();
+        conChannel.begin();
+        Assert.assertTrue(conChannel.size() > 0);
+
+        // run a SPARQL test to see if the returned data is correct
+        InputStream sparql = this.getClass().getResourceAsStream("youtube-channel.sparql");
+        BooleanQuery testLabel = conChannel.prepareBooleanQuery(QueryLanguage.SPARQL, IOUtils.toString(sparql));
+        Assert.assertTrue("SPARQL test query failed", testLabel.evaluate());
+
+
+        if(log.isDebugEnabled()) {
+            StringWriter out = new StringWriter();
+            conChannel.export(Rio.createWriter(RDFFormat.TURTLE, out));
+            log.debug("DATA:");
+            log.debug(out.toString());
+        }
+
+        conChannel.commit();
+        conChannel.close();
+    }
+
+    /**
+     * This method tests accessing the Youtube Video service via the GData API.
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testPlaylist() throws Exception {
+
+        String uriPlaylist = "http://www.youtube.com/playlist?list=FLsrORDOimfQf42SDGJgRY4g";
+        ClientResponse respPlaylist = ldclient.retrieveResource(uriPlaylist);
+
+        RepositoryConnection conPlaylist = respPlaylist.getTriples().getConnection();
+        conPlaylist.begin();
+        Assert.assertTrue(conPlaylist.size() > 0);
+
+        conPlaylist.export(Rio.createWriter(RDFFormat.TURTLE, System.out));
+
+        // run a SPARQL test to see if the returned data is correct
+        InputStream sparql = this.getClass().getResourceAsStream("youtube-playlist.sparql");
+        BooleanQuery testLabel = conPlaylist.prepareBooleanQuery(QueryLanguage.SPARQL, IOUtils.toString(sparql));
+        Assert.assertTrue("SPARQL test query failed", testLabel.evaluate());
+
+
+        if(log.isDebugEnabled()) {
+            StringWriter out = new StringWriter();
+            conPlaylist.export(Rio.createWriter(RDFFormat.TURTLE, out));
+            log.debug("DATA:");
+            log.debug(out.toString());
+        }
+
+        conPlaylist.commit();
+        conPlaylist.close();
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-channel.sparql
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-channel.sparql b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-channel.sparql
new file mode 100644
index 0000000..88640a6
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-channel.sparql
@@ -0,0 +1,8 @@
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX ma: <http://www.w3.org/ns/ma-ont#>
+ASK {
+    <http://www.youtube.com/user/dieSpringer> ma:collectionName "Uploads by dieSpringer" .
+    <http://www.youtube.com/user/dieSpringer> ma:hasMember <http://gdata.youtube.com/feeds/api/videos/hIA1RU3HpXA> .
+    <http://www.youtube.com/user/dieSpringer> rdf:type ma:Collection
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video-page.sparql
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video-page.sparql b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video-page.sparql
new file mode 100644
index 0000000..97fab6b
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video-page.sparql
@@ -0,0 +1,8 @@
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX ma: <http://www.w3.org/ns/ma-ont#>
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+ASK {
+    <http://www.youtube.com/watch?v=_3BmNcHW4Ew> foaf:primaryTopic <http://youtu.be/_3BmNcHW4Ew> .
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video.sparql
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video.sparql b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video.sparql
new file mode 100644
index 0000000..d41adb0
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-lmf-video.sparql
@@ -0,0 +1,7 @@
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX ma: <http://www.w3.org/ns/ma-ont#>
+ASK {
+    <http://youtu.be/_3BmNcHW4Ew> ma:title "LMF Screencast: Publishing Legacy Data as Linked Data" .
+    <http://youtu.be/_3BmNcHW4Ew> rdf:type ma:VideoTrack
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-playlist.sparql
----------------------------------------------------------------------
diff --git a/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-playlist.sparql b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-playlist.sparql
new file mode 100644
index 0000000..550ae0b
--- /dev/null
+++ b/ldclient/ldclient-provider-youtube/src/test/resources/org/apache/marmotta/ldclient/test/youtube/youtube-playlist.sparql
@@ -0,0 +1,8 @@
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX ma: <http://www.w3.org/ns/ma-ont#>
+ASK {
+    <http://www.youtube.com/playlist?list=FLsrORDOimfQf42SDGJgRY4g> ma:collectionName "Favorite videos" .
+    <http://www.youtube.com/playlist?list=FLsrORDOimfQf42SDGJgRY4g> ma:hasMember <http://gdata.youtube.com/feeds/api/videos/fUEdwKX-Dw4> .
+    <http://www.youtube.com/playlist?list=FLsrORDOimfQf42SDGJgRY4g> rdf:type ma:Collection
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/ldclient/pom.xml
----------------------------------------------------------------------
diff --git a/ldclient/pom.xml b/ldclient/pom.xml
new file mode 100644
index 0000000..3de5707
--- /dev/null
+++ b/ldclient/pom.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (c) 2013 Salzburg Research.
+  ~  
+  ~  Licensed under the Apache License, Version 2.0 (the "License");
+  ~  you may not use this file except in compliance with the License.
+  ~  You may obtain a copy of the License at
+  ~  
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~  
+  ~  Unless required by applicable law or agreed to in writing, software
+  ~  distributed under the License is distributed on an "AS IS" BASIS,
+  ~  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~  See the License for the specific language governing permissions and
+  ~  limitations under the License.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>at.newmedialab.lmf</groupId>
+        <artifactId>lmf-parent</artifactId>
+        <version>3.0.0-SNAPSHOT</version>
+        <relativePath>../</relativePath>
+    </parent>
+
+    <artifactId>ldclient-parent</artifactId>
+    <name>LDClient: Parent</name>
+    <packaging>pom</packaging>
+
+    <description>
+        Linked Data Client: Parent POM
+    </description>
+
+    <developers>
+        <developer>
+            <name>Sebastian Schaffert</name>
+            <email>sschaffert@apache.org</email>
+            <organization>Apache Software Foundation</organization>
+        </developer>
+        <developer>
+            <name>Jakob Frank</name>
+            <email>jfrank@apache.org</email>
+            <organization>Apache Software Foundation</organization>
+        </developer>
+    </developers>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <plugin> <!-- generate JRebel Configuration -->
+                    <groupId>org.zeroturnaround</groupId>
+                    <artifactId>jrebel-maven-plugin</artifactId>
+                    <configuration>
+                        <relativePath>../../</relativePath>
+                    </configuration>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+    </build>
+    
+    <dependencyManagement>
+	    <dependencies>
+	    	<dependency>
+	    		<groupId>at.newmedialab.lmf</groupId>
+	    		<artifactId>ldclient-core</artifactId>
+	    		<version>${project.version}</version>
+	    		<type>test-jar</type>
+	    		<scope>test</scope>
+	    	</dependency>
+	    </dependencies>
+    </dependencyManagement>
+
+    <modules>
+        <module>ldclient-api</module>
+        <module>ldclient-core</module>
+        <module>ldclient-provider-rdf</module>
+        <module>ldclient-provider-rdfa</module>
+        <module>ldclient-provider-xml</module>
+        <module>ldclient-provider-html</module>
+        <module>ldclient-provider-youtube</module>
+        <module>ldclient-provider-vimeo</module>
+        <module>ldclient-provider-ldap</module>
+        <module>ldclient-provider-mediawiki</module>
+        <module>ldclient-provider-phpbb</module>
+    </modules>
+    
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/.project
----------------------------------------------------------------------
diff --git a/lmf-archetypes/.project b/lmf-archetypes/.project
new file mode 100644
index 0000000..63fb1ca
--- /dev/null
+++ b/lmf-archetypes/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>lmf-archetypes</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+	</natures>
+</projectDescription>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/.settings/org.eclipse.m2e.core.prefs
----------------------------------------------------------------------
diff --git a/lmf-archetypes/.settings/org.eclipse.m2e.core.prefs b/lmf-archetypes/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/lmf-archetypes/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/.project
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/.project b/lmf-archetypes/lmf-archetype-module/.project
new file mode 100644
index 0000000..e2da34f
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>lmf-archetype-module</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+	</natures>
+</projectDescription>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/.settings/org.eclipse.m2e.core.prefs
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/.settings/org.eclipse.m2e.core.prefs b/lmf-archetypes/lmf-archetype-module/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/pom.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/pom.xml b/lmf-archetypes/lmf-archetype-module/pom.xml
new file mode 100644
index 0000000..0da6f5e
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/pom.xml
@@ -0,0 +1,154 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (c) 2013 Salzburg Research.
+  ~
+  ~  Licensed under the Apache License, Version 2.0 (the "License");
+  ~  you may not use this file except in compliance with the License.
+  ~  You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~  Unless required by applicable law or agreed to in writing, software
+  ~  distributed under the License is distributed on an "AS IS" BASIS,
+  ~  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~  See the License for the specific language governing permissions and
+  ~  limitations under the License.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>at.newmedialab.lmf</groupId>
+        <artifactId>lmf-archetypes</artifactId>
+        <version>3.0.0-SNAPSHOT</version>
+        <relativePath>../</relativePath>
+    </parent>
+
+    <artifactId>lmf-archetype-module</artifactId>
+    <packaging>maven-archetype</packaging>
+
+    <name>LMF Archetype: Module</name>
+    <description>This Maven Archetype allows creating the basic structure for an LMF Module</description>
+
+    <build>
+        <extensions>
+            <extension>
+                <groupId>org.apache.maven.wagon</groupId>
+                <artifactId>wagon-ssh-external</artifactId>
+                <version>1.0-beta-6</version>
+            </extension>
+            <extension>
+                <groupId>org.apache.maven.archetype</groupId>
+                <artifactId>archetype-packaging</artifactId>
+                <version>2.2</version>
+            </extension>
+        </extensions>
+
+        <pluginManagement>
+            <plugins>
+                <plugin>
+                    <artifactId>maven-archetype-plugin</artifactId>
+                    <version>2.2</version>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <configuration>
+                    <skip>true</skip>
+                    <skipDeploy>true</skipDeploy>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+
+    <url>https://code.google.com/p/lmf</url>
+
+    <developers>
+        <developer>
+            <name>Sebastian Schaffert</name>
+            <email>sebastian.schaffert@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+        <developer>
+            <name>Thomas Kurz</name>
+            <email>thomas.kurz@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+        <developer>
+            <name>Jakob Frank</name>
+            <email>jakob.frank@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+        <developer>
+            <name>Sergio Fernández</name>
+            <email>sergio.fernandez@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+        <developer>
+            <name>Dietmar Glachs</name>
+            <email>dietmar.glachs@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+    </developers>
+
+    <licenses>
+        <license>
+            <name>Apache Software License, Version 2.0</name>
+            <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+            <distribution>repo</distribution>
+            <comments>A business-friendly OSS license</comments>
+        </license>
+    </licenses>
+
+    <scm>
+        <connection>scm:hg:https://code.google.com/p/lmf</connection>
+        <developerConnection>scm:hg:https://code.google.com/p/lmf</developerConnection>
+        <url>https://code.google.com/p/lmf</url>
+      <tag>HEAD</tag>
+  </scm>
+
+    <distributionManagement>
+        <repository>
+            <id>snml.releases</id>
+            <name>Salzburg NewMediaLab Repository</name>
+            <url>http://devel.kiwi-project.eu:8080/nexus/content/repositories/releases/</url>
+        </repository>
+        <snapshotRepository>
+            <id>snml.snapshots</id>
+            <name>Salzburg NewMediaLab Repository</name>
+            <url>http://devel.kiwi-project.eu:8080/nexus/content/repositories/snapshots/</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <profiles>
+        <profile>
+            <id>sign</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-gpg-plugin</artifactId>
+                        <version>1.4</version>
+                        <executions>
+                            <execution>
+                                <id>sign-artifacts</id>
+                                <phase>verify</phase>
+                                <goals>
+                                    <goal>sign</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/META-INF/maven/archetype-metadata.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/META-INF/maven/archetype-metadata.xml b/lmf-archetypes/lmf-archetype-module/src/main/resources/META-INF/maven/archetype-metadata.xml
new file mode 100644
index 0000000..3d94c31
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/META-INF/maven/archetype-metadata.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright (C) 2013 Salzburg Research.
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd
+http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 " name="LMF Module"
+                      xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
+                      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                      
+    <requiredProperties>
+        <requiredProperty key="moduleKey" />
+        <requiredProperty key="moduleName" />
+    </requiredProperties>
+    
+    <fileSets>
+        <fileSet filtered="true" packaged="true" encoding="UTF-8">
+            <directory>src/main/java</directory>
+            <includes>
+                <include>**/*.java</include>
+            </includes>
+        </fileSet>
+        <fileSet filtered="true" packaged="true" encoding="UTF-8">
+            <directory>src/test/java</directory>
+            <includes>
+                <include>**/*.java</include>
+            </includes>
+        </fileSet>
+        <fileSet filtered="true" encoding="UTF-8">
+            <directory>src/main/resources</directory>
+            <includes>
+                <include>**/*.html</include>
+                <include>**/*.xml</include>
+                <include>**/*.properties</include>
+            </includes>
+        </fileSet>
+        <fileSet encoding="UTF-8">
+            <directory>src/main/resources</directory>
+            <includes>
+                <include>**/*.png</include>
+            </includes>
+        </fileSet>
+    </fileSets>
+</archetype-descriptor>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/pom.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/pom.xml b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/pom.xml
new file mode 100644
index 0000000..e533ad4
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/pom.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>at.newmedialab.lmf</groupId>
+        <artifactId>lmf-parent</artifactId>
+        <version>2.6.0</version>
+    </parent>
+
+    <groupId>${groupId}</groupId>
+    <artifactId>${artifactId}</artifactId>
+
+    <name>LMF Module: ${moduleName}</name>
+    <description></description>
+    <version>${version}</version>
+
+    <repositories>
+        <repository>
+            <id>snml</id>
+            <name>Salzburg NewMediaLab Repository</name>
+            <url>http://devel.kiwi-project.eu:8080/nexus/content/groups/public/</url>
+        </repository>
+    </repositories>
+    <pluginRepositories>
+        <pluginRepository>
+            <id>snml</id>
+            <name>Salzburg NewMediaLab Repository</name>
+            <url>http://devel.kiwi-project.eu:8080/nexus/content/groups/public/</url>
+        </pluginRepository>
+    </pluginRepositories>
+
+    <dependencies>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-core</artifactId>
+            <version>2.6.0</version>
+        </dependency>
+
+        <!-- Test dependencies -->
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-core</artifactId>
+            <version>2.6.0</version>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.mortbay.jetty</groupId>
+            <artifactId>jetty-embedded</artifactId>
+            <version>6.1.26</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.jboss.weld.se</groupId>
+            <artifactId>weld-se-core</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.h2database</groupId>
+            <artifactId>h2</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>com.jayway.restassured</groupId>
+            <artifactId>rest-assured</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.hamcrest</groupId>
+            <artifactId>hamcrest-library</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.hamcrest</groupId>
+            <artifactId>hamcrest-core</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.google.code.tempus-fugit</groupId>
+            <artifactId>tempus-fugit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.googlecode.jatl</groupId>
+            <artifactId>jatl</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+
+    </dependencies>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/api/MyService.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/api/MyService.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/api/MyService.java
new file mode 100644
index 0000000..aab70e7
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/api/MyService.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (C) 2013 Salzburg Research.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ${package}.api;
+
+public interface MyService {
+
+    /**
+     * Does that for a given number of times
+     * 
+     * @param i
+     *            number of iterations to {@link #doThat()}
+     * 
+     * @see #doThat()
+     */
+    public void doThis(int i);
+
+    /**
+     * Does that.
+     */
+    public void doThat();
+
+    /**
+     * Echoes <code>"Hello &lt;name&gt;"</code>.
+     * 
+     * @param name
+     *            the name to echo
+     * @return <code>"Hello &lt;name&gt;"</code>
+     */
+    public String helloWorld(String name);
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/services/MyServiceImpl.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/services/MyServiceImpl.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/services/MyServiceImpl.java
new file mode 100644
index 0000000..144403a
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/services/MyServiceImpl.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (C) 2013 Salzburg Research.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ${package}.services;
+
+import org.slf4j.Logger;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.inject.Inject;
+
+import ${package}.api.MyService;
+
+/**
+ * Default Implementation of {@link MyService}
+ */
+@ApplicationScoped
+public class MyServiceImpl implements MyService {
+
+    @Inject
+    private Logger log;
+
+    @Override
+    public void doThis(int i) {
+        log.debug("Doing that for {} times...", i);
+        for (int j = 0; j < i; j++) {
+            doThat();
+        }
+        log.debug("Did this.");
+    }
+
+    @Override
+    public void doThat() {
+        log.debug("Doing THAT");
+    }
+
+    @Override
+    public String helloWorld(String name) {
+        log.debug("Greeting {}", name);
+        return "Hello " + name;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/webservices/MyWebService.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/webservices/MyWebService.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/webservices/MyWebService.java
new file mode 100644
index 0000000..0684d35
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/java/webservices/MyWebService.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (C) 2013 Salzburg Research.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ${package}.webservices;
+
+import kiwi.core.model.Constants;
+import org.apache.commons.lang.StringUtils;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.inject.Inject;
+import javax.ws.rs.*;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.Response.Status;
+
+import ${package}.api.MyService;
+
+@Path("/${moduleKey}")
+@ApplicationScoped
+public class MyWebService {
+
+    @Inject
+    private MyService myService;
+
+    @GET
+    @Produces(Constants.MIME_TYPE_HTML)
+    public Response hello(@QueryParam("name") String name) {
+        if (StringUtils.isEmpty(name)) {
+            // No name given? Invalid request.
+            return Response.status(Status.BAD_REQUEST).entity("Missing Parameter 'name'").build();
+        }
+
+        // Return the greeting.
+        return Response.ok(myService.helloWorld(name)).build();
+    }
+
+    @POST
+    public Response doThis(@QueryParam("turns") @DefaultValue("2") int turns) {
+        myService.doThis(turns);
+        return Response.ok().build();
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
new file mode 100644
index 0000000..e75d400
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
@@ -0,0 +1,29 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright (C) 2013 Salzburg Research.
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<beans
+   xmlns="http://java.sun.com/xml/ns/javaee"
+   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+   xsi:schemaLocation="
+      http://java.sun.com/xml/ns/javaee
+      http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
+
+</beans>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
new file mode 100644
index 0000000..d85b91c
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
@@ -0,0 +1,22 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound} configure module configuration options and default values here and add descriptions to config-descriptions.properties
+
+${moduleKey}.enabled = true

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
new file mode 100644
index 0000000..0403af9
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
@@ -0,0 +1,25 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound} describe module configuration options here (textual description and type)
+
+${moduleKey}.enabled.description = this is a demo property of ${moduleName}
+${moduleKey}.enabled.type = java.lang.Boolean
+
+

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/kiwi-module.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/kiwi-module.properties b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/kiwi-module.properties
new file mode 100644
index 0000000..a0bb797
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/kiwi-module.properties
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound}
+${symbol_pound} Copyright (c) 2012 Salzburg Research.
+${symbol_pound}
+${symbol_pound} Licensed under the Apache License, Version 2.0 (the "License");
+${symbol_pound} you may not use this file except in compliance with the License.
+${symbol_pound} You may obtain a copy of the License at
+${symbol_pound}
+${symbol_pound}     http://www.apache.org/licenses/LICENSE-2.0
+${symbol_pound}
+${symbol_pound} Unless required by applicable law or agreed to in writing, software
+${symbol_pound} distributed under the License is distributed on an "AS IS" BASIS,
+${symbol_pound} WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+${symbol_pound} See the License for the specific language governing permissions and
+${symbol_pound} limitations under the License.
+${symbol_pound}
+name=${moduleName}
+subtitle = ${moduleName}
+weight=70
+
+baseurl=/${moduleKey}
+
+webservices=${package}.webservices.MyWebService
+
+icon_small = /admin/img/clock_small.png
+
+
+${symbol_pound}entities=${symbol_escape}
+${symbol_pound}  ${package}.model.Model
+
+adminpages=/admin/about.html,/admin/configuration.html
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/about.html
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/about.html b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/about.html
new file mode 100644
index 0000000..5e57eee
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/about.html
@@ -0,0 +1,56 @@
+<!--
+
+    Copyright (C) 2013 Salzburg Research.
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<!--
+  ~ Copyright (c) 2008-2012 Salzburg Research.
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<html>
+<head>
+    <!--${symbol_pound}${symbol_pound}${symbol_pound}BEGIN_HEAD${symbol_pound}${symbol_pound}${symbol_pound}-->
+    <title>About ${moduleName}</title>
+    <link rel="stylesheet" type="text/css" href="../../core/public/style/center.css"/>
+    <!--${symbol_pound}${symbol_pound}${symbol_pound}END_HEAD${symbol_pound}${symbol_pound}${symbol_pound}-->
+</head>
+<body>
+<!--${symbol_pound}${symbol_pound}${symbol_pound}BEGIN_CONTENT${symbol_pound}${symbol_pound}${symbol_pound}-->
+<h1><a id="Introduction"></a>Introduction on ${moduleName}<a class="section_anchor" href="${symbol_pound}Introduction"></a></h1>
+
+<p>
+    ${moduleName} aims at...
+</p>
+
+
+
+
+<!--${symbol_pound}${symbol_pound}${symbol_pound}END_CONTENT${symbol_pound}${symbol_pound}${symbol_pound}-->
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/configuration.html
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/configuration.html b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/configuration.html
new file mode 100644
index 0000000..1c491fd
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/configuration.html
@@ -0,0 +1,83 @@
+<!--
+
+    Copyright (C) 2013 Salzburg Research.
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<!--
+  ~ Copyright (c) 2012 Salzburg Research.
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<html>
+<head>
+<!--${symbol_pound}${symbol_pound}${symbol_pound}BEGIN_HEAD${symbol_pound}${symbol_pound}${symbol_pound}-->
+    <title>${moduleName} Configuration</title>
+    <script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"></script>
+    <script type="text/javascript" src="../../core/public/js/widgets/property_config.js"></script>
+    <script type="text/javascript">
+        jQuery(document).ready(function(){
+            var settings = {
+	            host: _SERVER_URL,
+                anker_name: '${moduleKey}',
+                title: 'Versioning Properties <span style="font-size:12px">(parameter name MUST start with ${symbol_escape}'${moduleKey}.${symbol_escape}')</small>',
+                loading_img: '../../core/public/img/ajax-loader_small.gif',
+                blacklist_keys:[],
+                toplink:true,
+                prefix:'${moduleKey}'
+            }
+            ${symbol_dollar}('${symbol_pound}lmf_configurator').lmf_configurator(settings);
+        });
+    </script>
+    <link rel="stylesheet" type="text/css" href="../../core/public/style/center.css"/>
+    <style type="text/css">
+        h2 {
+            margin: 10px 0;
+        }
+    </style>
+<!--${symbol_pound}${symbol_pound}${symbol_pound}END_HEAD${symbol_pound}${symbol_pound}${symbol_pound}-->
+</head>
+<body>
+<div id="main">
+<div id="contents">
+<!--${symbol_pound}${symbol_pound}${symbol_pound}BEGIN_CONTENT${symbol_pound}${symbol_pound}${symbol_pound}-->
+<h1>${moduleName} Configuration</h1>
+        <p>
+            Here you can configure the LMF ${moduleName} Services.<br/>
+            The configuration contains:
+        </p>
+        <ul>
+            <li><a href="${symbol_pound}lmf_configurator">Generic Parameter Configuration</a></li>
+        </ul>
+        <div id="lmf_configurator">
+            <h4>Loading configurator</h4>
+        </div>
+<!--${symbol_pound}${symbol_pound}${symbol_pound}END_CONTENT${symbol_pound}${symbol_pound}${symbol_pound}-->
+</div>
+</div>
+</body>
+</html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/img/clock_small.png
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/img/clock_small.png b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/img/clock_small.png
new file mode 100644
index 0000000..e34f22f
Binary files /dev/null and b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/main/resources/web/admin/img/clock_small.png differ

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/services/MyServiceTest.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/services/MyServiceTest.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/services/MyServiceTest.java
new file mode 100644
index 0000000..d93d4b6
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/services/MyServiceTest.java
@@ -0,0 +1,46 @@
+package ${package}.services;
+
+import junit.framework.Assert;
+import kiwi.core.test.base.EmbeddedLMF;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import ${package}.api.MyService;
+
+public class MyServiceTest {
+
+    private static EmbeddedLMF lmf;
+    private static MyService myService;
+
+    @BeforeClass
+    public static void setUp() {
+        lmf = new EmbeddedLMF();
+        myService = lmf.getService(MyService.class);
+    }
+
+    @Test
+    public void testDoThis() {
+
+    }
+
+    @Test
+    public void testDoThat() {
+
+    }
+
+    @Test
+    public void testHelloWorld() {
+        Assert.assertEquals("Hello You", myService.helloWorld("You"));
+        Assert.assertEquals("Hello Steve", myService.helloWorld("Steve"));
+        Assert.assertEquals("Hello Tom", myService.helloWorld("Tom"));
+        Assert.assertEquals("Hello Ron", myService.helloWorld("Ron"));
+        Assert.assertEquals("Hello Wüterich", myService.helloWorld("Wüterich"));
+    }
+
+    @AfterClass
+    public static void tearDown() {
+        lmf.shutdown();
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/webservices/MyWebServiceTest.java
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/webservices/MyWebServiceTest.java b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/webservices/MyWebServiceTest.java
new file mode 100644
index 0000000..5fd7b51
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/main/resources/archetype-resources/src/test/java/webservices/MyWebServiceTest.java
@@ -0,0 +1,85 @@
+package ${package}.webservices;
+
+import static com.jayway.restassured.RestAssured.expect;
+import static com.jayway.restassured.RestAssured.given;
+import static org.hamcrest.Matchers.containsString;
+
+import com.jayway.restassured.RestAssured;
+import com.jayway.restassured.config.DecoderConfig;
+import com.jayway.restassured.config.RestAssuredConfig;
+import com.jayway.restassured.http.ContentType;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import kiwi.core.test.base.JettyLMF;
+
+public class MyWebServiceTest {
+    private static JettyLMF lmf;
+
+    @BeforeClass
+    public static void beforeClass() {
+        lmf = new JettyLMF("/${moduleKey}-test", 9090, MyWebService.class);
+
+        RestAssured.baseURI = "http://localhost";
+        RestAssured.port = 9090;
+        RestAssured.basePath = "/${moduleKey}-test";
+        RestAssured.config = RestAssuredConfig.newConfig().decoderConfig(DecoderConfig.decoderConfig().defaultContentCharset("UTF-8"));
+    }
+
+    @AfterClass
+    public static void afterClass() {
+        if (lmf != null) {
+            lmf.shutdown();
+        }
+    }
+
+    @Test
+    public void testHello() {
+        /*
+         * GET ?name=<xxx>
+         */
+        given()
+        .param("name", "Steve")
+        .expect()
+        .content(containsString("Hello Steve"))
+        .when()
+        .get("/${moduleKey}");
+
+        given()
+        .contentType(ContentType.HTML)
+        .param("name", "Jürgen")
+        .expect()
+        .content(containsString("Hello Jürgen"))
+        .when()
+        .get("/${moduleKey}");
+
+        expect()
+        .statusCode(400)
+        .when()
+        .get("/${moduleKey}");
+    }
+
+    @Test
+    public void testDoThis() {
+        /*
+         * POST ?turns=i default 2
+         */
+        given()
+        .param("turns", 1)
+        .expect().statusCode(200)
+        .when()
+        .post("/${moduleKey}");
+
+        given()
+        .param("turns", 10)
+        .expect().statusCode(200)
+        .when()
+        .post("/${moduleKey}");
+
+        expect().statusCode(200)
+        .when()
+        .post("/${moduleKey}");
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/archetype.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/archetype.properties b/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/archetype.properties
new file mode 100644
index 0000000..0cecd4d
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/archetype.properties
@@ -0,0 +1,7 @@
+#Wed Oct 17 14:53:58 CEST 2012
+package=it.pkg
+version=0.1-SNAPSHOT
+groupId=archetype.it
+artifactId=basic
+moduleKey=mymodule
+moduleName=My Module

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/goal.txt
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/goal.txt b/lmf-archetypes/lmf-archetype-module/src/test/resources/projects/basic/goal.txt
new file mode 100644
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/.project
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/.project b/lmf-archetypes/lmf-archetype-webapp/.project
new file mode 100644
index 0000000..3837ede
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>lmf-archetype-webapp</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+	</natures>
+</projectDescription>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/.settings/org.eclipse.m2e.core.prefs
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/.settings/org.eclipse.m2e.core.prefs b/lmf-archetypes/lmf-archetype-webapp/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/pom.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/pom.xml b/lmf-archetypes/lmf-archetype-webapp/pom.xml
new file mode 100644
index 0000000..147c35f
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/pom.xml
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (c) 2013 Salzburg Research.
+  ~
+  ~  Licensed under the Apache License, Version 2.0 (the "License");
+  ~  you may not use this file except in compliance with the License.
+  ~  You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~  Unless required by applicable law or agreed to in writing, software
+  ~  distributed under the License is distributed on an "AS IS" BASIS,
+  ~  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~  See the License for the specific language governing permissions and
+  ~  limitations under the License.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>at.newmedialab.lmf</groupId>
+        <artifactId>lmf-archetypes</artifactId>
+        <version>3.0.0-SNAPSHOT</version>
+        <relativePath>../</relativePath>
+    </parent>
+
+
+    <artifactId>lmf-archetype-webapp</artifactId>
+    <packaging>maven-archetype</packaging>
+
+    <name>LMF Archetype: Web Application</name>
+
+    <build>
+        <extensions>
+            <extension>
+                <groupId>org.apache.maven.wagon</groupId>
+                <artifactId>wagon-ssh-external</artifactId>
+                <version>1.0-beta-6</version>
+            </extension>
+            <extension>
+                <groupId>org.apache.maven.archetype</groupId>
+                <artifactId>archetype-packaging</artifactId>
+                <version>2.2</version>
+            </extension>
+        </extensions>
+
+        <pluginManagement>
+            <plugins>
+                <plugin>
+                    <artifactId>maven-archetype-plugin</artifactId>
+                    <version>2.2</version>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-site-plugin</artifactId>
+                <configuration>
+                    <skip>true</skip>
+                    <skipDeploy>true</skipDeploy>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <description>Web Application bundle (WAR file) containing the complete Linked Media Framework</description>
+
+    <url>https://code.google.com/p/lmf/lmf-webapp/</url>
+
+    <developers>
+        <developer>
+            <name>Sebastian Schaffert</name>
+            <email>sebastian.schaffert@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+        <developer>
+            <name>Thomas Kurz</name>
+            <email>thomas.kurz@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+        <developer>
+            <name>Jakob Frank</name>
+            <email>jakob.frank@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+        <developer>
+            <name>Sergio Fernández</name>
+            <email>sergio.fernandez@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+        <developer>
+            <name>Dietmar Glachs</name>
+            <email>dietmar.glachs@salzburgresearch.at</email>
+            <organization>Salzburg Research</organization>
+        </developer>
+    </developers>
+
+    <licenses>
+        <license>
+            <name>Apache Software License, Version 2.0</name>
+            <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+            <distribution>repo</distribution>
+            <comments>A business-friendly OSS license</comments>
+        </license>
+    </licenses>
+
+    <scm>
+        <connection>scm:hg:https://code.google.com/p/lmf/lmf-webapp/</connection>
+        <developerConnection>scm:hg:https://code.google.com/p/lmf/lmf-webapp/</developerConnection>
+        <url>https://code.google.com/p/lmf/lmf-webapp/</url>
+      <tag>HEAD</tag>
+  </scm>
+
+    <distributionManagement>
+        <repository>
+            <id>snml.releases</id>
+            <name>Salzburg NewMediaLab Repository</name>
+            <url>http://devel.kiwi-project.eu:8080/nexus/content/repositories/releases/</url>
+        </repository>
+        <snapshotRepository>
+            <id>snml.snapshots</id>
+            <name>Salzburg NewMediaLab Repository</name>
+            <url>http://devel.kiwi-project.eu:8080/nexus/content/repositories/snapshots/</url>
+        </snapshotRepository>
+    </distributionManagement>
+
+    <profiles>
+        <profile>
+            <id>sign</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-gpg-plugin</artifactId>
+                        <version>1.4</version>
+                        <executions>
+                            <execution>
+                                <id>sign-artifacts</id>
+                                <phase>verify</phase>
+                                <goals>
+                                    <goal>sign</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/META-INF/maven/archetype-metadata.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/META-INF/maven/archetype-metadata.xml b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/META-INF/maven/archetype-metadata.xml
new file mode 100644
index 0000000..de2e4cd
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/META-INF/maven/archetype-metadata.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright (C) 2013 Salzburg Research.
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd" name="lmf-webapp"
+    xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+    <fileSets>
+    <fileSet filtered="true" encoding="UTF-8">
+      <directory>src/main/webapp</directory>
+      <includes>
+        <include>**/*.jsp</include>
+        <include>**/*.html</include>
+        <include>**/*.xml</include>
+        <include>**/*.properties</include>
+      </includes>
+    </fileSet>
+    <fileSet filtered="true" encoding="UTF-8">
+      <directory>src/main/resources</directory>
+      <includes>
+        <include>**/*.xml</include>
+        <include>**/*.properties</include>
+      </includes>
+    </fileSet>
+    <fileSet encoding="UTF-8">
+      <directory>src/main/webapp</directory>
+      <includes>
+        <include>**/*.xsl</include>
+        <include>**/*.png</include>
+        <include>**/*.js</include>
+        <include>**/*.ftl</include>
+        <include>**/*.ico</include>
+        <include>**/*.css</include>
+      </includes>
+    </fileSet>
+    <fileSet filtered="true" encoding="UTF-8">
+      <directory>src/test/resources</directory>
+      <includes>
+        <include>**/*.xml</include>
+        <include>**/*.properties</include>
+      </includes>
+    </fileSet>
+    <fileSet filtered="true" encoding="UTF-8">
+      <directory>src/test</directory>
+      <includes>
+        <include>**/*.groovy</include>
+      </includes>
+    </fileSet>
+  </fileSets>
+</archetype-descriptor>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/pom.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/pom.xml b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/pom.xml
new file mode 100644
index 0000000..d18f138
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/pom.xml
@@ -0,0 +1,289 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>at.newmedialab.lmf</groupId>
+        <artifactId>lmf-parent</artifactId>
+        <version>2.6.0-SNAPSHOT</version>
+    </parent>
+
+    <groupId>${groupId}</groupId>
+    <artifactId>${artifactId}</artifactId>
+    <packaging>war</packaging>
+
+    <name>LMF Web Application</name>
+    <description>Web Application bundle (WAR file) containing the complete Linked Media Framework</description>
+    <version>${version}</version>
+
+    <repositories>
+        <repository>
+            <id>snml</id>
+            <name>Salzburg NewMediaLab Repository</name>
+            <url>http://devel.kiwi-project.eu:8080/nexus/content/groups/public/</url>
+        </repository>
+    </repositories>
+    <pluginRepositories>
+        <pluginRepository>
+            <id>snml</id>
+            <name>Salzburg NewMediaLab Repository</name>
+            <url>http://devel.kiwi-project.eu:8080/nexus/content/groups/public/</url>
+        </pluginRepository>
+    </pluginRepositories>
+
+    <properties>
+        <!-- these are used for the goals tomcat6/7:run or jetty:run -->
+        <lmf.home>/tmp/lmf</lmf.home>
+        <lmf.context>/</lmf.context>
+        <lmf.port>8080</lmf.port>
+        <lmf.version>2.6.0</lmf.version>
+    </properties>
+
+    <build>
+        <finalName>LMF</finalName>
+        <pluginManagement>
+            <plugins>
+                <plugin>
+                    <artifactId>maven-war-plugin</artifactId>
+                    <version>2.3</version>
+                    <configuration>
+                        <archive>
+                            <manifest>
+                                <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+                                <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+                            </manifest>
+                        </archive>
+                        <archiveClasses>false</archiveClasses>
+                    </configuration>
+                </plugin>
+                <plugin> <!-- generate JRebel Configuration -->
+                    <groupId>org.zeroturnaround</groupId>
+                    <artifactId>jrebel-maven-plugin</artifactId>
+                    <configuration>
+                        <relativePath>../</relativePath>
+                        <rootPath>${rebel.root}</rootPath>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <artifactId>maven-deploy-plugin</artifactId>
+                    <version>2.7</version>
+                    <configuration>
+                        <skip>true</skip>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.tomcat.maven</groupId>
+                    <artifactId>tomcat6-maven-plugin</artifactId>
+                    <version>2.0</version>
+                    <configuration>
+                        <path>${lmf.context}</path>
+                        <port>${lmf.port}</port>
+                        <systemProperties>
+                            <kiwi.home>${lmf.home}</kiwi.home>
+                        </systemProperties>
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.tomcat.maven</groupId>
+                    <artifactId>tomcat7-maven-plugin</artifactId>
+                    <version>2.0</version>
+                    <configuration>
+                        <path>${lmf.context}</path>
+                        <port>${lmf.port}</port>
+                        <systemProperties>
+                            <kiwi.home>${lmf.home}</kiwi.home>
+                        </systemProperties>
+                        <!--                         <contextReloadable>true</contextReloadable> -->
+                        <!--                         <backgroundProcessorDelay>10</backgroundProcessorDelay> -->
+                    </configuration>
+                </plugin>
+                <plugin>
+                    <groupId>org.mortbay.jetty</groupId>
+                    <artifactId>maven-jetty-plugin</artifactId>
+                    <version>6.1.10</version>
+                    <configuration>
+                        <contextPath>${lmf.context}</contextPath>
+                        <connectors>
+                            <connector
+                                    implementation="org.mortbay.jetty.nio.SelectChannelConnector">
+                                <port>${lmf.port}</port>
+                            </connector>
+                        </connectors>
+                        <systemProperties>
+                            <systemProperty>
+                                <name>kiwi.home</name>
+                                <value>${lmf.home}</value>
+                            </systemProperty>
+                        </systemProperties>
+                        <stopKey>foo</stopKey>
+                        <stopPort>9999</stopPort>
+                    </configuration>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+                <filtering>true</filtering>
+            </resource>
+        </resources>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.tomcat.maven</groupId>
+                <artifactId>tomcat6-maven-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.tomcat.maven</groupId>
+                <artifactId>tomcat7-maven-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.mortbay.jetty</groupId>
+                <artifactId>maven-jetty-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <artifactId>maven-dependency-plugin</artifactId>
+            </plugin>
+        </plugins>
+    </build>
+
+    <profiles>
+        <profile>
+            <id>cleanall</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <artifactId>maven-clean-plugin</artifactId>
+                        <version>2.5</version>
+                        <configuration>
+                            <filesets>
+                                <fileset>
+                                    <directory>${lmf.home}</directory>
+                                    <followSymlinks>true</followSymlinks>
+                                </fileset>
+                            </filesets>
+                        </configuration>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+
+    <dependencies>
+        <!-- LMF Modules, include the ones needed by the application -->
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-core</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-ldpath</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-ldcache</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-reasoner</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-sparql</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-skos</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-search</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-security</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-scheduler</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-versioning</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-stanbol</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-enhancer</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-geo</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <!--
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-templating</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        -->
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-user</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-social</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>at.newmedialab.lmf</groupId>
+            <artifactId>lmf-demo-books</artifactId>
+            <version>${lmf.version}</version>
+        </dependency>
+
+        <!-- Servlet / CDI Environment -->
+        <dependency>
+            <groupId>javax.el</groupId>
+            <artifactId>el-api</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.jboss.weld.servlet</groupId>
+            <artifactId>weld-servlet-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.jboss.weld</groupId>
+            <artifactId>weld-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.h2database</groupId>
+            <artifactId>h2</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>postgresql</groupId>
+            <artifactId>postgresql</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+        </dependency>
+    </dependencies>
+    
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
new file mode 100644
index 0000000..e75d400
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/META-INF/beans.xml
@@ -0,0 +1,29 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright (C) 2013 Salzburg Research.
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<beans
+   xmlns="http://java.sun.com/xml/ns/javaee"
+   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+   xsi:schemaLocation="
+      http://java.sun.com/xml/ns/javaee
+      http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
+
+</beans>

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
new file mode 100644
index 0000000..d85b91c
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-defaults.properties
@@ -0,0 +1,22 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound} configure module configuration options and default values here and add descriptions to config-descriptions.properties
+
+${moduleKey}.enabled = true

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
new file mode 100644
index 0000000..0403af9
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/resources/config-descriptions.properties
@@ -0,0 +1,25 @@
+#
+# Copyright (C) 2013 Salzburg Research.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+${symbol_pound} describe module configuration options here (textual description and type)
+
+${moduleKey}.enabled.description = this is a demo property of ${moduleName}
+${moduleKey}.enabled.type = java.lang.Boolean
+
+