When developing a UI with a SQL database, if the developer is using an MVC 
pattern, they’re not sending SQL statements to the server and iterating over 
the result set.  Instead, they’re making a request to the server such as 
“getPersonList” and the business logic on the server side is constructing the 
query to the database,  maps the result set to a list of objects (which might 
be in JSON) , and returning those objects to the UI for display.  That really 
isn’t any different when an application has a triple store on the back end 
except that the business logic is running SPARQL (or accessing the data model 
directly) instead of SQL.

With that in mind,  there is a robust example page here 
(http://jena.apache.org/tutorials/rdf_api.html) which provides examples for how 
to read  or write RDF (and much more).  When reading RDF, instead of writing 
the results to standard out, transforming them to objects, then sending them to 
a UI is no different from how one might do it with  a SQL database on the back 
end. 



On 3/20/18, 7:11 AM, "David Moss" <[email protected]> wrote:

    
    
    On 19/3/18, 9:59 pm, "Laura Morales" <[email protected]> wrote:
    
        >TBH I think you're writing to the wrong mailing list. You should write 
to the <insert UI framework here> mailing list, and ask them to provide example 
code to use the UI with a Fuseki    >backend instead of MySQL.
    
    The UI people would, quite rightly, point to any number of examples of 
people using SQL or other custom means of getting information into their 
components.
    Then they would tell me to go to the mailing list for the exotic framework 
I'm interested on promoting and ask the users to contribute some example code.
    
    Which is what I have done.
    The answer seems to be that there isn't any. I can live with that. If I 
find the time I'll write some.
    Then the people in this group can laugh at my efforts and write better 
examples!
    
    DM
        
        Sent: Monday, March 19, 2018 at 12:33 PM
        From: "David Moss" <[email protected]>
        To: [email protected]
        Subject: Re: Example code
        
        On 19/3/18, 5:39 pm, "Lorenz Buehmann" 
<[email protected]> 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" <[email protected]> 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&query=..." http://your-endpoint.org
        >
        >
        >
        > Sent: Sunday, March 18, 2018 at 11:26 PM
        > From: "David Moss" <[email protected]>
        > To: [email protected]
        > Subject: Re: Example code
        >
        > On 18/3/18, 6:24 pm, "Laura Morales" <[email protected]> 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
        >
        >
        >
        >
        >
        >
        >
        >
        >
        >
        >
        >
        >
        
        
        
         
        
    
    
    

Reply via email to