@@ -11,17 +11,14 @@ The user can toggle the visibility of each of the two components by clicking on
...
@@ -11,17 +11,14 @@ The user can toggle the visibility of each of the two components by clicking on
## Data table
## Data table
Each entry of a given dataset is rendered as a line in a table. Data value having simple types (string, integer, float, ...) are fully displayed. Complex data values, such as JSON objects, are replaced by a placeholder signaling the presence of a complex property. Records are retrieved from the search engine in a paginated way (30 items per page), in order not to overload the browser.
Each entry of a given dataset is rendered as a line in a table. Data value having simple types (string, integer, float, ...) are fully displayed. Complex data values, such as JSON objects, are replaced by a placeholder signaling the presence of a complex property. Records are retrieved from the search engine in a paginated way (30 items per page), in order not to overload the browser.
To achieve this, we do not use the native scrolling feature of Elasticsearch, but the pagination. We retrieve records 30 by 30, changing the `from` property for each request.
**QUESTION: how is scrolling achieved? Do we use the dedicated Elasticsearch feature?**
A maximum limit of 10 000 records displayed has been set in the table.
### Search within the data entries
### Search within the data entries
A dedicated text input allows the user to perform a full-text search within the entire dataset. The number of matching records is shown and visually illustrated in the guise of a progress bar.
A dedicated text input allows the user to perform a full-text search within the entire dataset. The number of matching records is shown and visually illustrated in the guise of a progress bar.
To achieve this search, we concatenate each word in the input with the `&` character. This is done in order to have a very specific search, where each record contains all the terms.
**QUESTION: how are search terms handled? Do we use a + concatenating the various terms?**
### Column visibility
### Column visibility
...
@@ -35,7 +32,6 @@ The visibility of each column can be toggled by clicking on a dedicated button a
...
@@ -35,7 +32,6 @@ The visibility of each column can be toggled by clicking on a dedicated button a
* Already visited entries are highlighted, on the table, with a different background color.
* Already visited entries are highlighted, on the table, with a different background color.
## Map
## Map
### Under the hood
### Under the hood
...
@@ -64,7 +60,7 @@ This feature relies on a custom user-aware component, proxying requests to the W
...
@@ -64,7 +60,7 @@ This feature relies on a custom user-aware component, proxying requests to the W
#### 3D emulation
#### 3D emulation
3D emulation for buildings is achieved thanks to the *ad hoc* styling of the polygones returned by the following dataset: https://data.grandlyon.com/jeux-de-donnees/volumes-toiture-3d-2015-bati-metropole-lyon/donnees. More specifically, the `fill-extrusion` property is used.
3D emulation for buildings is achieved thanks to the *ad hoc* styling of the polygones returned by the following dataset: https://data.grandlyon.com/jeux-de-donnees/volumes-toiture-3d-2015-bati-metropole-lyon/donnees. More specifically, the `fill-extrusion` property is used.
* are originally filled in by the back-office team via the [GeoNetwork](https://www.geonetwork-opensource.org/) off-the-shelf application;
* are originally filled in by the back-office team via the [GeoNetwork](https://www.geonetwork-opensource.org/) off-the-shelf application;
* comply to two different templates:
* comply to two different templates:
* ISO19139 for geographical datasets;
* ISO19139 for geographical datasets;
* Dublin Core for non-geographical datesets;
* Dublin Core for non-geographical datesets;
* are indexed in Elasticsearch by a [custom indexer](https://forge.grandlyon.com/web-et-numerique/web-et-numerique-internet/data.grandlyon.com/web-portal/components/indexers/metadata-and-data), in order to enable full-text searches.
* are indexed in Elasticsearch by a [custom indexer](https://forge.grandlyon.com/web-et-numerique/web-et-numerique-internet/data.grandlyon.com/web-portal/components/indexers/metadata-and-data), in order to enable full-text searches.
This Web Application retrieves metadata from Elasticsearch, by applying a filter on the `slug` field.
This Web Application retrieves metadata from Elasticsearch, by applying a filter on the `slug` field.
*QUESTION: do you confirm that such a filter is the right one?*
*QUESTION: do you confirm that such a filter is the right one?*