Uploaded image for project: 'Apache Jena'
  1. Apache Jena
  2. JENA-420

Web-based User Interface for Jena Fuseki

    XMLWordPrintableJSON

Details

    Description

      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!

      Attachments

        1. fuseki4.png
          134 kB
          Stephen Allen
        2. fuseki3.png
          130 kB
          Stephen Allen
        3. fuseki2.png
          116 kB
          Stephen Allen
        4. fuseki1.png
          103 kB
          Stephen Allen

        Issue Links

          Activity

            People

              Unassigned Unassigned
              sallen Stephen Allen
              Votes:
              1 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: