cpvrlab / sparql-table-viewer Goto Github PK
View Code? Open in Web Editor NEWHome Page: http://cpvrlab.github.io/sparql-table-viewer/
Home Page: http://cpvrlab.github.io/sparql-table-viewer/
The scroll bar has the wrong dimensions after running the query for the first time.
See how to optimize performance with preloading of the first queries as also with the generated queries themselfs.
Right now while scrolling just at the moment the user hits the not loaded space a new page is loaded. It should be possible to anticipated that and preload a page.
This will not work for sudden jumps obviously.
It's currently not possible (from what I saw) to share a certain filter with someone else. It would be nice if I can get a persistent URI for a certain configuration and share this one with other people.
If a filter is active (not everything selected) then indicate that to the user by colorizing the icon.
There is this problem that there are columns in the input file which are bound to one specific column which is a key
of the dataset. In UBD66 this is the SitePlot
one. Currently this is simply shown as the unique key for this column.
After talking to BAFU I had to add the remaining columns in a way that we can query them as well. For that I did two things:
skos:Concept
and it points to additional "pseudo-dimensions" via skos:narrower
. Each of this dimensions is again a skos:Concept
and contains a skos:prefLabel
.skos:Concept
and to this definition I attached a qb:order
so we can figure out which one should be shown first.Example:
skos:narrower
Altitude
qb:order
I hope the idea is clear, if not please let me know.
The current filter drop down shows a checkbox for every distinct value found in that column. This is ok for literal types like names, but it introduces a few problems with number types.
namely it leads to very large sparql queries since every checkbox adds a filter to the query. It would be great to have a range filter for number types.
Reimplement the download functionality with content-negotation.
First, the viewer is really great IMHO, very easy to create customized tables, thanks for the work!
What confused me was that once I did start to filter I couldn't easily reset all filters so I think a "clear filter" button or anything similar would be useful.
To get all values of one row just wrap the SPARQL query in another one like below. This gives you all possible values to filter for.
SELECT DISTINCT(?Field_name) WHERE {
SELECT * WHERE { ... }
}
With lindas-uc/bafu_ubd@975f475 I've added qb:order
to the Data Cube definition.
Please note that this is optional so the viewer should also work without.
If a filter is already active reload the other filter contents to only include options that are still in the current list.
Possible problems:
If a selection on a filter is already active and we change a second filter, we must reload the content of the former without losing its selection.
The user is able to click on a header cell to sort that column, after having just clicked on the same header cell and while the data for that previous click is being updated. The sort arrow on the header cell will still switch but the data of the previous click will be loaded, leaving the arrow pointing in the wrong direction.
It's just a visual bug, by clicking again the correct sort direction will be used.
I now implemented Data Cube vocabulary for the BAFU UBD28 dataset, you can find more information in the corresponding issue.
If I'm not mistaken it should contain all information for creating the view dynamically, in terms of all stings provided on the demo page should be contained in the metadata.
Two things happen if we change filter checkboxes while data is being loaded:
Should be solved by adding the LIMIT and OFFSET by using a SELECT wrapping.
SELECT *
WHERE
{
{
SELECT * WHERE { ... }
ORDER BY ASC(?p)
}
}
OFFSET 50000
LIMIT 1000
Add a title field for Pivot Tables so that data fields that are uniform across the table can be dragged into the title field.
Example: http://yasgui.org/short/4J3fgHMhx
In this example, pollutantValue, aggregationValue, and unitValue should go into the title field and be displayed on top of the table.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.