Re: Example code

2018-03-19 Thread Paul Tyson
On Mon, 2018-03-19 at 20:01 +1000, David Moss wrote:
> I agree, the technical documentation is not the place to keep basic how-to 
> examples. But with Jena the basic how-to examples seem to be missing entirely.
> I have written GUI applications using the available examples from MYSQL. 
> MYSQL does have this kind of thing if you look. Jena does not.
> 
> Try typing " mysql java gui tutorial" into Google and see what pops up.
> Then try " Jena java gui tutorial" and contrast the results.
> 
Everyone's been on the low end of the learning curve with the RDF
technology stack, but I would advise to set aside the idea that your RDF
solution architecture should look anything like an SQL-based solution.
The RDF stack is web-ready, which means that what you are trying to do
is probably easier than you expect it to be.

If you described your goals, requirements, and constraints in more
detail, maybe we could be of more assistance.

Regards,
--Paul




Re: Example code

2018-03-19 Thread Claude Warren
This may not be a Fuseki/Jena problem directly but it is one I have had to
deal with before.  Being a backend architect/developer I try to stay away
from the UI as much as possible.  However, there comes a time when someone
some where says "So how do I get the data out".  Right now on my €job I
have that question posed and I have an architect who wants to create a
bunch of REST service calls that do nothing but run standard parametrized
queries against Fuseki and present the results to the UI developers.  I
don't think this is the best solution.

I think this is a valid question, and I think it is a tough one to solve.

The shortest answer is probably to look at the Fuseki web app code and see
how it is done  there.

The longer answer is that front end developers will have to understand how
RDF works and some standard vocabularies.

For example: if a UI developer wants to get all the properties of a cow <
http://example.com/Cow> s/he needs to know to query with either:

Select distinct ?property WHERE
?a rdf:type  
?a ?property ?value .

or:

Select distinct ?property WHERE
?property rdfs:domain .

depending on what the UI requirements are.

Next the JSON-LD format, while it is a valid json format, is not what most
UI developers have seen.  A bit of help explaining how to understand what
JSON-LD is saying would go a long way.

Now with all that being said, not all of it belongs in Jena documentation.
But then most of the RDF documentation sites I have seen are not well
maintained, so there is no place to go for good samples.

So, valid and important question, but I fear I don't have much in the way
of an answer as of yet.  I will be discussing this at work and will try to
post information as I develop it.

Claude

On Mon, Mar 19, 2018 at 11:59 AM, Laura Morales  wrote:

> TBH I think you're writing to the wrong mailing list. You should write to
> the  mailing list, and ask them to provide
> example code to use the UI with a Fuseki backend instead of MySQL.
>
>
>
>
> Sent: Monday, March 19, 2018 at 12:33 PM
> From: "David Moss" 
> To: users@jena.apache.org
> Subject: Re: Example code
>
> On 19/3/18, 5:39 pm, "Lorenz Buehmann"  leipzig.de> wrote:
>
> >Well, isn't that the task of the UI logic? You get JSON-LD and now you
> >can visualize it. I don't really see the problem here?
>
> Therein lies the problem. I'm sure _you_ know how to do it.
> How does someone without experience in integrating Jena with UI know how
> to do it?
>
> >dataset -> query -> data -> visualization (table, graph, etc.)
>
> Those are indeed a set of steps. Do you have an example of how to do that
> in java code and load the result into a combobox for selection in a UI?
>
> >Why should this be an example on the Apache Jena documentation?
>
> It shouldn't. It should be stored separately from the Apache Jena
> documentation.
> The Javadoc is for how Jena works internally and how to maintain Jena
> itself.
> I'm talking about examples to help people use Jena in the kind of
> applications people want to use.
>
> One of the dilemmas I have regarding Jena is how to store query results
> locally.
> I could use Jena to query an endpoint, iterate through the ResultSet and
> build POJOs or Tables.
> Or is it better to keep the results in a Model and query that again to
> build UI components?
> Or maybe I should ditch the fancy Jena objects and just get a result as a
> JSON object and work with that?
>
> These are all possibilities, but how is it actually being done in real
> projects? Where are the examples?
>
> A reply like "dataset -> query -> data -> visualization (table, graph,
> etc.)" is very glib, but it doesn't actually have anything in the way of
> example code that can be used by people new to Jena in their own real-world
> programs. That is what I see as missing.
>
>
> DM
>
>
>
>
>
>
>
>
>
>
>
>
> On 19.03.2018 08:31, David Moss wrote:
> > That is certainly a way to get data from a SPARQL endpoint to display in
> a terminal window.
> > It does not store it locally or put it into a user-friendly GUI control
> however.
> > Looks like I might have to roll my own and face the music publicly if
> I'm doing it wrong.
> >
> > I think real-world examples of how to use Jena in a user friendly
> program are essential to advancing the semantic web.
> > Thanks for considering my question.
> >
> > DM
> >
> > On 19/3/18, 4:19 pm, "Laura Morales"  wrote:
> >
> > As far as I know the only way to query a Jena remotely is via HTTP. So,
> install Fuseki and then send a traditional HTTP GET/POST request to it with
> two parameters, "query" and "format". For example
> >
> > $ curl --data "format=json=..." http://your-endpoint.org
> >
> >
> >
> > Sent: Sunday, March 18, 2018 at 11:26 PM
> > From: "David Moss" 
> > To: users@jena.apache.org
> > Subject: Re: Example code
> >
> > On 18/3/18, 6:24 pm, "Laura 

Re: TDB2 and bulk loading

2018-03-19 Thread Davide
I've about 2 triples to load each time. I load data into models with
Jena API, and write data inside a StreamWriter. When the buffer has a
certain size, I load data in the dataset with the Bulkloader. But now I'm
trying to use TDB2 with Loader.Bulkload method to see if there are
improvements, but I've a problem. I retrieve the dataset with
"TDB2Factory.connectDataset(location), and pass it in the Bulkload
function. But I've a ClassCastException in runtime:
"org.apache.jena.tdb2.store.DatasetGraphSwitchable cannot be cast to
org.apache.jena.tdb2.store.DatasetGraphTDB". How can I resolve this?


Fuseki configuration change suggestion

2018-03-19 Thread George News
Hi all,

I would like to make a suggestion for datasets configuration.

When you include a service (assembler, etc.) in run/configuration folder
this service is started on fuseki boot. In this sense, there is a folder
run/database that stores the databases created using the HTTP
administrative interface.

However when you include a .ttl file in run/configuration and the folder
for the tdb:location is not an absolute folder, the TDB is created
directly FUSEKI_HOME. However I guess it should be created under
run/databases. If you include an absolute path then it should be created
where indicated.

• Example 1 (current implementation and expected/desired behaviour)
$ cat /home/jlanza/projects/fuseki/run/configuration/jlanza.ttl
...
<#tdb_dataset_readwrite> rdf:type  tdb:DatasetTDB ;
tdb:location "/home/jlanza/mytdb" ;
tdb:unionDefaultGraph true ;
.
...
$ cd /home/jlanza/projects/fuseki/
$ ./fuseki-server
$ ll /home/jlanza/
.
mytdb
.

• Example 2 (current implementation but a bit confusing as different
from the usage of templates)
$ cat /home/jlanza/projects/fuseki/run/configuration/jlanza.ttl
...
<#tdb_dataset_readwrite> rdf:type  tdb:DatasetTDB ;
tdb:location "mytdb" ;
tdb:unionDefaultGraph true ;
.
...
$ cd /home/jlanza/projects/fuseki/
$ ./fuseki-server
$ ll /home/jlanza/projects/fuseki/
.
mytdb
.

• Example 3 (what I suggest as folder is relative to
FUSEKI_BASE/database, similarly to the templates behaviour)
$ cat /home/jlanza/projects/fuseki/run/configuration/jlanza.ttl
...
<#tdb_dataset_readwrite> rdf:type  tdb:DatasetTDB ;
tdb:location "mytdb" ;
tdb:unionDefaultGraph true ;
.
...
$ cd /home/jlanza/projects/fuseki/
$ ./fuseki-server
$ ll /home/jlanza/projects/fuseki/run/databases
.
mytdb
.

Thanks
Jorge







Re: TDB2 and bulk loading

2018-03-19 Thread ajs6f
100M characters isn't a common measure of RDF, because the number of triples 
that represents will depend radically on the kind of RDF loaded (how many 
literal objects, how large they are, etc.).

 How many lines of N-Triples are you loading? 

