Author: fchrist
Date: Fri Apr 15 12:18:44 2011
New Revision: 1092678
URL: http://svn.apache.org/viewvc?rev=1092678&view=rev
Log:
STANBOL-173 extended doc for symbol and mapping API
Added:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/inc_mapping.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/index.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/mapping_common.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/inc_lookup.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/index.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/lookup.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/symbol_common.ftl
Modified:
incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource.java
incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/SymbolResource.java
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityhubRootResource/index.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_entity.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_find.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_query.ftl
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_referenced.ftl
Modified:
incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource.java
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource.java?rev=1092678&r1=1092677&r2=1092678&view=diff
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource.java
(original)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource.java
Fri Apr 15 12:18:44 2011
@@ -18,6 +18,7 @@ package org.apache.stanbol.entityhub.jer
import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
import static javax.ws.rs.core.MediaType.APPLICATION_JSON_TYPE;
+import static javax.ws.rs.core.MediaType.TEXT_HTML;
import static javax.ws.rs.core.Response.Status.BAD_REQUEST;
import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
import static org.apache.clerezza.rdf.core.serializedform.SupportedFormat.N3;
@@ -39,6 +40,7 @@ import javax.ws.rs.core.Context;
import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
+import javax.ws.rs.core.Response.Status;
import org.apache.stanbol.commons.web.base.ContextHelper;
import org.apache.stanbol.commons.web.base.resource.BaseStanbolResource;
@@ -51,6 +53,8 @@ import org.apache.stanbol.entityhub.serv
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.sun.jersey.api.view.Viewable;
+
/**
* RESTful interface for the {@link EntityMapping}s defined by the {@link
Entityhub}.
*
@@ -70,28 +74,36 @@ public class EntityMappingResource exten
}
@GET
- @Path("/")
+ @Produces(MediaType.TEXT_HTML)
+ public Response getEntityMappingPage() {
+ return Response.ok(new Viewable("index", this), TEXT_HTML).build();
+ }
+
+ @GET
@Produces( {APPLICATION_JSON, RDF_XML, N3, TURTLE, X_TURTLE, RDF_JSON,
N_TRIPLE})
public Response getMapping(@QueryParam("id") String reference, @Context
HttpHeaders headers)
throws WebApplicationException {
- log.debug("getMapping() POST Request > id : {} > accept: {}",
+ log.debug("get mapping for request > id : {} > accept: {}",
reference, headers.getAcceptableMediaTypes());
+
+ MediaType acceptedMediaType =
JerseyUtils.getAcceptableMediaType(headers, APPLICATION_JSON_TYPE);
if (reference == null || reference.isEmpty()) {
- // TODO: how to parse an error message
- throw new WebApplicationException(BAD_REQUEST);
+ return Response.status(Status.BAD_REQUEST).entity("The mapping ID
(URI) is missing.").header(
+ HttpHeaders.ACCEPT, acceptedMediaType).build();
}
Entityhub entityhub =
ContextHelper.getServiceFromContext(Entityhub.class, context);
EntityMapping mapping;
try {
mapping = entityhub.getMappingById(reference);
} catch (EntityhubException e) {
- throw new WebApplicationException(e, INTERNAL_SERVER_ERROR);
+ log.error("error while getting the mapping for {}", reference, e);
+ return Response.status(Status.INTERNAL_SERVER_ERROR).build();
}
if (mapping == null) {
- throw new WebApplicationException(404);
+ return Response.status(Status.NOT_FOUND).entity("No mapping found
for '" + reference + "'.")
+ .header(HttpHeaders.ACCEPT, acceptedMediaType).build();
} else {
- MediaType acceptedMediaType =
JerseyUtils.getAcceptableMediaType(headers, APPLICATION_JSON_TYPE);
return Response.ok(mapping, acceptedMediaType).build();
}
}
Modified:
incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/SymbolResource.java
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/SymbolResource.java?rev=1092678&r1=1092677&r2=1092678&view=diff
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/SymbolResource.java
(original)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/java/org/apache/stanbol/entityhub/jersey/resource/SymbolResource.java
Fri Apr 15 12:18:44 2011
@@ -20,6 +20,7 @@ import static javax.ws.rs.core.MediaType
import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
import static javax.ws.rs.core.MediaType.APPLICATION_JSON_TYPE;
import static javax.ws.rs.core.MediaType.MULTIPART_FORM_DATA;
+import static javax.ws.rs.core.MediaType.TEXT_HTML;
import static javax.ws.rs.core.Response.Status.BAD_REQUEST;
import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
import static javax.ws.rs.core.Response.Status.NOT_FOUND;
@@ -49,6 +50,7 @@ import javax.ws.rs.core.Context;
import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
+import javax.ws.rs.core.Response.Status;
import org.apache.stanbol.commons.web.base.ContextHelper;
import org.apache.stanbol.commons.web.base.resource.BaseStanbolResource;
@@ -61,6 +63,8 @@ import org.apache.stanbol.entityhub.serv
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.sun.jersey.api.view.Viewable;
+
/**
* RESTful interface for The {@link Entityhub}. To access referenced sites
directly see
* {@link ReferencedSiteRootResource}.
@@ -94,6 +98,12 @@ public class SymbolResource extends Base
}
@GET
+ @Produces(MediaType.TEXT_HTML)
+ public Response getSymbolPage() {
+ return Response.ok(new Viewable("index", this), TEXT_HTML).build();
+ }
+
+ @GET
@Path("/")
@Produces( {APPLICATION_JSON, RDF_XML, N3, TURTLE, X_TURTLE, RDF_JSON,
N_TRIPLE})
public Response getSymbol(@QueryParam("id") String symbolId, @Context
HttpHeaders headers) throws WebApplicationException {
@@ -121,6 +131,13 @@ public class SymbolResource extends Base
@GET
@Path("/lookup")
+ @Produces(MediaType.TEXT_HTML)
+ public Response getSymbolLookupPage() {
+ return Response.ok(new Viewable("lookup", this), TEXT_HTML).build();
+ }
+
+ @GET
+ @Path("/lookup")
@Produces( {APPLICATION_JSON, RDF_XML, N3, TURTLE, X_TURTLE, RDF_JSON,
N_TRIPLE})
public Response lookupSymbol(@QueryParam("id") String reference,
@QueryParam("create") boolean create,
@@ -134,6 +151,8 @@ public class SymbolResource extends Base
throw new WebApplicationException(BAD_REQUEST);
}
Entityhub entityhub =
ContextHelper.getServiceFromContext(Entityhub.class, context);
+
+ MediaType acceptedMediaType =
JerseyUtils.getAcceptableMediaType(headers, APPLICATION_JSON_TYPE);
Symbol symbol;
try {
symbol = entityhub.lookupSymbol(reference, create);
@@ -141,9 +160,9 @@ public class SymbolResource extends Base
throw new WebApplicationException(e, INTERNAL_SERVER_ERROR);
}
if (symbol == null) {
- throw new WebApplicationException(404);
+ return Response.status(Status.NOT_FOUND).entity("No symbol found
for '" + reference + "'.")
+ .header(HttpHeaders.ACCEPT, acceptedMediaType).build();
} else {
- MediaType acceptedMediaType =
JerseyUtils.getAcceptableMediaType(headers, APPLICATION_JSON_TYPE);
return Response.ok(symbol, acceptedMediaType).build();
}
}
Added:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/inc_mapping.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/inc_mapping.ftl?rev=1092678&view=auto
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/inc_mapping.ftl
(added)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/inc_mapping.ftl
Fri Apr 15 12:18:44 2011
@@ -0,0 +1,62 @@
+<h4>Subresource /mapping?id={URI}</h4>
+
+<table>
+<tbody>
+ <tr>
+ <th>Description</th>
+ <td>Service to get a mapping by its ID which is encoded as an
URI. You need to know the mapping URI
+ to use this service and you can retrieve such a mapping URI by
creating a new symbol using the
+ <a
href="${it.publicBaseUri}entityhub/symbol/lookup">symbol/lookup</a>
endpoint.</td>
+ </tr>
+ <tr>
+ <th>Request</th>
+ <td>GET /entityhub/mapping?id={uri}</td>
+ </tr>
+ <tr>
+ <th>Parameter</th>
+ <td>id: the URI of the mapping</th>
+ </tr>
+ <tr>
+ <th>Produces</th>
+ <td>Depends on requested media type</td>
+ </tr>
+</tbody>
+</table>
+
+<h5>Example</h5>
+
+<pre>curl
"${it.publicBaseUri}entityhub/mapping?id=urn:org.apache.stanbol:entityhub:symbol.1e05cc86-07bb-7281-5a19-0d4d0d8e054e"</pre>
+
+<h5>Test</h5>
+
+<p>To test this
+
+<form id="getMappingForUriForm">
+<p>Get mapping for URI
+<input type="text" size="50" id="mappingId" name="id" value="" />
+<input type="submit" value="Get Mapping" onclick="getMappingForUri(); return
false;" /></p>
+</form>
+
+<script language="javascript">
+function getMappingForUri() {
+ $("#mappingResult").show();
+ $.ajax({
+ type: "GET",
+ url: "${it.publicBaseUri}entityhub/mapping",
+ data: $("#getMappingForUriForm").serialize(),
+ dataType: "json",
+ cache: false,
+ success: function(data, textStatus, jqXHR) {
+ $("#mappingResultText").text(data);
+ },
+ error: function(jqXHR, textStatus, errorThrown) {
+ $("#mappingResultText").text(jqXHR.statusText + " - " +
jqXHR.responseText);
+ }
+ });
+}
+</script>
+
+<div id="mappingResult" style="display: none">
+<p><a href="#" onclick="$('#mappingResult').hide(); return false;">Hide
results</a>
+<pre id="mappingResultText">... waiting for results ...</pre>
+</div>
Added:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/index.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/index.ftl?rev=1092678&view=auto
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/index.ftl
(added)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/index.ftl
Fri Apr 15 12:18:44 2011
@@ -0,0 +1,11 @@
+<#import "mapping_common.ftl" as common>
+<#escape x as x?html>
+<@common.page>
+
+<p>List of subresources:</p>
+<ul>
+ <li><a
href="${it.publicBaseUri}entityhub/mapping/entity">/entityhub/mapping/entity</a></li>
+</ul>
+
+</@common.page>
+</#escape>
Added:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/mapping_common.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/mapping_common.ftl?rev=1092678&view=auto
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/mapping_common.ftl
(added)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityMappingResource/mapping_common.ftl
Fri Apr 15 12:18:44 2011
@@ -0,0 +1,17 @@
+<#macro page>
+<#import "/imports/common.ftl" as common>
+<#escape x as x?html>
+<@common.page title="Entityhub Mappings" hasrestapi=false>
+
+<div class="panel" id="restapi">
+<h3>Service Endpoint <a
href="${it.publicBaseUri}entityhub/mapping">/entityhub/mapping</a></h3>
+
+<#include "inc_mapping.ftl">
+
+<#nested>
+
+</div>
+
+</@common.page>
+</#escape>
+</#macro>
\ No newline at end of file
Modified:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityhubRootResource/index.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityhubRootResource/index.ftl?rev=1092678&r1=1092677&r2=1092678&view=diff
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityhubRootResource/index.ftl
(original)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/EntityhubRootResource/index.ftl
Fri Apr 15 12:18:44 2011
@@ -13,7 +13,9 @@
<p>The Entityhub supports the following service endpoints:</p>
<ul>
- <li>Site Manager @ <a
href="${it.publicBaseUri}entityhub/sites/">/entityhub/sites</a></li>
+ <li>Site Manager @ <a
href="${it.publicBaseUri}entityhub/sites">/entityhub/sites</a></li>
+ <li>Symbols @ <a
href="${it.publicBaseUri}entityhub/symbol">/entityhub/symbol</a></li>
+ <li>Mappings @ <a
href="${it.publicBaseUri}entityhub/mapping">/entityhub/mapping</a></li>
</ul>
</div>
Modified:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_entity.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_entity.ftl?rev=1092678&r1=1092677&r2=1092678&view=diff
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_entity.ftl
(original)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_entity.ftl
Fri Apr 15 12:18:44 2011
@@ -25,11 +25,11 @@
<h5>Example</h5>
-<pre>curl
"http://localhost:8080/entityhub/sites/entity?id=http://dbpedia.org/resource/Paris"</pre>
+<pre>curl
"${it.publicBaseUri}entityhub/sites/entity?id=http://dbpedia.org/resource/Paris"</pre>
<h5>Test</h5>
-<a href="javascript:searchEntityParis()">Search for entity 'Paris' in
DBPedia</a>.
+<a href="#" onclick="searchEntityParis(); return false;">Search for entity
'Paris' in DBPedia</a>.
<script language="javascript">
function searchEntityParis() {
Modified:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_find.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_find.ftl?rev=1092678&r1=1092677&r2=1092678&view=diff
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_find.ftl
(original)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_find.ftl
Fri Apr 15 12:18:44 2011
@@ -36,7 +36,7 @@
<h5>Example</h5>
-<pre>curl -X POST -d "name=Bishofsh*&limit=10&offset=0"
http://localhost:8080/entityhub/sites/find</pre>
+<pre>curl -X POST -d "name=Bishofsh*&limit=10&offset=0"
${it.publicBaseUri}entityhub/sites/find</pre>
<h5>Test</h5>
Modified:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_query.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_query.ftl?rev=1092678&r1=1092677&r2=1092678&view=diff
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_query.ftl
(original)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_query.ftl
Fri Apr 15 12:18:44 2011
@@ -24,7 +24,7 @@
<h5>Example</h5>
-<pre>curl -X POST -F "[email protected]"
http://localhost:8080/entityhub/site/dbpedia/query</pre>
+<pre>curl -X POST -F "[email protected]"
${it.publicBaseUri}entityhub/site/dbpedia/query</pre>
<p><em>Note</em>: "@fieldQuery.json" links to a local file that contains the
parsed
Fieldquery (see ection "FieldQuery JSON format" for examples).</p>
Modified:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_referenced.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_referenced.ftl?rev=1092678&r1=1092677&r2=1092678&view=diff
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_referenced.ftl
(original)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SiteManagerRootResource/inc_referenced.ftl
Fri Apr 15 12:18:44 2011
@@ -24,7 +24,7 @@
</table>
<h5>Example</h5>
-<pre>curl "http://localhost:8080/entityhub/sites/referenced"</pre>
+<pre>curl "${it.publicBaseUri}entityhub/sites/referenced"</pre>
<h5>Example response</h5>
<pre>["http:\/\/localhost:8080\/entityhub\/site\/dbpedia\/",
Added:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/inc_lookup.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/inc_lookup.ftl?rev=1092678&view=auto
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/inc_lookup.ftl
(added)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/inc_lookup.ftl
Fri Apr 15 12:18:44 2011
@@ -0,0 +1,82 @@
+<h4>Subresource /symbol/lookup?id={uri}&create={create}</h4>
+
+<table>
+<tbody>
+ <tr>
+ <th>Description</th>
+ <td>This service looks-up Symbols (Entities managed by the
Entityhub) based on the parsed URI. The
+ parsed ID can be the URI of a Symbol or an Entity of any
referenced site.
+ <ul>
+ <li>If the parsed ID is a URI of a Symbol, than the
stored information of the Symbol are returned
+ in the requested media type ('accept' header
field).</li>
+ <li>If the parsed ID is a URI of an already mapped
entity, then the existing
+ mapping is used to get the according
Symbol.</li>
+ <li>If "create" is enabled, and the parsed URI is not
+ already mapped to a Symbol, than all the
currently active referenced sites are searched for an
+ Entity with the parsed URI.</li>
+ <li>If the configuration of the referenced site allows
to create new
+ symbols, than a the entity is imported in the
Entityhub, a new Symbol and EntityMapping is
+ created and the newly created Symbol is
returned.</li>
+ <li>In case the entity is not found (this also includes
if the entity would be available via a
+ referenced site, but create=false) a 404 "Not
Found" is returned.</li>
+ <li>In case the entity is found on a referenced site,
but the creation of a new Symbol is not
+ allowed a 403 "Forbidden" is returned.</li>
+ </ul>
+ </td>
+ </tr>
+ <tr>
+ <th>Request</th>
+ <td>GET /symbol/lookup?id={uri}&create={create} </td>
+ </tr>
+ <tr>
+ <th>Parameter</th>
+ <td><ul><li>id: the id of the entity</li>
+ <li>create: if "true" a new symbol is created if
necessary and allowed</li>
+ </ul>
+ </td>
+ </tr>
+ <tr>
+ <th>Produces</th>
+ <td>Depends on requested media type</td>
+ </tr>
+</tbody>
+</table>
+
+<h5>Example</h5>
+
+<pre>curl
"${it.publicBaseUri}entityhub/symbol/lookup/?id=http://dbpedia.org/resource/Paris"</pre>
+
+<h5>Test</h5>
+
+<ul>
+ <li><a href="#"
onclick="lookupEntity('http://dbpedia.org/resource/Paris',false); return
false;">Lookup symbol for
+entity 'http://dbpedia.org/resource/Paris' with create=false</a>.</li>
+ <li><a href="#"
onclick="lookupEntity('http://dbpedia.org/resource/Paris',true); return
false;">Lookup symbol for
+entity 'http://dbpedia.org/resource/Paris' with create=true</a>.</li>
+</ul>
+
+<script language="javascript">
+function lookupEntity(entity, create) {
+ $("#lookupEntityResult").hide();
+ $("#lookupEntityResultText").text("... waiting for results ...");
+ $("#lookupEntityResult").show();
+ $.ajax({
+ type: "GET",
+ url: "${it.publicBaseUri}entityhub/symbol/lookup",
+ data: "id=" + entity + "&create=" + create,
+ dataType: "text/plain",
+ cache: false,
+ success: function(data) {
+ $("#lookupEntityResultText").text(data);
+ },
+ error: function(jqXHR, textStatus, errorThrown) {
+ $("#lookupEntityResultText").text(jqXHR.statusText + " - " +
jqXHR.responseText);
+ }
+ });
+}
+</script>
+
+<div id="lookupEntityResult" style="display: none">
+<p><a href="#" onclick="$('#lookupEntityResult').hide(); return false;">Hide
results</a>
+<pre id="lookupEntityResultText">... waiting for results ...</pre>
+</div>
Added:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/index.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/index.ftl?rev=1092678&view=auto
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/index.ftl
(added)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/index.ftl
Fri Apr 15 12:18:44 2011
@@ -0,0 +1,13 @@
+<#import "symbol_common.ftl" as common>
+<#escape x as x?html>
+<@common.page>
+
+<p>List of subresources:</p>
+<ul>
+ <li><a
href="${it.publicBaseUri}entityhub/symbol/lookup">/entityhub/symbol/lookup</a></li>
+</ul>
+
+<#include "inc_lookup.ftl">
+
+</@common.page>
+</#escape>
Added:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/lookup.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/lookup.ftl?rev=1092678&view=auto
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/lookup.ftl
(added)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/lookup.ftl
Fri Apr 15 12:18:44 2011
@@ -0,0 +1,8 @@
+<#import "symbol_common.ftl" as common>
+<#escape x as x?html>
+<@common.page>
+
+<#include "inc_lookup.ftl">
+
+</@common.page>
+</#escape>
Added:
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/symbol_common.ftl
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/symbol_common.ftl?rev=1092678&view=auto
==============================================================================
---
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/symbol_common.ftl
(added)
+++
incubator/stanbol/trunk/entityhub/jersey/src/main/resources/org/apache/stanbol/entityhub/jersey/templates/org/apache/stanbol/entityhub/jersey/resource/SymbolResource/symbol_common.ftl
Fri Apr 15 12:18:44 2011
@@ -0,0 +1,15 @@
+<#macro page>
+<#import "/imports/common.ftl" as common>
+<#escape x as x?html>
+<@common.page title="Entityhub Symbols" hasrestapi=false>
+
+<div class="panel" id="restapi">
+<h3>Service Endpoint <a
href="${it.publicBaseUri}entityhub/symbol">/entityhub/symbol</a></h3>
+
+<#nested>
+
+</div>
+
+</@common.page>
+</#escape>
+</#macro>
\ No newline at end of file