Author: reto
Date: Mon Nov 8 10:15:26 2010
New Revision: 1032525
URL: http://svn.apache.org/viewvc?rev=1032525&view=rev
Log:
CLEREZZA-222: introducing curie prefix manager
Added:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/
- copied from r1030117,
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/CuriePrefixRecommender.java
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/impl/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/impl/CuriePrefixManager.java
- copied, changed from r1030117,
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/java/org/apache/clerezza/skeleton/GreetingManager.java
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/CLEREZZA-INF/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/CLEREZZA-INF/web-resources/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/CLEREZZA-INF/web-resources/admin/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/CLEREZZA-INF/web-resources/admin/curie-prefix/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-list-naked.ssp
- copied, changed from r1030117,
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-list-naked.ssp
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-naked.ssp
- copied, changed from r1030117,
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-naked.ssp
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/src/main/resources/org/apache/clerezza/platform/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/ontologies/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/ontologies/curie.ttl
Removed:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/skeleton/GreetingManager.java
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/skeleton/GreetingsList.java
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/skeleton/
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/src/main/resources/org/apache/clerezza/skeleton/
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/pom.xml
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/pom.xml
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/pom.xml
incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/pom.xml
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/pom.xml?rev=1032525&r1=1030117&r2=1032525&view=diff
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/pom.xml
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/pom.xml
Mon Nov 8 10:15:26 2010
@@ -1,23 +1,23 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
- <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
- <artifactId>parent</artifactId>
+ <groupId>org.apache.clerezza</groupId>
+
<artifactId>org.apache.clerezza.platform.curieprefixmanager</artifactId>
<version>0.1-incubating-SNAPSHOT</version>
</parent>
- <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
- <artifactId>core</artifactId>
+ <groupId>org.apache.clerezza</groupId>
+
<artifactId>org.apache.clerezza.platform.curieprefixmanager.core</artifactId>
<version>0.1-incubating-SNAPSHOT</version>
<packaging>bundle</packaging>
- <name>Clerezza - Skeleton Core</name>
+ <name>Clerezza - CURIE prefix manager core</name>
<description>
Skeleton Core
</description>
<dependencies>
<dependency>
-
<groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
- <artifactId>ontologies</artifactId>
+ <groupId>org.apache.clerezza</groupId>
+
<artifactId>org.apache.clerezza.platform.curieprefixmanager.ontologies</artifactId>
</dependency>
<dependency>
<groupId>org.apache.clerezza</groupId>
Added:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/CuriePrefixRecommender.java
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/CuriePrefixRecommender.java?rev=1032525&view=auto
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/CuriePrefixRecommender.java
(added)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/CuriePrefixRecommender.java
Mon Nov 8 10:15:26 2010
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.clerezza.platform.curieprefixmanager;
+
+/**
+ *
+ * Describes a service that recommends a CURIE prefix given an IRI prefix
+ *
+ * @author reto
+ */
+public interface CuriePrefixRecommender {
+
+ /**
+ *
+ * @param iriPrefix that part of the iri that will be replaced by the
return value n the CURIE
+ * @return the suggested prefix or null if no suggestion is available
+ */
+ public String getRecommendedPrefix(String iriPrefix);
+}
Copied:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/impl/CuriePrefixManager.java
(from r1030117,
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/java/org/apache/clerezza/skeleton/GreetingManager.java)
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/impl/CuriePrefixManager.java?p2=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/impl/CuriePrefixManager.java&p1=incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/java/org/apache/clerezza/skeleton/GreetingManager.java&r1=1030117&r2=1032525&rev=1032525&view=diff
==============================================================================
---
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/java/org/apache/clerezza/skeleton/GreetingManager.java
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/java/org/apache/clerezza/platform/curieprefixmanager/impl/CuriePrefixManager.java
Mon Nov 8 10:15:26 2010
@@ -17,20 +17,23 @@
* under the License.
*/
-package org.apache.clerezza.skeleton;
+package org.apache.clerezza.platform.curieprefixmanager.impl;
import java.net.URISyntaxException;
+import java.util.Iterator;
import java.util.concurrent.locks.Lock;
import javax.ws.rs.FormParam;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
+import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.UriInfo;
import org.apache.clerezza.jaxrs.utils.RedirectUtil;
import org.apache.clerezza.jaxrs.utils.TrailingSlash;
+import org.apache.clerezza.platform.curieprefixmanager.CuriePrefixRecommender;
import org.apache.clerezza.platform.graphprovider.content.ContentGraphProvider;
import org.apache.clerezza.platform.typerendering.RenderletManager;
import
org.apache.clerezza.platform.typerendering.scalaserverpages.ScalaServerPagesRenderlet;
@@ -38,13 +41,18 @@ import org.apache.clerezza.rdf.core.BNod
import org.apache.clerezza.rdf.core.MGraph;
import org.apache.clerezza.rdf.core.UriRef;
import org.apache.clerezza.rdf.core.access.LockableMGraph;
-import org.apache.clerezza.rdf.core.impl.PlainLiteralImpl;
import org.apache.clerezza.rdf.core.impl.SimpleMGraph;
-import org.apache.clerezza.rdf.core.impl.TripleImpl;
import org.apache.clerezza.rdf.ontologies.RDF;
import org.apache.clerezza.rdf.utils.GraphNode;
-import org.apache.clerezza.skeleton.ontologies.GREETINGS;
-import org.apache.clerezza.web.fileserver.FileServer;
+import org.apache.clerezza.platform.curieprefixmanager.ontologies.CURIE;
+import org.apache.clerezza.rdf.core.Literal;
+import org.apache.clerezza.rdf.core.LiteralFactory;
+import org.apache.clerezza.rdf.core.NonLiteral;
+import org.apache.clerezza.rdf.core.Triple;
+import org.apache.clerezza.rdf.core.TripleCollection;
+import org.apache.clerezza.rdf.ontologies.PLATFORM;
+import org.apache.clerezza.rdf.utils.RdfList;
+import org.apache.clerezza.rdf.utils.UnionMGraph;
import org.apache.felix.scr.annotations.Component;
import org.apache.felix.scr.annotations.Property;
import org.apache.felix.scr.annotations.Reference;
@@ -52,12 +60,18 @@ import org.apache.felix.scr.annotations.
import org.osgi.service.component.ComponentContext;
-
+/**
+ * Allows to mana a set of CURIE prefix bindings. Multiple URI-Prefix can point
+ * to the same prefix, but per uri-prefix only one suggested prefix is
supported.
+ *
+ * @author reto
+ */
@Component
@Service(value=Object.class)
@Property(name="javax.ws.rs", boolValue=true)
-...@path("/greeting/manager")
-public class GreetingManager extends FileServer {
+...@path("/admin/curie-prefix/manager")
+public class CuriePrefixManager implements CuriePrefixRecommender {
+ private static final LiteralFactory literalFactory =
LiteralFactory.getInstance();
@Reference
private RenderletManager renderletManager;
@@ -68,44 +82,152 @@ public class GreetingManager extends Fil
public void activate(ComponentContext context) throws
URISyntaxException {
renderletManager.registerRenderlet(ScalaServerPagesRenderlet.class.getName(),
new UriRef(getClass().getResource(
- "greeting-naked.ssp").toURI().toString()),
- GREETINGS.Greeting, "naked",
+ "curie-prefix-naked.ssp").toURI().toString()),
+ CURIE.CuriePrefixBinding, "naked",
+ MediaType.APPLICATION_XHTML_XML_TYPE, true);
+
renderletManager.registerRenderlet(ScalaServerPagesRenderlet.class.getName(),
+ new UriRef(getClass().getResource(
+
"curie-prefix-list-naked.ssp").toURI().toString()),
+ CURIE.CuriePrefixBindingList, "naked",
MediaType.APPLICATION_XHTML_XML_TYPE, true);
- configure(context.getBundleContext());
- }
-
- @GET
- public Response entry(@Context UriInfo uriInfo) {
- TrailingSlash.enforceNotPresent(uriInfo);
- return
RedirectUtil.createSeeOtherResponse("manager/new-greeting.xhtml", uriInfo);
}
@GET
- @Path("test")
- public GraphNode testGreeting() {
+ @Path("new")
+ public GraphNode emptyPrefixBinding() {
MGraph resultMGraph = new SimpleMGraph();
GraphNode result = new GraphNode(new BNode(), resultMGraph);
- result.addProperty(RDF.type, GREETINGS.Greeting);
- result.addProperty(GREETINGS.words,
- new PlainLiteralImpl("Merhaba!"));
+ result.addProperty(RDF.type, CURIE.CuriePrefixBinding);
+ result.addProperty(CURIE.prefix,
+ literalFactory.createTypedLiteral("foaf"));
+ result.addProperty(CURIE.binding,
+
literalFactory.createTypedLiteral("http://xmlns.com/foaf/0.1/"));
+ result.addProperty(RDF.type, PLATFORM.HeadedPage);
return result;
}
+ /**
+ * Saves a PrefixBiding, replacing an existing binding to the same
value and
+ * if oldBinding is not null then it is removed
+ */
+ @POST
+ @Path("save")
+ public Response savePrefixBinding(@Context UriInfo uriInfo,
+ @FormParam("prefix") String prefix,
+ @FormParam("binding") String bindingValue,
+ @FormParam("oldBinding") String oldBindingValue) {
+ LockableMGraph contentGraph = cgProvider.getContentGraph();
+ Lock l = contentGraph.getLock().writeLock();
+ l.lock();
+
+ try {
+ NonLiteral binding = getBindingWithValue(bindingValue,
contentGraph);
+ if (binding == null) {
+ binding = new BNode();
+ }
+ GraphNode bindingNode;
+ if (oldBindingValue != null) {
+ NonLiteral oldBinding =
getBindingWithValue(oldBindingValue, contentGraph);
+ if (oldBinding != null) {
+ GraphNode oldBindingNode = new
GraphNode(oldBinding, contentGraph);
+ oldBindingNode.replaceWith(binding);
+ }
+ }
+ bindingNode = new GraphNode(binding, contentGraph);
+ bindingNode.addProperty(RDF.type,
CURIE.CuriePrefixBinding);
+ bindingNode.deleteProperties(CURIE.prefix);
+ bindingNode.addProperty(CURIE.prefix,
literalFactory.createTypedLiteral(prefix));
+ bindingNode.deleteProperties(CURIE.binding);
+ bindingNode.addProperty(CURIE.binding,
literalFactory.createTypedLiteral(bindingValue));
+ } finally {
+ l.unlock();
+ }
+ return RedirectUtil.createSeeOtherResponse("./", uriInfo);
+ }
+
@POST
- @Path("new-greeting")
- public String createNewGreeting(@FormParam("uri") UriRef uri,
- @FormParam("words") String words) {
+ @Path("delete")
+ public Response delete(@Context UriInfo uriInfo,
+ @FormParam("binding") String bindingValue) {
LockableMGraph contentGraph = cgProvider.getContentGraph();
Lock l = contentGraph.getLock().writeLock();
l.lock();
try {
- contentGraph.add(new TripleImpl(uri, RDF.type,
GREETINGS.Greeting));
- contentGraph.add(new TripleImpl(uri, GREETINGS.words,
- new PlainLiteralImpl(words)));
+ NonLiteral binding = getBindingWithValue(bindingValue,
contentGraph);
+ GraphNode bindingNode = new GraphNode(binding,
contentGraph);
+ bindingNode.deleteProperty(RDF.type,
CURIE.CuriePrefixBinding);
+ bindingNode.deleteProperties(CURIE.prefix);
+ bindingNode.deleteProperties(CURIE.binding);
+ } finally {
+ l.unlock();
+ }
+ return RedirectUtil.createSeeOtherResponse("./", uriInfo);
+ }
+
+ @GET
+ public GraphNode list(@Context UriInfo uriInfo) {
+ TrailingSlash.enforcePresent(uriInfo);
+ TripleCollection resultGraph = new SimpleMGraph();
+ LockableMGraph contentGraph = cgProvider.getContentGraph();
+ GraphNode result = new GraphNode(new BNode(), new
UnionMGraph(resultGraph, contentGraph));
+ RdfList list = new RdfList(result);
+ Lock l = contentGraph.getLock().readLock();
+ l.lock();
+ try {
+ Iterator<Triple> greetings = contentGraph.filter(null,
RDF.type, CURIE.CuriePrefixBinding);
+ while (greetings.hasNext()) {
+ list.add(greetings.next().getSubject());
+ }
+ } finally {
+ l.unlock();
+ }
+ result.addProperty(RDF.type, CURIE.CuriePrefixBindingList);
+ result.addProperty(RDF.type, PLATFORM.HeadedPage);
+ return result;
+ }
+
+ @GET
+ @Path("get")
+ public GraphNode getSingle(@QueryParam("binding") String bindingValue) {
+ TripleCollection resultGraph = new SimpleMGraph();
+ LockableMGraph contentGraph = cgProvider.getContentGraph();
+ MGraph unionMGraph = new UnionMGraph(resultGraph, contentGraph);
+ Lock l = contentGraph.getLock().readLock();
+ l.lock();
+ try {
+ GraphNode result = new
GraphNode(getBindingWithValue(bindingValue, contentGraph), unionMGraph);
+ result.addProperty(RDF.type, PLATFORM.HeadedPage);
+ return result;
+ } finally {
+ l.unlock();
+ }
+ }
+
+ private static NonLiteral getBindingWithValue(String bindingValue,
LockableMGraph graph) {
+ Iterator<Triple> triples = graph.filter(null, CURIE.binding,
+
literalFactory.createTypedLiteral(bindingValue));
+ if (triples.hasNext()) {
+ return triples.next().getSubject();
+ } else {
+ return null;
+ }
+ }
+
+ @Override
+ public String getRecommendedPrefix(String iriPrefix) {
+ LockableMGraph contentGraph = cgProvider.getContentGraph();
+ Lock l = contentGraph.getLock().readLock();
+ l.lock();
+ try {
+ NonLiteral binding = getBindingWithValue(iriPrefix,
contentGraph);
+ if (binding == null) {
+ return null;
+ }
+ GraphNode graphNode = new GraphNode(binding,
contentGraph);
+ return
((Literal)graphNode.getObjects(CURIE.prefix).next()).getLexicalForm();
} finally {
l.unlock();
}
- return "created";
}
}
\ No newline at end of file
Copied:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-list-naked.ssp
(from r1030117,
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-list-naked.ssp)
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-list-naked.ssp?p2=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-list-naked.ssp&p1=incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-list-naked.ssp&r1=1030117&r2=1032525&rev=1032525&view=diff
==============================================================================
---
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-list-naked.ssp
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-list-naked.ssp
Mon Nov 8 10:15:26 2010
@@ -1,6 +1,25 @@
-def greet(s: Any) = new UriRef("http://clerezza.apache.org/skeleton/greeting#"
+ s)
+def curie(s: Any) = new
UriRef("http://clerezza.apache.org/platform/curieprefix#" + s)
+
+<div id="tx-content">
+ <h3>The following IRI bases are bound to a CURIE Prefix:</h3>
+ <table>
+
+ <tr><th>IRI prefix</th>
+ <th>CURIE Prefix</th>
+ <th></th></tr>
+ {for (binding <- res!!) yield <tr>
+ <td><a
href={"get?binding="+(binding/curie("binding")*)}>{binding/curie("binding")*}</a></td>
+ <td>{binding/curie("prefix")*}</td>
+ <td><form action="delete" method="post">
+ <input name="binding" type="hidden"
value={binding/curie("binding")*}/>
+ <a class="tx-icon tx-icon-delete" href="#"
onclick="this.parentNode.submit(); return false">Delete</a></form></td>
+ </tr>}
+ </table>
+ <h3>Add new Prefix Binding:</h3>
+ <form action="save" method="post">
+ <label for="prefix">Prefix:</label><input name="prefix"
type="text" value=""/><br/>
+ <label for="binding">Expanded form:</label><input
name="binding" type="text" size="80" value=""/><br/>
+ <input type="submit" name="add"/>
+ </form>
-<div class="tx-content">
- <h3>The following greetings are available:</h3>
- <strong>{for (greeting <- res!!) yield <a
href={greeting*}>{greeting*}</a><br/>} </strong>
</div>
\ No newline at end of file
Copied:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-naked.ssp
(from r1030117,
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-naked.ssp)
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-naked.ssp?p2=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-naked.ssp&p1=incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-naked.ssp&r1=1030117&r2=1032525&rev=1032525&view=diff
==============================================================================
---
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-naked.ssp
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/core/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/impl/curie-prefix-naked.ssp
Mon Nov 8 10:15:26 2010
@@ -1,6 +1,10 @@
-def greet(s: Any) = new UriRef("http://clerezza.apache.org/skeleton/greeting#"
+ s)
+def curie(s: Any) = new
UriRef("http://clerezza.apache.org/platform/curieprefix#" + s)
-<div class="tx-content">
- <h3>Today we greet you as follows:</h3>
- <strong>{res/greet("words")*}</strong>
+<div id="tx-content">
+ <h3>A CURIE Prefix Binding:</h3>
+ <form method="post" action="save">
+ <input type="text" name="prefix"
value={res/curie("prefix")*}/><br/>
+ <input type="text" name="binding"
value={res/curie("binding")*}/><br/>
+ <input type="submit" name="Save"/>
+ </form>
</div>
\ No newline at end of file
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/pom.xml
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/pom.xml?rev=1032525&r1=1030117&r2=1032525&view=diff
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/pom.xml
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/pom.xml
Mon Nov 8 10:15:26 2010
@@ -1,15 +1,15 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
- <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
- <artifactId>parent</artifactId>
+ <groupId>org.apache.clerezza</groupId>
+
<artifactId>org.apache.clerezza.platform.curieprefixmanager</artifactId>
<version>0.1-incubating-SNAPSHOT</version>
</parent>
- <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
- <artifactId>ontologies</artifactId>
+ <groupId>org.apache.clerezza</groupId>
+
<artifactId>org.apache.clerezza.platform.curieprefixmanager.ontologies</artifactId>
<version>0.1-incubating-SNAPSHOT</version>
<packaging>bundle</packaging>
- <name>Clerezza - Skeleton Ontologies</name>
+ <name>Clerezza - CURIE prefix manager Ontologies</name>
<description>
Skeleton Ontologies
</description>
Added:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/ontologies/curie.ttl
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/ontologies/curie.ttl?rev=1032525&view=auto
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/ontologies/curie.ttl
(added)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/ontologies/src/main/resources/org/apache/clerezza/platform/curieprefixmanager/ontologies/curie.ttl
Mon Nov 8 10:15:26 2010
@@ -0,0 +1,23 @@
+...@prefix : <http://clerezza.apache.org/platform/curieprefix#>.
+...@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
+...@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
+...@prefix skos: <http://www.w3.org/2008/05/skos#>.
+...@prefix owl: <http://www.w3.org/2002/07/owl#>.
+
+
+: a owl:Ontology.
+
+:CuriePrefixBinding a rdfs:Class;
+ skos:definition "A binding of a CURIE prefix to the string which has to
be prepended to reference part of the CURIE to produce a IRI."@en.
+
+:prefix a rdf:Property;
+ skos:definition "The CURIE pefix, i.e. a NCName according to
http://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-NCName."@en;
+ rdfs:Domain :CuriePrefixBinding.
+
+:binding a rdf:Property;
+ skos:definition "The value to which the pefix associated with the
subject is bound to."@en;
+ rdfs:Domain :CuriePrefixBinding.
+
+:CuriePrefixBindingList a rdfs:Class;
+ skos:definition "A List of CURIE prefix bindings"@en;
+ rdfs:subClassOf rdf:List.
\ No newline at end of file
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/pom.xml
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/pom.xml?rev=1032525&r1=1030117&r2=1032525&view=diff
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/pom.xml
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.curieprefixmanager/pom.xml
Mon Nov 8 10:15:26 2010
@@ -5,11 +5,11 @@
<artifactId>org.apache.clerezza.parent</artifactId>
<version>0.2-incubating-SNAPSHOT</version>
</parent>
- <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
- <artifactId>parent</artifactId>
+ <groupId>org.apache.clerezza</groupId>
+ <artifactId>org.apache.clerezza.platform.curieprefixmanager</artifactId>
<packaging>pom</packaging>
<version>0.1-incubating-SNAPSHOT</version>
- <name>Clerezza - Skeleton for a project using Java, ScalaServerPages
and Turtle</name>
+ <name>Clerezza - CURIE prefix manager</name>
<modules>
<module>ontologies</module>
<module>core</module>
@@ -17,8 +17,8 @@
<dependencyManagement>
<dependencies>
<dependency>
-
<groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
- <artifactId>ontologies</artifactId>
+ <groupId>org.apache.clerezza</groupId>
+
<artifactId>org.apache.clerezza.platform.curieprefixmanager.ontologies</artifactId>
<version>0.1-incubating-SNAPSHOT</version>
</dependency>
</dependencies>
Modified: incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml?rev=1032525&r1=1032524&r2=1032525&view=diff
==============================================================================
--- incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml (original)
+++ incubator/clerezza/trunk/org.apache.clerezza.parent/pom.xml Mon Nov 8
10:15:26 2010
@@ -48,6 +48,7 @@
<module>org.apache.clerezza.platform.content.default404</module>
<module>org.apache.clerezza.platform.content.fsadaptor</module>
<module>org.apache.clerezza.platform.content.representations</module>
+ <module>org.apache.clerezza.platform.curieprefixmanager</module>
<module>org.apache.clerezza.platform.dashboard</module>
<module>org.apache.clerezza.platform.dashboard.webinterface</module>
<module>org.apache.clerezza.platform.defaultacceptheader</module>