What does "passed to Bulkloader function with a serialization" mean? Please 
show us actual code. Is there a reason you aren't using the CLI utilities 
provided?

What are your requirements? What is the larger process or application of which 
this is a part?

ajs6f

> On Mar 19, 2018, at 7:14 AM, Davide  wrote:
> 
> To load more than 100 milion of characters to triples in N-TRIPLE format into
> a not empty dataset, passed to Bulkloader function with a serialization, it
> also takes more than 10 minutes.
> So, I would like to ask if I use the bulkloader with TDB2, I can obtain
> improvements.
> The hardware is a common notebook with 8gb of RAM, without SSD and with an
> Intel Core i7-4510U with 2.00GHz.
> 
> 2018-03-19 11:54 GMT+01:00 Dick Murray :
> 
>> Slow needs to be qualified. Slow because you need to load 1MT in 10s? What
>> hardware? What environment? Are you loading a line based serialization? Are
>> you loading from scratch or appending?
>> 
>> D
>> 
>> On Mon, 19 Mar 2018, 10:51 Davide,  wrote:
>> 
>>> Hi,
>>> What is the best way to perform the bulk loading with TDB2 and Java API?
>>> Because I used the bulkloader with TDB1, but when I store data, it's too
>>> slow.
>>> 
>> 



Re: Example code

2018-03-19 Thread Laura Morales
TBH I think you're writing to the wrong mailing list. You should write to the 
 mailing list, and ask them to provide example code 
to use the UI with a Fuseki backend instead of MySQL.

 
 

Sent: Monday, March 19, 2018 at 12:33 PM
From: "David Moss" 
To: users@jena.apache.org
Subject: Re: Example code

On 19/3/18, 5:39 pm, "Lorenz Buehmann"  
wrote:

>Well, isn't that the task of the UI logic? You get JSON-LD and now you
>can visualize it. I don't really see the problem here?

Therein lies the problem. I'm sure _you_ know how to do it.
How does someone without experience in integrating Jena with UI know how to do 
it?

>dataset -> query -> data -> visualization (table, graph, etc.)

Those are indeed a set of steps. Do you have an example of how to do that in 
java code and load the result into a combobox for selection in a UI?

>Why should this be an example on the Apache Jena documentation?

It shouldn't. It should be stored separately from the Apache Jena documentation.
The Javadoc is for how Jena works internally and how to maintain Jena itself.
I'm talking about examples to help people use Jena in the kind of applications 
people want to use.

One of the dilemmas I have regarding Jena is how to store query results locally.
I could use Jena to query an endpoint, iterate through the ResultSet and build 
POJOs or Tables.
Or is it better to keep the results in a Model and query that again to build UI 
components?
Or maybe I should ditch the fancy Jena objects and just get a result as a JSON 
object and work with that?

These are all possibilities, but how is it actually being done in real 
projects? Where are the examples?

A reply like "dataset -> query -> data -> visualization (table, graph, etc.)" 
is very glib, but it doesn't actually have anything in the way of example code 
that can be used by people new to Jena in their own real-world programs. That 
is what I see as missing.


DM












On 19.03.2018 08:31, David Moss wrote:
> That is certainly a way to get data from a SPARQL endpoint to display in a 
> terminal window.
> It does not store it locally or put it into a user-friendly GUI control 
> however.
> Looks like I might have to roll my own and face the music publicly if I'm 
> doing it wrong.
>
> I think real-world examples of how to use Jena in a user friendly program are 
> essential to advancing the semantic web.
> Thanks for considering my question.
>
> DM
>
> On 19/3/18, 4:19 pm, "Laura Morales"  wrote:
>
> As far as I know the only way to query a Jena remotely is via HTTP. So, 
> install Fuseki and then send a traditional HTTP GET/POST request to it with 
> two parameters, "query" and "format". For example
>
> $ curl --data "format=json=..." http://your-endpoint.org
>
>
>
> Sent: Sunday, March 18, 2018 at 11:26 PM
> From: "David Moss" 
> To: users@jena.apache.org
> Subject: Re: Example code
>
> On 18/3/18, 6:24 pm, "Laura Morales"  wrote:
>
> >> For example, when using data from a SPARQL endpoint, what is the accepted
> >> way to retrieve it, store it locally and make it available through user
> >> interface controls?
>
> >Make a query that returns a jsonld document.
>
> How? Do you have some example code showing how this query is retrieved, dealt 
> with locally and made available to an end user through a GUI control?
> What I am looking for here is a bridge between what experts glean from 
> reading Javadoc and what ordinary people need to use Jena within a GUI based 
> application.
>
> I see this kind of example as the missing link that prevents anyone other 
> than expert using Jena.
> So long as easy to follow examples of how to get from an rdf triplestore to 
> information displayed on a screen in a standard GUI way are missing, Jena 
> will remain a plaything for expert enthusiasts.
>
> DM
>
>
>
>
>
>
>
>
>
>
>
>
>



 


