From b6bd97fd836698baba95e20ef477b618a194c872 Mon Sep 17 00:00:00 2001 From: esikkala <esko.ikkala@aalto.fi> Date: Thu, 25 Oct 2018 09:44:26 +0300 Subject: [PATCH] Do not fetch entries, generate entry links in result table --- src/client/components/ResultTable.js | 7 ++++--- src/client/containers/MapApp.js | 2 ++ src/server/sparql/Datasets.js | 24 ++++++++++++++---------- src/server/sparql/Manuscripts.js | 2 -- 4 files changed, 20 insertions(+), 15 deletions(-) diff --git a/src/client/components/ResultTable.js b/src/client/components/ResultTable.js index cfcedb11..95902af4 100644 --- a/src/client/components/ResultTable.js +++ b/src/client/components/ResultTable.js @@ -108,13 +108,14 @@ class ResultTable extends React.Component { idRenderer = (row) => { let sdbmLink = ''; let id = row.id.replace('http://ldf.fi/mmm/manifestation_singleton/', ''); + id = id.replace('orphan_', ''); + id = id.replace('part_', ''); if (has(row, 'manuscriptRecord') && row.manuscriptRecord !== '-') { sdbmLink = row.manuscriptRecord; } else { - sdbmLink = row.entry; - id = id.replace('orphan_', ''); + sdbmLink = 'https://sdbm.library.upenn.edu/entries/' + id; } - id = id.replace('part_', ''); + return ( <div className={this.props.classes.tableColumn}> <a target='_blank' rel='noopener noreferrer' href={sdbmLink}>{id}</a> diff --git a/src/client/containers/MapApp.js b/src/client/containers/MapApp.js index 57ae8346..2741b5b8 100644 --- a/src/client/containers/MapApp.js +++ b/src/client/containers/MapApp.js @@ -11,6 +11,7 @@ import Pie from '../components/Pie'; import TopBar from '../components/TopBar'; import CircularProgress from '@material-ui/core/CircularProgress'; import purple from '@material-ui/core/colors/purple'; +import Typography from '@material-ui/core/Typography'; import { updateQuery, @@ -163,6 +164,7 @@ let MapApp = (props) => { //<Typography className={classes.progressTitle} variant="h4">Fetching manuscript data</Typography> table = ( <div className={[tableClass, classes.progress].join(' ')}> + <Typography className={classes.progressTitle} variant="h4" color='primary'>Fetching manuscript data</Typography> <CircularProgress style={{ color: purple[500] }} thickness={5} /> </div> ); diff --git a/src/server/sparql/Datasets.js b/src/server/sparql/Datasets.js index db5124bc..06c145d0 100644 --- a/src/server/sparql/Datasets.js +++ b/src/server/sparql/Datasets.js @@ -46,30 +46,34 @@ module.exports = { PREFIX mmm-schema: <http://ldf.fi/mmm/schema/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX sdbm: <https://sdbm.library.upenn.edu/> + PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT * WHERE { { SELECT DISTINCT ?id { <FILTER> ?id a frbroo:F4_Manifestation_Singleton . + #?id ^<http://erlangen-crm.org/efrbroo/R18_created>/<http://www.cidoc-crm.org/cidoc-crm/P7_took_place_at> ?orderBy . } - <ORDER_BY> + ORDER BY ?id + #ORDER BY (!BOUND(?orderBy)) ?orderBy <PAGE> } FILTER(BOUND(?id)) ?id skos:prefLabel ?prefLabel . - ?id mmm-schema:entry ?entry . + # ?id mmm-schema:entry ?entry . OPTIONAL { ?id mmm-schema:manuscript_record ?manuscriptRecord . } OPTIONAL { ?id crm:P45_consists_of ?material . } OPTIONAL { - ?id crm:P51_has_former_or_current_owner ?owner__id . - ?owner__id skos:prefLabel ?owner__prefLabel . - ?reifi rdf:subject ?id ; - rdf:predicate crm:P51_has_former_or_current_owner ; - rdf:object ?owner__id ; - mmm-schema:entry ?owner__entry ; - mmm-schema:order ?owner__order . - BIND(REPLACE(STR(?owner__id), "http://ldf.fi/mmm/person/", "https://sdbm.library.upenn.edu/names/") AS ?owner__sdbmLink) + ?id crm:P51_has_former_or_current_owner ?owner__id . + ?owner__id skos:prefLabel ?owner__prefLabel . + ?reifi rdf:subject ?id ; + rdf:predicate crm:P51_has_former_or_current_owner ; + rdf:object ?owner__id ; + mmm-schema:entry ?owner__entry ; + mmm-schema:order ?order . + BIND(xsd:integer(?order) + 1 AS ?owner__order) + BIND(REPLACE(STR(?owner__id), "http://ldf.fi/mmm/person/", "https://sdbm.library.upenn.edu/names/") AS ?owner__sdbmLink) } ?expression_creation frbroo:R18_created ?id . OPTIONAL { diff --git a/src/server/sparql/Manuscripts.js b/src/server/sparql/Manuscripts.js index 1e135d7f..f438ecec 100644 --- a/src/server/sparql/Manuscripts.js +++ b/src/server/sparql/Manuscripts.js @@ -14,8 +14,6 @@ export const getManuscripts = (page, filterObj) => { const pageSize = 5; manuscriptQuery = manuscriptQuery.replace('<FILTER>', generateFilter(filterObj)); manuscriptQuery = manuscriptQuery.replace('<PAGE>', `LIMIT ${pageSize} OFFSET ${page * pageSize}`); - //manuscriptQuery = manuscriptQuery.replace('<ORDER_BY>', `ORDER BY (!BOUND(?orderBy)) ?orderBy`); - manuscriptQuery = manuscriptQuery.replace('<ORDER_BY>', `ORDER BY ?id`); // console.log(manuscriptQuery) return sparqlSearchEngine.doSearch(manuscriptQuery, endpoint, makeObjectList); //return sparqlSearchEngine.doSearch(manuscriptQuery, endpoint, mapManuscripts); -- GitLab