Improve output: distinguish between failed assertions (failures) and unexpected exceptions (errors), and print a filtered stack trace for any exception.

This commit is contained in:
jeb228 2010-01-29 22:13:57 +00:00
commit 4f2e303079
1839 changed files with 235630 additions and 0 deletions

View file

@ -0,0 +1,30 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<h2>Connect to Jena Database</h2>
<form action="ingest" method="post">
<input type="hidden" name="action" value="connectDB"/>
<input type="text" style="width:80%;" name="jdbcUrl" value="jdbc:mysql://localhost/"/>
<p>JDBC URL</p>
<input type="text" name="username"/>
<p>username</p>
<input type="password" name="password"/>
<p>password</p>
<input id="tripleStoreRDB" name="tripleStore" type="radio" checked="checked" value="RDB"/>
<label for="tripleStoreRDB">Jena RDB</label>
<input id="tripleStoreSDB" name="tripleStore" type="radio" value="SDB"/>
<label for="tripleStoreRDB">Jena SDB (hash layout)</label>
<select name="dbType">
<option value="MySQL">MySQL</option>
</select>
<p>database type</p>
<input type="submit" value="Connect Database"/>

View file

@ -0,0 +1,9 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<h2>Create New Model</h2>
<form style="margin-bottom:2ex;" action="ingest" method="post">
<input type="hidden" name="action" value="createModel"/>
Model name: <input type="text" size="32" name="modelName"/>
<input type="submit" name="submit" value="Create Model"/>
</form>

View file

@ -0,0 +1,66 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<h2>Convert CSV to RDF</h2>
<form action="ingest" method="get"i>
<input type="hidden" name="action" value="csv2rdf"/>
<p><input type="radio" name="separatorChar" value="comma" checked="checked"/> comma separated
<input type="radio" name="separatorChar" value="tab"/> tab separated </p>
<input type="text" style="width:80%;" name="csvUrl"/>
<p>CSV file URL (e.g. "file:///")</p>
<input type="text" name="namespace"/>
<p>Namespace in which to generate resources</p>
<input type="text" name="tboxNamespace"/>
<p>Namespace in which to generate class and properties</p>
<!--
<input type="checkbox" name="discardTbox"/> do not add TBox or RBox to result model
-->
<input type="text" name="typeName"/>
<p>Class Name for Resources</p>
<select name="destinationModelName">
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"><%=modelName%></option>
<%
}
%> <option value="">(none)</option>
</select>
<p>Destination Model</p>
<select name="tboxDestinationModelName">
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"><%=modelName%></option>
<%
}
%> <option value="">(none)</option>
</select>
<p>Destination Model for TBox</p>
<input type="submit" value="Convert CSV"/>

View file

@ -0,0 +1,46 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<h2>Execute RDF-Encoded Ingest Workflow</h2>
<form action="ingest" method="get"i>
<input type="hidden" name="action" value="executeWorkflow"/>
<h3>Workflow</h3>
<select name="workflowURI">
<%
OntModel jenaOntModel = (OntModel) getServletContext().getAttribute("jenaOntModel");
jenaOntModel.enterCriticalSection(Lock.READ);
try {
List savedQueries = (List) request.getAttribute("workflows");
for (Iterator it = savedQueries.iterator(); it.hasNext();) {
Individual savedQuery = (Individual) it.next();
String queryURI = savedQuery.getURI();
String queryLabel = savedQuery.getLabel(null);
%> <option value="<%=queryURI%>"><%=queryLabel%></option> <%
}
} finally {
jenaOntModel.leaveCriticalSection();
}
%>
</select>
<input type="submit" value="Next &gt;"/>

View file

@ -0,0 +1,36 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<div class="staticPageBackground">
<h2> Export to RDF </h2>
<form action="" method="get">
<ul>
<li style="list-style-type:none;"><input type="radio" name="subgraph" checked="checked" value="full"/> Export entire RDF model (including application metadata)</li>
<li style="list-style-type:none;"><input type="radio" name="subgraph" value="tbox"/> Export ontology/ontologies (TBox)</li>
<li style="list-style-type:none;"><input type="radio" name="subgraph" value="abox"/> Export instance data (ABox)</li>
</ul>
<hr/>
<ul>
<li style="list-style-type:none;"><input type="radio" name="assertedOrInferred" checked="checked" value="asserted"/> Export only asserted statements </li>
<li style="list-style-type:none;"><input type="radio" name="assertedOrInferred" value="inferred"/> Export only inferred statements </li>
<li style="list-style-type:none;"><input type="radio" name="assertedOrInferred" value="full"/> Export asserted and inferred statements together </li>
</ul>
<h3>Select format</h3>
<select name="format">
<option value="RDF/XML">RDF/XML</option>
<option value="RDF/XML-ABBREV">RDF/XML abbrev.</option>
<option value="N3">N3</option>
<option value="N-TRIPLES">N-Triples</option>
<option value="TURTLE">Turtle</option>
</select>
<input type="submit" name="submit" value="Export"/>
</form>
</div>

View file

@ -0,0 +1,53 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<h2>Generate TBox from Assertions Data</h2>
<form action="ingest" method="get">
<input type="hidden" name="action" value="generateTBox"/>
<h3>Select Source Models for Assertions Data</h3>
<ul>
<li><input type="checkbox" name="sourceModelName" value="vitro:jenaOntModel"/>webapp model</li>
<li><input type="checkbox" name="sourceModelName" value="vitro:baseOntModel"/>webapp assertions</li>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <li> <input type="checkbox" name="sourceModelName" value="<%=modelName%>"/><%=modelName%></li>
<%
}
%>
</ul>
<h3>Select Destination Model for Generated TBox</h3>
<select name="destinationModelName">
<option value="vitro:jenaOntModel"/>webapp model</option>
<option value="vitro:baseOntModel"/>webapp assertions</option>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"/><%=modelName%></option>
<%
}
%>
</select>
<input type="submit" value="Generate TBox"/>

View file

@ -0,0 +1,20 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<h2>Ingest Menu</h2>
<ul>
<li><a href="ingest?action=connectDB">Connect DB</a></li>
<li><a href="ingest?action=listModels">Manage Jena Models</a></li>
<li><a href="ingest?action=subtractModels">Subtract One Model from Another</a></li>
<li><a href="ingest?action=csv2rdf">Convert CSV to RDF</a></li>
<li><a href="jenaXmlFileUpload">Load XML and convert to RDF</a></li>
<li><a href="ingest?action=renameBNodes">Name Blank Nodes</a></li>
<li><a href="ingest?action=smushSingleModel">Smush Resources</a></li>
<li><a href="ingest?action=generateTBox">Generate TBox</a></li>
<li><a href="ingest?action=executeSparql">Execute SPARQL CONSTRUCT</a></li>
<li><a href="ingest?action=processStrings">Process Property Value Strings</a></li>
<li><a href="ingest?action=splitPropertyValues">Split Property Value Strings into Multiple Property Values</a></li>
<li><a href="ingest?action=executeWorkflow">Execute Workflow</a></li>
</ul>

View file

@ -0,0 +1,89 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.net.URLEncoder" %>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<p><a href="ingest">Ingest Home</a></p>
<h2>Available Jena Models</h2>
<form action="ingest" method="get">
<input type="hidden" name="action" value="createModel"/>
<input type="submit" name="submit" value="Create Model"/>
</form>
<ul>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <li style="padding-bottom:2em;padding-top:2em;"> <%=modelName%>
<table style="margin-left:2em;"><tr>
<td>
<form action="ingest" method="get">
<input type="hidden" name="action" value="loadRDFData"/>
<input type="hidden" name="modelName" value="<%=modelName%>"/>
<input type="submit" name="submit" value="load RDF data"/>
</form>
</td>
<td>
<c:url var="outputModelURL" value="ingest">
<c:param name="action" value="outputModel"/>
<c:param name="modelName" value="<%=modelName%>"/>
</c:url>
<a href="${outputModelURL}">output model</a>
</td>
<td>
<form action="ingest" method="post">
<input type="hidden" name="action" value="clearModel"/>
<input type="hidden" name="modelName" value="<%=modelName%>"/>
<input type="submit" name="submit" value="clear statements"/>
</form>
</td>
<td>
<form action="ingest" method="post">
<input type="hidden" name="action" value="removeModel"/>
<input type="hidden" name="modelName" value="<%=modelName%>"/>
<input type="submit" name="submit" value="remove"/>
</form>
</td>
</tr>
<tr>
<td>
<form action="ingest" method="post">
<input type="hidden" name="action" value="setWriteLayer"/>
<input type="hidden" name="modelName" value="<%=modelName%>"/>
<input type="submit" name="submit" value="set as current write layer"/>
</form>
<td>
<form action="ingest" method="post">
<input type="hidden" name="action" value="attachModel"/>
<input type="hidden" name="modelName" value="<%=modelName%>"/>
<input type="submit" name="submit" value="attach to webapp"/>
</form>
</td>
<td>
<form action="ingest" method="post">
<input type="hidden" name="action" value="detachModel"/>
<input type="hidden" name="modelName" value="<%=modelName%>"/>
<input type="submit" name="submit" value="detach from webapp"/>
</form>
</td>
<td>&nbsp;</td>
</tr>
</table>
</li> <%
}
%>
</ul>

View file

@ -0,0 +1,21 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<h2>Load RDF Data</h2>
<form style="margin-bottom:2ex;" action="ingest" method="post">
<input type="hidden" name="modelName" value="<%=request.getParameter("modelName")%>"/>
<input type="hidden" name="action" value="loadRDFData"/>
<p>RDF document URI: <input type="text" size="32" name="docLoc"/></p>
<p>Or local filesystem path: <input type="text" size="32" name="filePath"/>
(If a directory is supplied, will attempt to load all files therein)</p>
<p>
<select name="language">
<option value="RDF/XML">RDF/XML</option>
<option value="N3">N3</option>
<option value="N-TRIPLE">N-Triples</option>
<option value="TTL">Turtle</option>
</select>
<input type="submit" name="submit" value="Load Data"/>
</p>
</form>

View file

@ -0,0 +1,73 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<h2>Process Property Value Strings</h2>
<form action="ingest" method="get"i>
<input type="hidden" name="action" value="processStrings"/>
<input type="text" style="width:80%;" name="className"/>
<p>String processor class</p>
<input type="text" name="methodName"/>
<p>String processor method</p>
<input type="text" name="propertyName"/>
<p>Property URI</p>
<input type="text" name="newPropertyName"/>
<p>New Property URI</p>
<select name="destinationModelName">
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"/><%=modelName%></option>
<%
}
%>
</select>
<input type="checkbox" name="processModel" value="TRUE"/> apply changes directly to this model
<p>model to use</p>
<select name="additionsModel">
<option value="">none</option>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"><%=modelName%></option>
<%
}
%>
</select>
<p>model in which to save added statements</p>
<select name="retractionsModel">
<option value="">none</option>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"><%=modelName%></option>
<%
}
%>
</select>
<p>model in which to save retracted statements</p>
<input type="submit" value="Process property values"/>

View file

@ -0,0 +1,57 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<h2>Convert Blank Nodes to Named Resources</h2>
<form action="ingest" method="get"i>
<input type="hidden" name="action" value="renameBNodes"/>
<h3>Select URI prefix</h3>
<p>URIs will be constructed from the following string concatenated with a random integer:</p>
<input type="text" name="namespaceEtcStr"/>
<p/>
<h3>Select Source Models</h3>
<ul>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <li> <input type="checkbox" name="sourceModelName" value="<%=modelName%>"/><%=modelName%></li>
<%
}
%>
</ul>
<h3>Select Destination Model</h3>
<select name="destinationModelName">
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"/><%=modelName%></option>
<%
}
%>
</select>
<input type="submit" value="Rename Blank Nodes"/>

View file

@ -0,0 +1,53 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<h2>Smush Resources</h2>
<form action="ingest" method="get"i>
<input type="hidden" name="action" value="smushSingleModel"/>
<h3>URI of Property with which To Smush
<input type="text" name="propertyURI"/>
<h3>Select Source Models</h3>
<ul>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <li> <input type="checkbox" name="sourceModelName" value="<%=modelName%>"/><%=modelName%></li>
<%
}
%>
</ul>
<h3>Select Destination Model</h3>
<select name="destinationModelName">
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"/><%=modelName%></option>
<%
}
%>
</select>
<input type="submit" value="Smush Resources"/>

View file