Re: Example code

2018-03-19 Thread Martynas Jusevičius
David,

I gave you links but I take you haven't looked. The Web-Client project
specifically renders RDF as HTML. The crucial class is this:
https://github.com/AtomGraph/Web-Client/blob/master/src/main/java/com/atomgraph/client/writer/ModelXSLTWriter.java

If you are looking to write generic software, you definitely want to render
Model and not ResultSet. With ResultSet you only get a plain old table,
with all the graph relationships stripped away.

It also helps to think about the UI as a function of the data. HTML webpage
is just one more transformation applied to the Linked Data RDF description.

On Mon, Mar 19, 2018 at 12:33 PM, David Moss  wrote:

>
>
> On 19/3/18, 5:39 pm, "Lorenz Buehmann"  leipzig.de> wrote:
>
> >Well, isn't that the task of the UI logic? You get JSON-LD and now you
> >can visualize it. I don't really see the problem here?
>
> Therein lies the problem. I'm sure _you_ know how to do it.
> How does someone without experience in integrating Jena with UI know how
> to do it?
>
> >dataset -> query -> data -> visualization (table, graph, etc.)
>
> Those are indeed a set of steps. Do you have an example of how to do that
> in java code and load the result into a combobox for selection in a UI?
>
> >Why should this be an example on the Apache Jena documentation?
>
> It shouldn't. It should be stored separately from the Apache Jena
> documentation.
> The Javadoc is for how Jena works internally and how to maintain Jena
> itself.
> I'm talking about examples to help people use Jena in the kind of
> applications people want to use.
>
> One of the dilemmas I have regarding Jena is how to store query results
> locally.
> I could use Jena to query an endpoint, iterate through the ResultSet and
> build POJOs or Tables.
> Or is it better to keep the results in a Model and query that again to
> build UI components?
> Or maybe I should ditch the fancy Jena objects and just get a result as a
> JSON object and work with that?
>
> These are all possibilities, but how is it actually being done in real
> projects? Where are the examples?
>
> A reply like "dataset -> query -> data -> visualization (table, graph,
> etc.)"  is very glib, but it doesn't actually have anything in the way of
> example code that can be used by people new to Jena in their own real-world
> programs. That is what I see as missing.
>
>
> DM
>
>
>
>
>
>
>
>
>
>
>
>
> On 19.03.2018 08:31, David Moss wrote:
> > That is certainly a way to get data from a SPARQL endpoint to
> display in a terminal window.
> > It does not store it locally or put it into a user-friendly GUI
> control however.
> > Looks like I might have to roll my own and face the music publicly
> if I'm doing it wrong.
> >
> > I think real-world examples of how to use Jena in a user friendly
> program are essential to advancing the semantic web.
> > Thanks for considering my question.
> >
> > DM
> >
> > On 19/3/18, 4:19 pm, "Laura Morales"  wrote:
> >
> > As far as I know the only way to query a Jena remotely is via
> HTTP. So, install Fuseki and then send a traditional HTTP GET/POST request
> to it with two parameters, "query" and "format". For example
> >
> > $ curl --data "format=json=..." http://your-endpoint.org
> >
> >
> >
> > Sent: Sunday, March 18, 2018 at 11:26 PM
> > From: "David Moss" 
> > To: users@jena.apache.org
> > Subject: Re: Example code
> >
> > On 18/3/18, 6:24 pm, "Laura Morales"  wrote:
> >
> > >> For example, when using data from a SPARQL endpoint, what is
> the accepted
> > >> way to retrieve it, store it locally and make it available
> through user
> > >> interface controls?
> >
> > >Make a query that returns a jsonld document.
> >
> > How? Do you have some example code showing how this query is
> retrieved, dealt with locally and made available to an end user through a
> GUI control?
> > What I am looking for here is a bridge between what experts
> glean from reading Javadoc and what ordinary people need to use Jena within
> a GUI based application.
> >
> > I see this kind of example as the missing link that prevents
> anyone other than expert using Jena.
> > So long as easy to follow examples of how to get from an rdf
> triplestore to information displayed on a screen in a standard GUI way are
> missing, Jena will remain a plaything for expert enthusiasts.
> >
> > DM
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
>
>
>
>
>


