On 08/01/15 19:50, Lewis John Mcgibbney wrote:
I can extract triples from this CSV and serialize to turtle, ntriples,
trix and json.
The barrier here is serializing this as rdfxml.
Specifically:
Caused by: org.openrdf.rio.RDFHandlerException: Unable to create XML
namespace-qualified name for
predicate:http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvKeywordVersion:8.0
at
org.openrdf.rio.rdfxml.RDFXMLWriter.handleStatement(RDFXMLWriter.java:237)
at
org.apache.any23.writer.RDFWriterTripleHandler.receiveTriple(RDFWriterTripleHandler.java:93)
... 48 more
This is unwritable in RDF/XML because of the predicate.
http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvKeywordVersion:8.0
All properties become qnames in RDF/XML. There is no way round it.
The rules for qnames are quite strict. The local part of a qname must
start with a letter and can not contain a ':'
So for ".../sciencekeywords.csvKeywordVersion:8.0"
there is no split point to make a qname.
Andy
On Thu, Jan 8, 2015 at 11:45 AM, Lewis John Mcgibbney
<[email protected] <mailto:[email protected]>> wrote:
Ah OK, I think that this is our problem.
This only happens under the following conditions
OUTPUT FORMAT: RDFXML
VALIDATION: Validate + Fix
REPORT: Yes
ANNOTATE: Yes
I am going to experiment a bit more with where this goes wrong.
On Thu, Jan 8, 2015 at 11:38 AM, Lewis John Mcgibbney
<[email protected] <mailto:[email protected]>> wrote:
Hi Folks,
With the Any23 webservice [0] when I try to extract triples from
the following CSV [1], I get the following stack trace
<?xml version="1.0" encoding="UTF-8" ?>
<report>
<message>Internal error.</message>
<error>
<![CDATA[
java.lang.RuntimeException: Error while receiving
triplehttp://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvrow/0
http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvKeywordVersion:8.0
"Category"^^<http://www.w3.org/2001/XMLSchema#string>
at
org.apache.any23.extractor.ExtractionResultImpl.writeTriple(ExtractionResultImpl.java:163)
at
org.apache.any23.extractor.ExtractionResultImpl.writeTriple(ExtractionResultImpl.java:171)
at
org.apache.any23.extractor.csv.CSVExtractor.produceRowStatements(CSVExtractor.java:238)
at
org.apache.any23.extractor.csv.CSVExtractor.run(CSVExtractor.java:96)
at
org.apache.any23.extractor.csv.CSVExtractor.run(CSVExtractor.java:51)
at
org.apache.any23.extractor.SingleDocumentExtraction.runExtractor(SingleDocumentExtraction.java:462)
at
org.apache.any23.extractor.SingleDocumentExtraction.run(SingleDocumentExtraction.java:254)
at org.apache.any23.Any23.extract(Any23.java:298)
at org.apache.any23.Any23.extract(Any23.java:450)
at
org.apache.any23.servlet.WebResponder.runExtraction(WebResponder.java:114)
at org.apache.any23.servlet.Servlet.doGet(Servlet.java:79)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:618)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:301)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:74)
at
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:526)
at
org.apache.coyote.ajp.AbstractAjpProcessor.process(AbstractAjpProcessor.java:794)
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:652)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1575)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1533)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.any23.writer.TripleHandlerException: Error while receiving
triplehttp://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvrow/0
http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvKeywordVersion:8.0
"Category"^^<http://www.w3.org/2001/XMLSchema#string>
at
org.apache.any23.filter.ExtractionContextBlocker.receiveTriple(ExtractionContextBlocker.java:106)
at
org.apache.any23.filter.IgnoreAccidentalRDFa.receiveTriple(IgnoreAccidentalRDFa.java:82)
at
org.apache.any23.writer.CompositeTripleHandler.receiveTriple(CompositeTripleHandler.java:89)
at
org.apache.any23.extractor.ExtractionResultImpl.writeTriple(ExtractionResultImpl.java:161)
... 32 more
Caused by:
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipeException:
Error while opening the triple handler
at
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipe.sendTriple(ExtractionContextBlocker.java:248)
at
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipe.receiveTriple(ExtractionContextBlocker.java:197)
at
org.apache.any23.filter.ExtractionContextBlocker.receiveTriple(ExtractionContextBlocker.java:104)
... 35 more
Caused by: org.apache.any23.writer.TripleHandlerException: Error while receiving
triplehttp://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvrow/0
http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvKeywordVersion:8.0
"Category"^^<http://www.w3.org/2001/XMLSchema#string>
at
org.apache.any23.filter.ExtractionContextBlocker.receiveTriple(ExtractionContextBlocker.java:106)
at
org.apache.any23.filter.IgnoreTitlesOfEmptyDocuments.receiveTriple(IgnoreTitlesOfEmptyDocuments.java:62)
at
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipe.sendTriple(ExtractionContextBlocker.java:246)
... 37 more
Caused by:
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipeException:
Error while opening the triple handler
at
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipe.sendTriple(ExtractionContextBlocker.java:248)
at
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipe.receiveTriple(ExtractionContextBlocker.java:197)
at
org.apache.any23.filter.ExtractionContextBlocker.receiveTriple(ExtractionContextBlocker.java:104)
... 39 more
Caused by: org.apache.any23.writer.TripleHandlerException: Error while receiving
triplehttp://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvrow/0
http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvKeywordVersion:8.0
"Category"^^<http://www.w3.org/2001/XMLSchema#string>
at
org.apache.any23.filter.ExtractionContextBlocker.receiveTriple(ExtractionContextBlocker.java:106)
at
org.apache.any23.filter.IgnoreAccidentalRDFa.receiveTriple(IgnoreAccidentalRDFa.java:82)
at
org.apache.any23.writer.CompositeTripleHandler.receiveTriple(CompositeTripleHandler.java:89)
at
org.apache.any23.writer.ReportingTripleHandler.receiveTriple(ReportingTripleHandler.java:96)
at
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipe.sendTriple(ExtractionContextBlocker.java:246)
... 41 more
Caused by:
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipeException:
Error while opening the triple handler
at
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipe.sendTriple(ExtractionContextBlocker.java:248)
at
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipe.receiveTriple(ExtractionContextBlocker.java:197)
at
org.apache.any23.filter.ExtractionContextBlocker.receiveTriple(ExtractionContextBlocker.java:104)
... 45 more
Caused by: org.apache.any23.writer.TripleHandlerException: Error while receiving
triple:http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvrow/0
http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvKeywordVersion:8.0
"Category"^^<http://www.w3.org/2001/XMLSchema#string>http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csv
at
org.apache.any23.writer.RDFWriterTripleHandler.receiveTriple(RDFWriterTripleHandler.java:96)
at
org.apache.any23.filter.ExtractionContextBlocker$ValvedTriplePipe.sendTriple(ExtractionContextBlocker.java:246)
... 47 more
Caused by: org.openrdf.rio.RDFHandlerException: Unable to create XML
namespace-qualified name for
predicate:http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csvKeywordVersion:8.0
at
org.openrdf.rio.rdfxml.RDFXMLWriter.handleStatement(RDFXMLWriter.java:237)
at
org.apache.any23.writer.RDFWriterTripleHandler.receiveTriple(RDFWriterTripleHandler.java:93)
... 48 more
]]>
</error>
<issueReport>
The Any23 service is effectively running of of trunk. Therefore
I am going to head over to the openrdf.rio lists and check this
out out. I just wanted to post it here first though.
Thanks
Lewis
[0] http://any23-vm.apache.org
[1]
http://gcmdservices.gsfc.nasa.gov/static/kms/sciencekeywords/sciencekeywords.csv
--
/Lewis/
--
/Lewis/
--
/Lewis/