@ -0,0 +1,166 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<%@page import="java.util.HashSet"%>
<%@page import="java.util.Set"%>
<%@page import="java.util.Arrays"%>
<%@page import="java.util.ArrayList"%><h2>Execute SPARQL CONSTRUCT Query</h2>
<p><a href="ingest">Ingest Home</a></p>
<c:if test="${requestScope.constructedStmtCount != null}">
<h3 class="notice">${requestScope.constructedStmtCount} statements CONSTRUCTed</h3>
</c:if>
<c:if test="${errorMsg != null}">
<h3 class="error">${requestScope.errorMsg}</h3>
</c:if>
<c:if test="${requestScope.validationMessage != null}">
<h3 class="notice">${requestScope.validationMessage}</h3>
</c:if>
<form action="ingest" method="post">
<input type="hidden" name="action" value="executeSparql"/>
<h3>SPARQL Query
<select name="savedQuery">
<option value="">select saved query</option>
<%
OntModel jenaOntModel = (OntModel) getServletContext().getAttribute("jenaOntModel");
jenaOntModel.enterCriticalSection(Lock.READ);
try {
List savedQueries = (List) request.getAttribute("savedQueries");
for (Iterator it = savedQueries.iterator(); it.hasNext();) {
Individual savedQuery = (Individual) it.next();
String queryURI = savedQuery.getURI();
String queryLabel = savedQuery.getLabel(null);
%> <option value="<%=queryURI%>"><%=queryLabel%></option> <%
}
} finally {
jenaOntModel.leaveCriticalSection();
}
%>
</select>
<textarea rows="16" cols="40" name="sparqlQueryStr"><c:choose>
<c:when test="${param.sparqlQueryStr != null}">
${param.sparqlQueryStr}
</c:when>
<c:otherwise>
PREFIX rdf: &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX owl: &lt;http://www.w3.org/2002/07/owl#&gt;
PREFIX xsd: &lt;http://www.w3.org/2001/XMLSchema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
</c:otherwise>
</c:choose>
</textarea>
<h3>Select Source Models</h3>
<ul>
<%
List<String> sourceModelNameList = new ArrayList<String>();
String[] sourceModelParamVals = request.getParameterValues("sourceModelName");
if (sourceModelParamVals != null) {
sourceModelNameList.addAll(Arrays.asList(sourceModelParamVals));
}
%>
<li><input type="checkbox" name="sourceModelName" value="vitro:jenaOntModel"
<%
if (sourceModelNameList.contains("vitro:jenaOntModel")) {
%>checked="checked"<%
}
%>
/>webapp model</li>
<li><input type="checkbox" name="sourceModelName" value="vitro:baseOntModel"
<%
if (sourceModelNameList.contains("vitro:baseOntModel")) {
%>checked="checked"<%
}
%>
/>webapp assertions</li>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <li> <input type="checkbox" name="sourceModelName" value="<%=modelName%>"
<%
if (sourceModelNameList.contains(modelName)) {
%> checked="checked" <%
}
%>
/><%=modelName%></li>
<%
}
%>
</ul>
<h3>Select Destination Model</h3>
<select name="destinationModelName">
<option value="vitro:jenaOntModel"
<% if ("vitro:jenaOntModel".equals(request.getParameter("destinationModelName"))) {
%> selected="selected" <%
}
%>
/>webapp model</option>
<option value="vitro:baseOntModel"
<% if ("vitro:baseOntModel".equals(request.getParameter("destinationModelName"))) {
%> selected="selected" <%
}
%>
/>webapp assertions</option>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"
<%
if (modelName.equals(request.getParameter("destinationModelName"))) {
%> selected="selected" <%
}
%>
/><%=modelName%></option>
<%
}
%>
</select>
<c:choose>
<c:when test="${paramValues['reasoning'] != null}">
<c:forEach var="paramValue" items="${paramValues['reasoning']}">
<c:if test="${paramValue eq 'pellet'}">
<p><input type="checkbox" name="reasoning" value="pellet" checked="checked"/> include pellet reasoning </p>
</c:if>
</c:forEach>
</c:when>
<c:otherwise>
<p><input type="checkbox" name="reasoning" value="pellet" /> include Pellet OWL-DL reasoning </p>
</c:otherwise>
</c:choose>
<input type="submit" value="Execute CONSTRUCT"/>

View file