Re: Example code

2018-03-19 Thread David Moss


On 19/3/18, 5:39 pm, "Lorenz Buehmann"  
wrote:

>Well, isn't that the task of the UI logic? You get JSON-LD and now you
>can visualize it. I don't really see the problem here?

Therein lies the problem. I'm sure _you_ know how to do it.
How does someone without experience in integrating Jena with UI know how to do 
it?

>dataset -> query -> data -> visualization (table, graph, etc.)

Those are indeed a set of steps. Do you have an example of how to do that in 
java code and load the result into a combobox for selection in a UI?

>Why should this be an example on the Apache Jena documentation?

It shouldn't. It should be stored separately from the Apache Jena documentation.
The Javadoc is for how Jena works internally and how to maintain Jena itself.
I'm talking about examples to help people use Jena in the kind of applications 
people want to use.

One of the dilemmas I have regarding Jena is how to store query results locally.
I could use Jena to query an endpoint, iterate through the ResultSet and build 
POJOs or Tables.
Or is it better to keep the results in a Model and query that again to build UI 
components?
Or maybe I should ditch the fancy Jena objects and just get a result as a JSON 
object and work with that?

These are all possibilities, but how is it actually being done in real 
projects? Where are the examples?

A reply like "dataset -> query -> data -> visualization (table, graph, etc.)"  
is very glib, but it doesn't actually have anything in the way of example code 
that can be used by people new to Jena in their own real-world programs. That 
is what I see as missing. 


DM












On 19.03.2018 08:31, David Moss wrote:
> That is certainly a way to get data from a SPARQL endpoint to display in 
a terminal window.
> It does not store it locally or put it into a user-friendly GUI control 
however.
> Looks like I might have to roll my own and face the music publicly if I'm 
doing it wrong.
>
> I think real-world examples of how to use Jena in a user friendly program 
are essential to advancing the semantic web.
> Thanks for considering my question.
>
> DM
>
> On 19/3/18, 4:19 pm, "Laura Morales"  wrote:
>
> As far as I know the only way to query a Jena remotely is via HTTP. 
So, install Fuseki and then send a traditional HTTP GET/POST request to it with 
two parameters, "query" and "format". For example
> 
> $ curl --data "format=json=..." http://your-endpoint.org
>  
>  
> 
> Sent: Sunday, March 18, 2018 at 11:26 PM
> From: "David Moss" 
> To: users@jena.apache.org
> Subject: Re: Example code
> 
> On 18/3/18, 6:24 pm, "Laura Morales"  wrote:
> 
> >> For example, when using data from a SPARQL endpoint, what is the 
accepted
> >> way to retrieve it, store it locally and make it available through 
user
> >> interface controls?
> 
> >Make a query that returns a jsonld document.
> 
> How? Do you have some example code showing how this query is 
retrieved, dealt with locally and made available to an end user through a GUI 
control?
> What I am looking for here is a bridge between what experts glean 
from reading Javadoc and what ordinary people need to use Jena within a GUI 
based application.
> 
> I see this kind of example as the missing link that prevents anyone 
other than expert using Jena.
> So long as easy to follow examples of how to get from an rdf 
triplestore to information displayed on a screen in a standard GUI way are 
missing, Jena will remain a plaything for expert enthusiasts.
> 
> DM
> 
> 
> 
> 
> 
> 
> 
> 
>  
> 
>
>
>






Re: TDB2 and bulk loading

2018-03-19 Thread Davide
To load more than 100 milion of characters to triples in N-TRIPLE format into
a not empty dataset, passed to Bulkloader function with a serialization, it
also takes more than 10 minutes.
So, I would like to ask if I use the bulkloader with TDB2, I can obtain
improvements.
The hardware is a common notebook with 8gb of RAM, without SSD and with an
Intel Core i7-4510U with 2.00GHz.

