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:
commit
4f2e303079
1839 changed files with 235630 additions and 0 deletions
30
webapp/web/jenaIngest/connectDB.jsp
Normal file
30
webapp/web/jenaIngest/connectDB.jsp
Normal 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"/>
|
9
webapp/web/jenaIngest/createModel.jsp
Normal file
9
webapp/web/jenaIngest/createModel.jsp
Normal 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>
|
66
webapp/web/jenaIngest/csv2rdf.jsp
Normal file
66
webapp/web/jenaIngest/csv2rdf.jsp
Normal 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"/>
|
46
webapp/web/jenaIngest/executeWorkflow.jsp
Normal file
46
webapp/web/jenaIngest/executeWorkflow.jsp
Normal 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 >"/>
|
36
webapp/web/jenaIngest/exportSelection.jsp
Normal file
36
webapp/web/jenaIngest/exportSelection.jsp
Normal 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>
|
53
webapp/web/jenaIngest/generateTBox.jsp
Normal file
53
webapp/web/jenaIngest/generateTBox.jsp
Normal 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"/>
|
20
webapp/web/jenaIngest/ingestMenu.jsp
Normal file
20
webapp/web/jenaIngest/ingestMenu.jsp
Normal 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>
|
||||
|
||||
|
89
webapp/web/jenaIngest/listModels.jsp
Normal file
89
webapp/web/jenaIngest/listModels.jsp
Normal 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> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</li> <%
|
||||
}
|
||||
%>
|
||||
</ul>
|
21
webapp/web/jenaIngest/loadRDFData.jsp
Normal file
21
webapp/web/jenaIngest/loadRDFData.jsp
Normal 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>
|
73
webapp/web/jenaIngest/processStrings.jsp
Normal file
73
webapp/web/jenaIngest/processStrings.jsp
Normal 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"/>
|
57
webapp/web/jenaIngest/renameBNodes.jsp
Normal file
57
webapp/web/jenaIngest/renameBNodes.jsp
Normal 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"/>
|
53
webapp/web/jenaIngest/smushSingleModel.jsp
Normal file
53
webapp/web/jenaIngest/smushSingleModel.jsp
Normal 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"/>
|
166
webapp/web/jenaIngest/sparqlConstruct.jsp
Normal file
166
webapp/web/jenaIngest/sparqlConstruct.jsp
Normal 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: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
||||
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
||||
PREFIX owl: <http://www.w3.org/2002/07/owl#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
|
||||
</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"/>
|
||||
|
65
webapp/web/jenaIngest/splitPropertyValues.jsp
Normal file
65
webapp/web/jenaIngest/splitPropertyValues.jsp
Normal 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"/>
|
58
webapp/web/jenaIngest/subtractModels.jsp
Normal file
58
webapp/web/jenaIngest/subtractModels.jsp
Normal 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"/>
|
49
webapp/web/jenaIngest/workflowStep.jsp
Normal file
49
webapp/web/jenaIngest/workflowStep.jsp
Normal 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"/>
|
33
webapp/web/jenaIngest/xmlFileUpload.jsp
Normal file
33
webapp/web/jenaIngest/xmlFileUpload.jsp
Normal 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>
|
||||
|
17
webapp/web/jenaIngest/xmlFileUploadSuccess.jsp
Normal file
17
webapp/web/jenaIngest/xmlFileUploadSuccess.jsp
Normal 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>
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue