diff --git a/docs/components/custom-apps/web-app/dataset/data.md b/docs/components/custom-apps/web-app/dataset/data.md index 661ffe64288c48fa4f1dbae14b65f2b7b496f7b5..212ca6fe0265b90280af2ed853139754d5bf4408 100644 --- a/docs/components/custom-apps/web-app/dataset/data.md +++ b/docs/components/custom-apps/web-app/dataset/data.md @@ -11,17 +11,14 @@ The user can toggle the visibility of each of the two components by clicking on ## 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. - -**QUESTION: how is scrolling achieved? Do we use the dedicated Elasticsearch feature?** - - +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. +A maximum limit of 10 000 records displayed has been set in the table. ### 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. - -**QUESTION: how are search terms handled? Do we use a + concatenating the various terms?** +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. ### Column visibility @@ -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. - ## Map ### Under the hood @@ -64,7 +60,7 @@ This feature relies on a custom user-aware component, proxying requests to the W #### 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. ### Search by address & geolocation diff --git a/docs/components/custom-apps/web-app/dataset/info.md b/docs/components/custom-apps/web-app/dataset/info.md index 5961c2be0bee62bee6310850e3bac0539b89255a..aee11614c41ded84213e6503241ba6f55202018d 100644 --- a/docs/components/custom-apps/web-app/dataset/info.md +++ b/docs/components/custom-apps/web-app/dataset/info.md @@ -8,10 +8,10 @@ Let us note that metadata: * 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: - * ISO19139 for geographical datasets; - * Dublin Core for non-geographical datesets; +* ISO19139 for geographical datasets; +* 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. - + 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?*