2018-03-19 11:54 GMT+01:00 Dick Murray :

> Slow needs to be qualified. Slow because you need to load 1MT in 10s? What
> hardware? What environment? Are you loading a line based serialization? Are
> you loading from scratch or appending?
>
> D
>
> On Mon, 19 Mar 2018, 10:51 Davide,  wrote:
>
> > Hi,
> > What is the best way to perform the bulk loading with TDB2 and Java API?
> > Because I used the bulkloader with TDB1, but when I store data, it's too
> > slow.
> >
>


Re: TDB2 and bulk loading

2018-03-19 Thread Dick Murray
Slow needs to be qualified. Slow because you need to load 1MT in 10s? What
hardware? What environment? Are you loading a line based serialization? Are
you loading from scratch or appending?

D

On Mon, 19 Mar 2018, 10:51 Davide,  wrote:

> Hi,
> What is the best way to perform the bulk loading with TDB2 and Java API?
> Because I used the bulkloader with TDB1, but when I store data, it's too
> slow.
>


TDB2 and bulk loading

2018-03-19 Thread Davide
Hi,
What is the best way to perform the bulk loading with TDB2 and Java API?
Because I used the bulkloader with TDB1, but when I store data, it's too
slow.


Re: Example code

2018-03-19 Thread David Moss
I agree, the technical documentation is not the place to keep basic how-to 
examples. But with Jena the basic how-to examples seem to be missing entirely.
I have written GUI applications using the available examples from MYSQL. MYSQL 
does have this kind of thing if you look. Jena does not.

Try typing " mysql java gui tutorial" into Google and see what pops up.
Then try " Jena java gui tutorial" and contrast the results.

The MySQL fans have done the groundwork to attract beginning programmers to 
their ecosystem. I think it is time the Jena fans did something similar.

DM


On 19/3/18, 6:56 pm, "Kevin Dreßler"  wrote:

> 
> On 19. Mar 2018, at 08:31, David Moss  wrote:
> 
> [...]
>I see this kind of example as the missing link that prevents anyone 
other than expert using Jena.
>So long as easy to follow examples of how to get from an rdf 
triplestore to information displayed on a screen in a standard GUI way are 
missing, Jena will remain a plaything for expert enthusiasts.

By that argumentation MySQL will also forever remain a plaything for expert 
enthusiasts, as I couldn't find any example in their documentation about how 
you set up GUI controls with values obtained from MySQL.
What you are after is probably a kind of end-to-end tutorial to a certain 
tech stack and I agree that there are probably far less of those for linked 
data tech stacks than for more traditional ways of doing things. But the Apache 
Jena documentation is certainly not the right place for such content just as 
you won't find complete AMP stack tutorials in the MySQL documentation.




Re: Example code

2018-03-19 Thread Daan Reid
I'm not sure whether you're after is something that corresponds 
one-to-one between RDF triples and what the user sees, or something more 
functional, but if you want to see an example of using Jena as data 
store for an application, it might be interesting to look at our system 
ADDIS:

https://addis.drugis.org/

We use an RDF data store to persist clinical trials study data in a 
structured manner, then retrieve it with SPARQL and render it in 
angularJS. Code is here:

https://github.com/drugis/addis-core

Resultset to Java:
https://github.com/drugis/addis-core/blob/master/src/main/java/org/drugis/addis/trialverse/service/impl/QueryResultMappingServiceImpl.java

Jena graph to and from usable frontend data objects in JS:
https://github.com/drugis/addis-core/blob/master/src/main/webapp/resources/app/js/outcome/outcomeService.js

Note that the system is somewhat large by now so extracting simple 
examples isn't easy.


Regards,

Daan Reid
http://drugis.org

On 19-03-18 08:31, David Moss wrote:

That is certainly a way to get data from a SPARQL endpoint to display in a 
terminal window.
It does not store it locally or put it into a user-friendly GUI control however.
Looks like I might have to roll my own and face the music publicly if I'm doing 
it wrong.

I think real-world examples of how to use Jena in a user friendly program are 
essential to advancing the semantic web.
Thanks for considering my question.

DM

On 19/3/18, 4:19 pm, "Laura Morales"  wrote:

 As far as I know the only way to query a Jena remotely is via HTTP. So, install Fuseki and 
then send a traditional HTTP GET/POST request to it with two parameters, "query" and 
"format". For example
 
 $ curl --data "format=json=..." http://your-endpoint.org
  
  
 
 Sent: Sunday, March 18, 2018 at 11:26 PM

 From: "David Moss" 
 To: users@jena.apache.org
 Subject: Re: Example code
 
 On 18/3/18, 6:24 pm, "Laura Morales"  wrote:
 
 >> For example, when using data from a SPARQL endpoint, what is the accepted

 >> way to retrieve it, store it locally and make it available through user
 >> interface controls?
 
 >Make a query that returns a jsonld document.
 
 How? Do you have some example code showing how this query is retrieved, dealt with locally and made available to an end user through a GUI control?

 What I am looking for here is a bridge between what experts glean from 
reading Javadoc and what ordinary people need to use Jena within a GUI based 
application.
 
 I see this kind of example as the missing link that prevents anyone other than expert using Jena.

 So long as easy to follow examples of how to get from an rdf triplestore 
to information displayed on a screen in a standard GUI way are missing, Jena 
will remain a plaything for expert enthusiasts.
 
 DM
 
 
 
 
 
 
 
 
  
 





Re: Example code

2018-03-19 Thread Kevin Dreßler
> 
> On 19. Mar 2018, at 08:31, David Moss  wrote:
> 
> [...]
>I see this kind of example as the missing link that prevents anyone other 
> than expert using Jena.
>So long as easy to follow examples of how to get from an rdf triplestore 
> to information displayed on a screen in a standard GUI way are missing, Jena 
> will remain a plaything for expert enthusiasts.

By that argumentation MySQL will also forever remain a plaything for expert 
enthusiasts, as I couldn't find any example in their documentation about how 
you set up GUI controls with values obtained from MySQL.
What you are after is probably a kind of end-to-end tutorial to a certain tech 
stack and I agree that there are probably far less of those for linked data 
tech stacks than for more traditional ways of doing things. But the Apache Jena 
documentation is certainly not the right place for such content just as you 
won't find complete AMP stack tutorials in the MySQL documentation.

Re: Example code

2018-03-19 Thread Laura Morales
Sorry, but I don't understand your problem. Jena/Fuseki is a server, what 
you're trying to do seems to me very clearly a client-side thing. Why would the 
server store any user UI? If you're using a javascript framework, you simply 
send a GET request, get JSON in return, and bind these values to the framework 
(on the client side). Similar to any other UI program. The point of a database 
is to retrieve data, not to format it nicely for your UI. Just out of 
curiosity, how do you use traditional RDBMes? Do you expect them to format HTML 
templates for you?

On the other hand, if what you meant is simply to improve the documentation 
with some demo apps, then I agree that it could be useful to see how others are 
using Jena/Fuseki in their projects.
 
 

Sent: Monday, March 19, 2018 at 8:31 AM
From: "David Moss" 
To: users@jena.apache.org
Subject: Re: Example code
That is certainly a way to get data from a SPARQL endpoint to display in a 
terminal window.
It does not store it locally or put it into a user-friendly GUI control however.
Looks like I might have to roll my own and face the music publicly if I'm doing 
it wrong.

I think real-world examples of how to use Jena in a user friendly program are 
essential to advancing the semantic web.
Thanks for considering my question.


Re: Example code

2018-03-19 Thread Lorenz Buehmann
Well, isn't that the task of the UI logic? You get JSON-LD and now you
can visualize it. I don't really see the problem here?

dataset -> query -> data -> visualization (table, graph, etc.)

Why should this be an example on the Apache Jena documentation?


