Page MenuHomePhabricator

Interface of the Wikidata Query Service
Open, Needs TriagePublic

Description

Hi,

I have two slight improvement suggestions for the interface of the Wikidata Query Service (based on both my experience when I do SPARQL workshops):

  1. When there is a basic syntax error in the SPARQL code, would it be possible to add a warning sign on the left of line where there is an error (like there is on https://data.bnf.fr/current/sparql.html , for instance if you forgot the "?" before a variable name there is bright red exclamation mark next to the line with an infotip). It feels more intuitive than the current underlining and highlighting (which is often after the problem).
  1. The left menu bar feel could maybe be improved/removed/reworked. The "example" icon is a duplicate already on the top bar and the "short URL" (without results) feel strange here as the other short URL (with results) are in the bottom bar (with a different icon :/ ), they should be together or at least closer. Plus, from what I've seen, the other icons are more or less never used. So: Would it be possible to only have two bars (top and bottom for instance) instead of three (top, left, bottom)?

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

For the first point, when there is SPARQL error, there is already an error displayed in JavaScript console saying where is located the error (line and character). The SPARQL analysis is provided by this library. To solve this first point, the error could be caught and displayed in the UI. Also, for a good UX, it should be thought when you display such error: when the user is typing? or when submitting the request?

My point about the timing is: when the user is typing there are always errors because the SPARQL request is not finished. E.g. when I type:

SELECT ?item
{

there is an error on line 2. So either the error should be displayed when the SPARQL request is submitted (but this is not really useful because Blazegraph already complains when there is an error), either there should be a timer to detect when the user stops typing (e.g. 2 seconds) but the user could stop typing to think about his/her request and be bothered by the error displayed. I’m not sure what is the best scenario.