Hi Holger,
Thank you for your answer.
I need to export taxonomy (both all and only separate nodes) to Turtle,
RDFXML and JSON formates.
I need to be able to import exported taxonomies to evn as new ones again.
That's way skos:conceptScheme and skos:hasTopConcept relationships must be
presented in the export result.
If i am exporting all taxonomy as is, there are no problems.
But, If i need to export only separate nodes from taxonomy (that may not
connect to existing hasTopConcept relation), i need to put correct
skos:hasTopConcept relation to be able to import result into evn again.
For these reasons i try to modify resulting file on sml:performUpdate step.
So, using sml:ApplyConstruct, I am not able to pass resulting grapf to next
steps for modifying. I am only able to pass result to the
final sml:ReturnRDF step. Am I correct?
If so, what others features inside of sparqlmotion technology are suitable
for my scenario?
If they don't exists, i will to rewrite on swp.
On Tuesday, April 4, 2017 at 2:48:53 PM UTC+2, Ilya Ushakov wrote:
>
> Hi Everyone,
> I use evn 5.3.
> I try to write sparqlmotion script thats exports exports taxonomies.
> I need to change skos:hasTopConcept property in result set.
> For make this do next:
> 1. For building resultset I use sml:ApplyConstruct with query inside:
>
> CONSTRUCT {
> ?a ?b ?c .
> }
> WHERE {
> {
> SELECT ?a ?b ?c
> WHERE {
> {
> {
> BIND (IRI(?selectedGraph) AS ?graphName) .
> BIND (IRI(?nodeURI) AS ?taxUri) .
> GRAPH ?graphName {
> ?a (skos:broader)* ?taxUri .
> ?a ?b ?c .
> } .
> } .
> }
> UNION
> {
> BIND (IRI(?selectedGraph) AS ?graphName) .
> GRAPH ?graphName {
> ?a a skos:ConceptScheme .
> ?a ?b ?c .
> } .
> } .
> }
> } .
> }
>
> 2. on the next step I try to use the sml:PerformUpdate
> 2.1. In case of using next query:
> DELETE {
> ?a skos:hasTopConcept ?oldValue .
> }
> INSERT {
> ?a skos:hasTopConcept ?newValue .
> }
> WHERE {
> BIND (IRI(?nodeURI) AS ?newValue) .
> ?a ?b ?c .
> ?a skos:hasTopConcept ?oldValue .
>
> }
> I got NullPointerException in log
> org.topbraidlive.sparqlmotion: Exception in SPARQLMotion Servlet
> (java.lang.NullPointerException)
> org.topbraid.spin.sparqlmotion.modules.SMException:
> java.lang.NullPointerException
> at
> org.topbraidlive.sparqlmotion.modules.performUpdate.PerformUpdateModule.execute(PerformUpdateModule.java:76)
> at
> org.topbraid.spin.sparqlmotion.engine.impl.ExecutionEngineImpl.execute(ExecutionEngineImpl.java:203)
> at
> org.topbraid.spin.sparqlmotion.engine.impl.ExecutionEngineImpl.executeModule(ExecutionEngineImpl.java:169)
> at
> org.topbraid.spin.sparqlmotion.engine.impl.ExecutionEngineImpl.execute(ExecutionEngineImpl.java:119)
> at
> org.topbraidlive.sparqlmotion.servlets.sparqlmotion.SPARQLMotionServlet.run(SPARQLMotionServlet.java:342)
> at
> org.topbraidlive.sparqlmotion.servlets.sparqlmotion.SPARQLMotionServlet.doGet(SPARQLMotionServlet.java:249)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
> at
> org.topbraid.auth.servlet.TBAuthEnabledServlet.service(TBAuthEnabledServlet.java:41)
> at
> org.topbraid.eclipsex.servlet.TBHttpServlet.service(TBHttpServlet.java:155)
> at
> org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
> at
> org.eclipse.equinox.http.servlet.internal.HttpServiceRuntimeImpl$LegacyServlet.service(HttpServiceRuntimeImpl.java:1221)
> at
> org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:153)
> at
> org.eclipse.equinox.http.servlet.internal.servlet.ResponseStateHandler.processRequest(ResponseStateHandler.java:62)
> at
> org.eclipse.equinox.http.servlet.internal.context.DispatchTargets.doDispatch(DispatchTargets.java:132)
> at
> org.eclipse.equinox.http.servlet.internal.servlet.ProxyServlet.service(ProxyServlet.java:100)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
> at
> org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:152)
> at
> org.topbraidlive.servletbridge.webapplicationserver.BridgeServlet.service(BridgeServlet.java:259)eServlet.java:352)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
> at
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)lterChain.java:207)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)ava:240)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)java:614)
> at
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)a:88)
> at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
> at
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1458)2)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at
> java.lang.Thread.run(Thread.java:745)read$WrappingRunnable.run(TaskThread.java:61)
> Caused bat
> org.topbraidlive.sparqlmotion.modules.performUpdate.PerformUpdateGraphStore.<init>(PerformUpdateGraphStore.java:105)
> at
> org.topbraidlive.sparqlmotion.modules.performUpdate.PerformUpdateModule.execute(PerformUpdateModule.java:55))
>
> 2.2. In case of using GRAPH keyword inside DELETE and INSERT accoring to
> descrioption of sml:PerformUpdate
>
> DELETE {
> GRAPH ?graphName {
> ?a skos:hasTopConcept ?oldValue .
> } .
> }
> INSERT {
> GRAPH ?graphName {
> ?a skos:hasTopConcept ?newValue .
> } .
> }
> WHERE {
> BIND (IRI(?selectedGraph) AS ?graphName) .
> BIND (IRI(?nodeURI) AS ?newValue) .
> ?a ?b ?c .
> ?a skos:hasTopConcept ?oldValue .
> }
> I got, "Unbound graph variable in sml:PerformUpdate" error message.
>
> org.topbraidlive.sparqlmotion: Exception in SPARQLMotion Servlet (Unbound
> graph variable in sml:PerformUpdate)
> org.topbraid.spin.sparqlmotion.modules.SMException: Unbound graph variable
> in sml:PerformUpdate
> at
> org.topbraidlive.sparqlmotion.modules.performUpdate.PerformUpdateArgs.<init>(PerformUpdateArgs.java:52)
> at
> org.topbraidlive.sparqlmotion.modules.performUpdate.PerformUpdateModule.execute(PerformUpdateModule.java:51)
> at
> org.topbraid.spin.sparqlmotion.engine.impl.ExecutionEngineImpl.execute(ExecutionEngineImpl.java:203)
> at
> org.topbraid.spin.sparqlmotion.engine.impl.ExecutionEngineImpl.executeModule(ExecutionEngineImpl.java:169)
> at
> org.topbraid.spin.sparqlmotion.engine.impl.ExecutionEngineImpl.execute(ExecutionEngineImpl.java:119)
> at
> org.topbraidlive.sparqlmotion.servlets.sparqlmotion.SPARQLMotionServlet.run(SPARQLMotionServlet.java:342)
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:622)tionServlet.doGet(SPARQLMotionServlet.java:249)
> at
> org.topbraid.eclipsex.servlet.TBHttpServlet.service(TBHttpServlet.java:155).java:41)
> at
> org.eclipse.equinox.http.servlet.internal.HttpServiceRuntimeImpl$LegacyServlet.service(HttpServiceRuntimeImpl.java:1221)
> at
> org.eclipse.equinox.http.servlet.internal.servlet.ResponseStateHandler.processRequest(ResponseStateHandler.java:62)
> at
> org.eclipse.equinox.http.servlet.internal.servlet.ProxyServlet.service(ProxyServlet.java:100)java:132)
> at
> org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:152)
> at
> org.topbraidlive.servletbridge.webapplicationserver.BridgeServlet.service(BridgeServlet.java:259)eServlet.java:352)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
> at
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)lterChain.java:207)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)ava:240)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)java:614)
> at
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)a:88)
> at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
> at
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1458)2)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at
> java.lang.Thread.run(Thread.java:745)read$WrappingRunnable.run(TaskThread.java:61)
>
>
> What did i wrong?
>
--
You received this message because you are subscribed to the Google Group
"TopBraid Suite Users", the topics of which include the TopBraid Suite family
of products and its base technologies such as SPARQLMotion, SPARQL Web Pages
and SPIN.
To post to this group, send email to [email protected]
---
You received this message because you are subscribed to the Google Groups
"TopBraid Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.