On 19.03.2018 08:31, David Moss wrote:
> That is certainly a way to get data from a SPARQL endpoint to display in a 
> terminal window.
> It does not store it locally or put it into a user-friendly GUI control 
> however.
> Looks like I might have to roll my own and face the music publicly if I'm 
> doing it wrong.
>
> I think real-world examples of how to use Jena in a user friendly program are 
> essential to advancing the semantic web.
> Thanks for considering my question.
>
> DM
>
> On 19/3/18, 4:19 pm, "Laura Morales"  wrote:
>
> As far as I know the only way to query a Jena remotely is via HTTP. So, 
> install Fuseki and then send a traditional HTTP GET/POST request to it with 
> two parameters, "query" and "format". For example
> 
> $ curl --data "format=json=..." http://your-endpoint.org
>  
>  
> 
> Sent: Sunday, March 18, 2018 at 11:26 PM
> From: "David Moss" 
> To: users@jena.apache.org
> Subject: Re: Example code
> 
> On 18/3/18, 6:24 pm, "Laura Morales"  wrote:
> 
> >> For example, when using data from a SPARQL endpoint, what is the 
> accepted
> >> way to retrieve it, store it locally and make it available through user
> >> interface controls?
> 
> >Make a query that returns a jsonld document.
> 
> How? Do you have some example code showing how this query is retrieved, 
> dealt with locally and made available to an end user through a GUI control?
> What I am looking for here is a bridge between what experts glean from 
> reading Javadoc and what ordinary people need to use Jena within a GUI based 
> application.
> 
> I see this kind of example as the missing link that prevents anyone other 
> than expert using Jena.
> So long as easy to follow examples of how to get from an rdf triplestore 
> to information displayed on a screen in a standard GUI way are missing, Jena 
> will remain a plaything for expert enthusiasts.
> 
> DM
> 
> 
> 
> 
> 
> 
> 
> 
>  
> 
>
>
>



Re: Example code

2018-03-19 Thread David Moss
That is certainly a way to get data from a SPARQL endpoint to display in a 
terminal window.
It does not store it locally or put it into a user-friendly GUI control however.
Looks like I might have to roll my own and face the music publicly if I'm doing 
it wrong.

I think real-world examples of how to use Jena in a user friendly program are 
essential to advancing the semantic web.
Thanks for considering my question.

DM

On 19/3/18, 4:19 pm, "Laura Morales"  wrote:

As far as I know the only way to query a Jena remotely is via HTTP. So, 
install Fuseki and then send a traditional HTTP GET/POST request to it with two 
parameters, "query" and "format". For example

$ curl --data "format=json=..." http://your-endpoint.org
 
 

Sent: Sunday, March 18, 2018 at 11:26 PM
From: "David Moss" 
To: users@jena.apache.org
Subject: Re: Example code

On 18/3/18, 6:24 pm, "Laura Morales"  wrote:

>> For example, when using data from a SPARQL endpoint, what is the accepted
>> way to retrieve it, store it locally and make it available through user
>> interface controls?

>Make a query that returns a jsonld document.

How? Do you have some example code showing how this query is retrieved, 
dealt with locally and made available to an end user through a GUI control?
What I am looking for here is a bridge between what experts glean from 
reading Javadoc and what ordinary people need to use Jena within a GUI based 
application.

I see this kind of example as the missing link that prevents anyone other 
than expert using Jena.
So long as easy to follow examples of how to get from an rdf triplestore to 
information displayed on a screen in a standard GUI way are missing, Jena will 
remain a plaything for expert enthusiasts.

DM








 





Re: Example code

2018-03-19 Thread Laura Morales
As far as I know the only way to query a Jena remotely is via HTTP. So, install 
Fuseki and then send a traditional HTTP GET/POST request to it with two 
parameters, "query" and "format". For example

$ curl --data "format=json=..." http://your-endpoint.org
 
 

Sent: Sunday, March 18, 2018 at 11:26 PM
From: "David Moss" 
To: users@jena.apache.org
Subject: Re: Example code

On 18/3/18, 6:24 pm, "Laura Morales"  wrote:

>> For example, when using data from a SPARQL endpoint, what is the accepted
>> way to retrieve it, store it locally and make it available through user
>> interface controls?

>Make a query that returns a jsonld document.

How? Do you have some example code showing how this query is retrieved, dealt 
with locally and made available to an end user through a GUI control?
What I am looking for here is a bridge between what experts glean from reading 
Javadoc and what ordinary people need to use Jena within a GUI based 
application.

I see this kind of example as the missing link that prevents anyone other than 
expert using Jena.
So long as easy to follow examples of how to get from an rdf triplestore to 
information displayed on a screen in a standard GUI way are missing, Jena will 
remain a plaything for expert enthusiasts.

DM