Science Score: 57.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.8%) to scientific vocabulary
Last synced: 9 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: issa-project
  • License: apache-2.0
  • Language: JavaScript
  • Default Branch: master
  • Size: 7.75 MB
Statistics
  • Stars: 0
  • Watchers: 3
  • Forks: 2
  • Open Issues: 0
  • Releases: 3
Created about 5 years ago · Last pushed over 2 years ago
Metadata Files
Readme Changelog License Citation Codemeta

README.md

ISSA Web Application Backend Services

The ISSA project focuses on the semantic indexing of scientific publications in an open archive.

This repository is the backend part of a web application that demonstrates the interest and use of such a semantic index for researchers and librarians. It provides a set of Web APIs (services) used by the frontend application available in the visualization repository.

Services

The services exposed by the server are defined in routes/index.js.

With the exception of service autoComplete, the services submit SPARQL SELECT queries to the ISSA SPARQL endpoint (property SEMANTICINDEXSPARQL_ENDPOINT in .env) using the d3-sparql library. The response of the services is the output of the d3-sparql library itself, that only returns the "results.bindings" part of the SPARQL response in JSON format, following this format:

json { "result": [ { "var1": "value1", "var2": "value2", ... }, ... ]}

Therefore, the SELECT clause of the SPARQL queries are the de facto documentation of the services since they give the names of the variables (var1 and var2 in the example above).

Standalone deployment

Pre-requisite: node.js 17, yarn.

Install the dependencies with yarn install.

Run the application: yarn start

By default, the node.js server listens on port 3000. This can be changed in file .env.

Make sure the server is properly started by pointing your browser to: ``` http://localhost:3000/getArticleMetadata?uri=http://data-issa.cirad.fr/document/592919 http://localhost:3000/getArticleAuthors/?uri=http://data-issa.cirad.fr/document/592919 http://localhost:3000/getAbstractNamedEntities/?uri=http://data-issa.cirad.fr/document/592919 http://localhost:3000/getGeographicNamedEntities/?uri=http://data-issa.cirad.fr/document/592919

http://localhost:3000/autoComplete/?input=forestry http://localhost:3000/autoComplete/?input=forestry&entityType=All http://localhost:3000/autoComplete/?input=forestry&entityType=Agrovoc http://localhost:3000/autoComplete/?input=forestry&entityType=Agrovoc,Wikidata

http://localhost:3000/searchDocumentByConcept/?uri=http://www.wikidata.org/entity/Q234173,http://aims.fao.org/aos/agrovoc/c423ff1cb http://localhost:3000/searchDocumentBySubConcept/?uri=http://www.wikidata.org/entity/Q234173,http://aims.fao.org/aos/agrovoc/c423ff1cb http://localhost:3000/searchDocumentByRelatedConcept/?uri=http://aims.fao.org/aos/agrovoc/c_423ff1cb ```

Docker deployment

The repository comes with a Dockerfile and a docker-compose file. After cloning, build the application with this command:

docker-compose build

Then start the services with: docker-compose up -d

Logging

Log traces are printed out in file log/application.log.

This can be changed by customizing file config/log4js.json. Refer to the Log4JS documentation.

License

See the LICENSE file.

Cite this work

Franck MICHEL, Youssef MEKOUAR, ISSA Project (2023). ISSA Web Application Backend Services. https://github.com/issa-project/web-backend/.

Publications

ISSA: Generic Pipeline, Knowledge Model and Visualization tools to Help Scientists Search and Make Sense of a Scientific Archive. Anne Toulet, Franck Michel, Anna Bobasheva, Aline Menin, Sébastien Dupré, Marie-Claude Deboin, Marco Winckler, Andon Tchechmedjiev. 21st International Semantic Web Conference (ISWC), Oct 2022, Hangzhou, China. DOI: ⟨10.1007/978-3-031-19433-7_38⟩. HAL

Owner

  • Name: ISSA Project
  • Login: issa-project
  • Kind: organization

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: ISSA Web Application Backend Services
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Franck
    family-names: Michel
    email: franck.michel@inria.fr
    affiliation: 'University Côte d''Azur, CNRS, Inria'
    orcid: 'https://orcid.org/0000-0001-9064-0463'
  - given-names: Youssef
    family-names: Mekouar
    affiliation: University Côte d'Azur
repository-code: 'https://github.com/issa-project/web-visualization'
abstract: >-
  The ISSA project (https://issa.cirad.fr/) focuses on the
  semantic indexing of scientific publications in an open
  archive. This project is the backend part of a web application
  that demonstrates the interest and use of such a semantic index
  for researchers and librarians. It provides a set of Web APIs (services)
  used by the frontend application.
keywords:
  - information retrieval
  - semantic search
  - scientific literature
  - SPARQL
  - node
license: Apache-2.0
version: '1.1'
date-released: '2023-10-04'

CodeMeta (codemeta.json)

{
  "@context": "https://doi.org/10.5063/schema/codemeta-2.0",
  "@type": "SoftwareSourceCode",
  "license": "https://spdx.org/licenses/Apache-2.0",
  "codeRepository": "https://github.com/issa-project/web-backend",
  "datePublished": "2022-05-01",
  "dateModified": "2023-10-04",
  "issueTracker": "https://github.com/issa-project/web-backend/issues",
  "name": "ISSA Web Application Backend Services",
  "version": "1.1",
  "description": "The ISSA project (https://issa.cirad.fr/) focuses on the semantic indexing of scientific publications in an open archive. This project is the backend part of a web application that demonstrates the interest and use of such a semantic index for researchers and librarians. It provides a set of Web APIs (services) used by the frontend application.",
  "funding": "ISSA project",
  "developmentStatus": "active",
  "referencePublication": "https://hal.science/hal-03807744",
  "isPartOf": "https://issa.cirad.fr/",
  "funder": {
    "@type": "Organization",
    "name": "ISSA, research infrastructure CollEx-Perse"
  },
  "keywords": [
    "web API",
    "SPARQL",
    "information retrieval",
    "semantic search",
    "scientific literature",
    "node"
  ],
  "programmingLanguage": [
    "Javascript"
  ],
  "runtimePlatform": [
    "node.js"
  ],
  "softwareRequirements": [
    "node.js 17+",
    "yarn",
    "https://github.com/issa-project/web-backend/blob/master/package.json"
  ],
  "author": [
    {
      "@type": "Person",
      "@id": "https://orcid.org/0000-0001-9064-0463",
      "givenName": "Franck",
      "familyName": "Michel",
      "email": "franck.michel@inria.fr",
      "affiliation": {
        "@type": "Organization",
        "name": "University Cte d'Azur, CNRS, Inria"
      }
    },
    {
      "@type": "Person",
      "givenName": "Youssef",
      "familyName": "Mekouar",
      "affiliation": {
        "@type": "Organization",
        "name": "University Cte d'Azur"
      }
    }
  ]
}

GitHub Events

Total
Last Year

Dependencies

Dockerfile docker
  • node 17 build
package.json npm
  • eslint ^7.32.0 development
  • eslint-plugin-react ^7.24.0 development
  • cookie-parser ~1.4.4
  • d3-sparql ^2.0.0
  • debug ~2.6.9
  • dotenv ^10.0.0
  • express ~4.16.1
  • http-errors ~1.6.3
  • isomorphic-fetch ^3.0.0
  • log4js >=6.4.0
  • pug ^3.0.2