@ -0,0 +1,65 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<h2>Split Property Value Strings into Multiple Property Values</h2>
<form action="ingest" method="get">
<input type="hidden" name="action" value="splitPropertyValues"/>
<h3>Select Source Models</h3>
<ul>
<li><input type="checkbox" name="sourceModelName" value="vitro:jenaOntModel"/>webapp model</li>
<li><input type="checkbox" name="sourceModelName" value="vitro:baseOntModel"/>webapp assertions</li>
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <li> <input type="checkbox" name="sourceModelName" value="<%=modelName%>"/><%=modelName%></li>
<%
}
%>
</ul>
<input type="text" name="propertyURI"/>
<p>Property URI for which Values Should Be Split</p>
<input type="text" name="splitRegex"/>
<p>Regex Pattern on which To Split</p>
<input type="text" name="newPropertyURI"/>
<p>Property URI To Be Used with the Newly-Split Values</p>
<h3></h3>
<p>
<input type="checkbox" name="trim" value="true"/> trim bordering whitespace
</p>
<h3>Select Destination Model</h3>
<select name="destinationModelName">
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"/><%=modelName%></option>
<%
}
%>
</select>
<input type="submit" value="Split Values"/>

View file

@ -0,0 +1,58 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<h2>Subtract One Model from Another</h2>
<form action="ingest" method="get"i>
<input type="hidden" name="action" value="subtractModels"/>
<select name="modela">
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"/><%=modelName%></option>
<%
}
%>
</select>
<p>model to be subtracted from</p>
<select name="modelb">
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"><%=modelName%></option>
<%
}
%>
</select>
<p>model to subtract</p>
<select name="destinationModelName">
<%
for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next();
%> <option value="<%=modelName%>"><%=modelName%></option>
<%
}
%>
</select>
<p>model in which difference should be saved</p>
<input type="submit" value="Subtract models"/>

View file

@ -0,0 +1,49 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.ontology.Individual" %>
<%@ page import="com.hp.hpl.jena.ontology.OntModel" %>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="com.hp.hpl.jena.shared.Lock" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.util.List" %>
<%@ page import="java.net.URLEncoder" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<h2>Execute RDF-Encoded Ingest Workflow</h2>
<form action="ingest" method="get"i>
<input type="hidden" name="action" value="executeWorkflow"/>
<h3>Choose a Workflow Step at Which To Start</h3>
<input type="hidden" name="workflowURI" value="${param.workflowURI}"/>
<select name="workflowStepURI">
<%
OntModel jenaOntModel = (OntModel) getServletContext().getAttribute("jenaOntModel");
jenaOntModel.enterCriticalSection(Lock.READ);
try {
List workflowSteps = (List) request.getAttribute("workflowSteps");
for (Iterator it = workflowSteps.iterator(); it.hasNext();) {
Individual workflowStep = (Individual) it.next();
String workflowStepURI = workflowStep.getURI();
String workflowStepLabel = workflowStep.getLabel(null);
String workflowStepString = (workflowStepLabel != null) ? workflowStepLabel : workflowStepURI;
%> <option value="<%=workflowStepURI%>"><%=workflowStepString%></option> <%
}
} finally {
jenaOntModel.leaveCriticalSection();
}
%>
</select>
<input type="submit" value="Execute Workflow"/>

View file

@ -0,0 +1,33 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.net.URLEncoder" %>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%
ModelMaker maker = (ModelMaker) request.getSession().getAttribute("vitroJenaModelMaker");
if (maker == null) {
maker = (ModelMaker) getServletContext().getAttribute("vitroJenaModelMaker");
}
%>
<p><a href="ingest">Ingest Home</a></p>
<form action="jenaXmlFileUpload" method="post" enctype="multipart/form-data">
<input type="file" name="xmlfile"/>
<select name="targetModel">
<% for (Iterator it = maker.listModels(); it.hasNext(); ) {
String modelName = (String) it.next(); %>
<option value="<%=modelName%>"><%= modelName %></option>
<% } %>
</select>
<input type="submit" name="submit" value="upload XML and convert to RDF"/>
</form>

View file

@ -0,0 +1,17 @@
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
<%@ page import="com.hp.hpl.jena.rdf.model.ModelMaker" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.net.URLEncoder" %>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%
%>
<p>Uploaded XML files and converted to RDF.</p>
<p>Loaded <%= request.getAttribute("statementCount") %> statements to the model <%= request.getAttribute("targetModel") %>.</p>
<p><a href="ingest">Ingest Home</a></p>