On 2022-04-08 5:01 am, 'Richard Nagelmaeker' via TopBraid Suite Users wrote:
Hi,
I'm still looking for a fitting solution. One is to use the SPARQL
RESULT XML, as the output for a CONSTRUCT query. And transform it to
RDF/XML. An other one is to use tbl/service:
Below an example URL: Where 'historie' is the name of a graph.
http://localhost:8099/tbl/service/historie/!/exportToRDF/rdfxml
Though it only returns the requested graph. Is there a way to get all
imports included (graphWithImports) using this service method?
No, this service would only return the base graphs, not the imports closure.
Holger
Thank you and regards,
Richard
On Monday, April 4, 2022 at 4:29:18 PM UTC+2 Richard Nagelmaeker wrote:
Hi Holger,
Thank you for the extensive response.
I'll go with your ADS suggestion:
If you need to continue to use external XSLT, the SPARQL endpoint
itself is NOT an option either, because if you run a CONSTRUCT
there it can only produce abbreviated RDF/XML. However, you could
use this SPARQL function
BIND (<http://topbraid.org/sparqlmotionfunctions#convertRDFToText>
<http://topbraid.org/sparqlmotionfunctions#convertRDFToText>(<http://topbraid.org/sparqlmotionlib#RDFXML>
<http://topbraid.org/sparqlmotionlib#RDFXML>) AS ?s)
btw. I'm well aware of the RDF/XML position in the Linked Data
community. But from a short- and long term cost perspective it's
probably still the best there is. About turtle, my recent opinion
is, that it's actually too good. It's so easy to read, people
accept it as an end result. While it's actually a data format and
as is true for all data formats, it's meant to transfer data
between machines.
If you look at it from that perspective, I think the toolset for
turtle is limited and turtle itself is not extensible.
This is why I prefer XML over Turtle.
Kind regards.
Richard
On Wednesday, March 30, 2022 at 1:20:13 AM UTC+2 Holger Knublauch
wrote:
Hi Richard,
the Jena API that we use under the hood has two dialects of
RDF/XML syntax. One is called "RDF/XML Abbrev" and uses a less
predictable, but more readable format, while the plain RDF/XML
uses rdf:Descriptions that are more regular and thus
attractive for XSLT. As you have found out, the SPARQLMotion
servlet was only supporting the plain RDF/XML syntax.
Side note: The variations of syntax have been a major reason
why RDF/XML has long become very unpopular for many users. In
the early days RDF/XML was the only syntax for RDF and this
backfired to the RDF data model as a general graph data
representation mechanism. Many people have therefore moved to
Turtle syntax.
One strategy to solve whatever you have to solve is to move
the processing into the TopBraid server itself. For example,
instead of having an external XSL processor work on the
results of the SM calls, you could write a JavaScript or SWP
script that operates on the graph itself, regardless of the
syntax, and then produces exactly the output that you really
want. Many TopBraid users seem to be quite content with
JavaScript/ADS, see
https://www.topquadrant.com/doc/7.2/scripting/index.html but
if your XSLT is producing HTML you may also use SWP directly.
If you need to continue to use external XSLT, the SPARQL
endpoint itself is NOT an option either, because if you run a
CONSTRUCT there it can only produce abbreviated RDF/XML.
However, you could use this SPARQL function
BIND
(<http://topbraid.org/sparqlmotionfunctions#convertRDFToText>
<http://topbraid.org/sparqlmotionfunctions#convertRDFToText>(<http://topbraid.org/sparqlmotionlib#RDFXML>
<http://topbraid.org/sparqlmotionlib#RDFXML>) AS ?s)
to produce an RDF/XML string, which you could then return
either from an SWP script or an ADS/JavaScript service. In SWP
it would mean to first collect all relevant triples into
ui:tempGraph using ui:update, and then do
<ui:setContext ui:queryGraph="{= ui:tempGraph }">
<ui:return ui:result="{= smf:convertRDFToText(sml:RDFXML)
}" />
</ui:setContext>
I am not sure what other technical background you have and
whether these pointers are enough, so feel free to follow-up.
Holger
On 2022-03-30 2:24 am, 'Richard Nagelmaeker' via TopBraid
Suite Users wrote:
Hi all,
In EDG 6.4 we used sparqlmotion to retrieve RDF/XML and
process this using some XSLT scripts.
Now we are using EDG 7.1.2 the sparqlmotion option is gone.
So we access the sparql end-point directly. (tbl/sparql).
Using application/rdf+xml in the accept header and posting a
construct query. The RDF/XML produced has a different syntax
form the one produced through sparqlmotion.
I used the Sparql end-point on EDG 6.4.3 as well, this gave
the same result als EDG 7.1.2. So my assumption is that the
difference stems from settings for sparqlmotion.
The RDF/XML from sparqlmotion has every subject wrapped in a
rdf:Description
The RDF/XML from tbl/sparql has no rdf:Description and has
every subject wrapped by it's type, also every subject now
has nested subjects as well.
Is there a way to get the RDF/XML output from Sparqlmotion,
with every subject wrapped in a rdf:Description?
Regards,
Richard
--
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].
To view this discussion on the web visit
https://groups.google.com/d/msgid/topbraid-users/7e1c4f84-e03f-448c-bfb9-9bf9274cbf28n%40googlegroups.com
<https://groups.google.com/d/msgid/topbraid-users/7e1c4f84-e03f-448c-bfb9-9bf9274cbf28n%40googlegroups.com?utm_medium=email&utm_source=footer>.
--
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].
To view this discussion on the web visit
https://groups.google.com/d/msgid/topbraid-users/af113da7-47e0-4aa9-ad58-e7fd870996f5n%40googlegroups.com
<https://groups.google.com/d/msgid/topbraid-users/af113da7-47e0-4aa9-ad58-e7fd870996f5n%40googlegroups.com?utm_medium=email&utm_source=footer>.
--
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].
To view this discussion on the web visit
https://groups.google.com/d/msgid/topbraid-users/7a9badbe-88ba-f406-55a1-236a975c236c%40topquadrant.com.