[ 
https://issues.apache.org/jira/browse/JENA-420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13809596#comment-13809596
 ] 

Andy Seaborne commented on JENA-420:
------------------------------------

_(this is a rough description - do not assume details are stable or even 
consistent)_
h2. Server Configuration

A server is a collection of datasets+services.  Some of these can be active, 
some inactive.
Each corresponds to the current assembler {{fuseki:Service}}.

Example:
{noformat}
<#service_tdb_all> rdf:type fuseki:Service ;
    rdfs:label                      "TDB Database (RW)" ;
    fuseki:name                     "ds" ;
    fuseki:serviceQuery             "query" ;
    fuseki:serviceQuery             "sparql" ;
    fuseki:serviceUpdate            "update" ;
    fuseki:serviceUpload            "upload" ;
    fuseki:serviceReadWriteGraphStore      "data" ;
    fuseki:serviceReadGraphStore           "get" ;
    fuseki:dataset           <#tdb_dataset_readwrite> ;
    .

<#tdb_dataset_readwrite> rdf:type      tdb:DatasetTDB ;
    tdb:location "DB2" ;
    tdb:unionDefaultGraph true ;
    .
{noformat}

h3. HTTP actions

Each configurations has a unique number (UUID) and an index (1 to N).

On the admin port:

{{GET /server/datasets}}  returns a JSON array of configurations.

{{GET /server/datasets/1234-5678}} returns one service configuration with UUID 
1234-5678.

{{PUT /server/datasets/1234-5678}} replaces a configuration.

{{POST /server/datasets}} adds a configuration, and returns it's 
server-allocated UUID.

h3. JSON data elements

Using {{x.y}} to structure the names ...

h4. Service Set

Example: {{http://server/ds/sparql}} has a dataset with external name {{ds}} 
and a particular service endpoint {{sparql}}.

{noformat}
{ "dataset.name" : "ds" ,           Part of URL
  "id"           : "uuid" ,         Implies the assembler file.
  
  "services" : [                    Array of services.
    ... services ...
  ] ,
  "dataset" : { "ds.ref" : ... }    The dataset
}
{noformat}

h4. Dataset

{noformat}
{ "ds.ref"  : ... UUID ...
  "ds.type" : "tdb" ,
   /* file name : relative to FUSEKI/databases/ ; maybe absolute */
  "ds.tdb.location" : "DB" ,
  "ds.tdb.dftUnionGraph" : true ,
}
{noformat}

h4. Service

{noformat}
{ "svc.ref" : "sparql" ,
  "svc.type" : "query" }
{noformat}


> Web-based User Interface for Jena Fuseki
> ----------------------------------------
>
>                 Key: JENA-420
>                 URL: https://issues.apache.org/jira/browse/JENA-420
>             Project: Apache Jena
>          Issue Type: New Feature
>          Components: Fuseki
>            Reporter: Stephen Allen
>              Labels: gsoc2013, java, javascript, mentor, rdf, sparql, 
> velocity, web
>         Attachments: fuseki1.png, fuseki2.png, fuseki3.png, fuseki4.png
>
>
> Fuseki could use an overhaul / rewrite of the web interface.  It would be 
> great to design a nice web-based GUI interface for both querying/exploring 
> the data and for managing Fuseki itself.
> Tools and skills that may be required:
> Java, HTML+CSS, Javascript, Velocity (templates used server-side in place of 
> JSP)
> A few ideas to get started:
> 1) Resource Explorer
> This interface allows the user to select any resource from either a list of 
> all triples in a graph, or from the results of a SPARQL query.  After 
> selecting the resource, they can view all of the statements that reference 
> the resource.
> 2) Improved Query Input
> It would be great to enhance the query input form for both queries and 
> updates.  Some features here that could be useful would be an IDE-like input 
> box that performed syntax highlighting, automatic indentation, and easy 
> commenting out of selected lines of text.  Additionally being able to 
> pre-populate the input box with the user's commonly used prefixes would be 
> great (stored in a cookie or some such).
> 3) Improved Query Results
> Better display of query results (especially SELECT queries).  Already 
> mentioned was a tie-in to the Resource Explorer, so a user can easily see the 
> statements about some interesting resource in the results.  But it would also 
> be great to layout and format the result table better.  Even display the 
> results on the same page as the query input box using AJAX.  Or allow the 
> table to be resorted after the query results have been returned.  Also 
> display the total number of rows.
> 4) Query Management
> View and manage currently running queries.  Display how long queries have 
> been executing, and allow the user to cancel queries that may be taking too 
> long.
> 5) Fuseki Management
> There are many tasks here that would be great.  Expose JVM properties via JMX 
> in a nice UI.  Things like CPU/Memory usage, disk space remaining, etc.   
> Allow initiation of back-up tasks.  Allow the user to download a snapshot of 
> the repository.  Shut down the server.  Possibly add and remove datasets 
> dynamically.
> Attached are screenshots indicating the current UI and the workflow for 
> issuing a query.  The idea would be to overhaul and replace most of this!



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to