fair-ease-matcher

BODC copy of https://github.com/Kurrawong/fair-ease-matcher

https://github.com/british-oceanographic-data-centre/fair-ease-matcher

Science Score: 26.0%

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

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

Repository

BODC copy of https://github.com/Kurrawong/fair-ease-matcher

Basic Info
  • Host: GitHub
  • Owner: British-Oceanographic-Data-Centre
  • License: apache-2.0
  • Language: Python
  • Default Branch: master
  • Size: 6.38 MB
Statistics
  • Stars: 0
  • Watchers: 5
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created almost 2 years ago · Last pushed 12 months ago
Metadata Files
Readme License Codemeta

readme.md

Components

src folder

Contains code for the application. Much of this code is no longer used and needs to be cleaned up. Do not spend effort trying to understand it until it has been cleaned up - I have mentioned the key files that are used below.

The Python environment and requirements are handled using Poetry - please install poetry and run poetry install to setup the environment/requirements. See the Dockerfile for an example of this.

src/app/flask_app.py

The flask application used to run the analyser at https://99koor0nmj.execute-api.ap-southeast-2.amazonaws.com/production/processmetadata The analyser is running as an AWS Lambda function. The analyser is packaged/deployed using Zappa. Zappa makes it easy to deploy python applications on AWS Lambda. The Zappa config for this is in `./zappasettings.json`

src/app/fastapi_app.py

FastAPI is an async equivalent to Flask. It is what I would have used if not deploying the application on AWS Lambda. Async apps on AWS Lambda are possible but have some pitfalls. The FastAPI app is not deployed anywhere.

src/app/main.py

Equivalent to flask_app.py but to just run the script on local files.

compose directory

Can be used to process the Vocab data locally and run a Fuseki instance. You will need a copy of the vocab files from me - these are in S3 and too large to sensibly check in to version control - these can be provided on request

NB the compose app is not set up to run the analyser itself. You can run the analyser via and IDE and point it to Fuseki running in compose.

Dockerfile

Not currently used. Was used to build a docker image for the fastapi version of the analyser. Expect this will require some minor changes but will work again with the flask or fastapi versions.

notebooks directory

Not currently used. Was used to demonstrate an alternate version of the analyser using LLMs.

aws directory

Not currently used. Contains information on connecting to an AWS Neptune instance that was previously stood up for the LLM version. This instance has now been removed as Fuseki is online.

Owner

  • Name: British Oceanographic Data Centre
  • Login: British-Oceanographic-Data-Centre
  • Kind: organization
  • Email: enquiries@bodc.ac.uk
  • Location: Liverpool and Southampton

Part of the National Oceanography Centre, see https://www.bodc.ac.uk/resources for a list of our offerings

CodeMeta (codemeta.json)

{
  "@context": "https://w3id.org/codemeta/3.0",
  "type": "SoftwareSourceCode",
  "applicationCategory": "Earth and environmental domain",
  "author": [
    {
      "id": "_:author_1",
      "type": "Person",
      "affiliation": {
        "id": " https://kurrawong.ai/",
        "type": "Organization"
      },
      "email": "david@kurrawong.ai",
      "familyName": "Habgood",
      "givenName": "David"
    },
    {
      "id": "_:author_2",
      "type": "Person",
      "affiliation": {
        "id": " https://kurrawong.ai/",
        "type": "Organization"
      },
      "email": "nick@kurrawong.ai",
      "familyName": "Car",
      "givenName": "Nicholas"
    },
    {
      "id": "_:author_3",
      "type": "Person",
      "affiliation": {
        "type": "Organization",
        "name": "National Oceanography Centre, The British Oceanographic Data Centre"
      },
      "email": "alexk@noc.ac.uk",
      "familyName": "Kokkinaki",
      "givenName": "Alexandra"
    },
    {
      "id": "_:author_4",
      "type": "Person",
      "affiliation": {
        "type": "Organization",
        "name": "National Oceanography Centre, The British Oceanographic Data Centre"
      },
      "email": "gmon@noc.ac.uk",
      "familyName": "Moncoiffe",
      "givenName": "Gwenaelle"
    },
    {
      "id": "_:author_5",
      "type": "Person",
      "affiliation": {
        "type": "Organization",
        "name": "National Oceanography Centre, The British Oceanographic Data Centre"
      },
      "email": "qtl@noc.ac.uk",
      "familyName": "Luong",
      "givenName": "Quyen"
    }
  ],
  "codeRepository": "https://github.com/British-Oceanographic-Data-Centre/fair-ease-matcher",
  "dateCreated": "2023-08-16",
  "description": "The Semantic Analyser is a software tool that analyses XML metadata records, keyword lists, and netCDF files, matching them against semantic artefacts relevant to the environmental and earth domains within the underlying Knowledge Base.",
  "funder": {
    "type": "Organization",
    "name": "EU"
  },
  "identifier": "https://semantics.bodc.ac.uk/",
  "keywords": "semantic analysis",
  "license": "https://spdx.org/licenses/Apache-2.0",
  "name": "Semantic Analyser",
  "operatingSystem": "Windows",
  "programmingLanguage": "Python 3",
  "developmentStatus": "active",
  "funding": "FAIR-EASE, Blue-Cloud",
  "issueTracker": "https://github.com/British-Oceanographic-Data-Centre/fair-ease-matcher/issues"
}

GitHub Events

Total
  • Delete event: 3
  • Issue comment event: 1
  • Push event: 48
  • Pull request review event: 2
  • Pull request event: 44
  • Create event: 10
Last Year
  • Delete event: 3
  • Issue comment event: 1
  • Push event: 48
  • Pull request review event: 2
  • Pull request event: 44
  • Create event: 10

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 0
  • Total pull requests: 25
  • Average time to close issues: N/A
  • Average time to close pull requests: about 4 hours
  • Total issue authors: 0
  • Total pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 22
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 25
  • Average time to close issues: N/A
  • Average time to close pull requests: about 4 hours
  • Issue authors: 0
  • Pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 22
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • qtl-bodc (18)
  • cavrob-bodc (3)
  • jamclar (3)
  • roje-bodc (3)
  • matcor-bodc (2)
  • hb-bodc (1)
  • MattHopsonNOC (1)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

Dockerfile docker
  • python 3.11-slim-buster build
compose/docker-compose.yml docker
  • ghcr.io/zazuko/fuseki-geosparql v2.3.1
  • tdb-generation 0.1.10
poetry.lock pypi
  • annotated-types 0.5.0
  • anyio 4.0.0
  • argcomplete 3.1.1
  • blinker 1.6.2
  • boto3 1.28.40
  • botocore 1.31.40
  • certifi 2023.7.22
  • cfn-flip 1.3.0
  • cftime 1.6.3
  • charset-normalizer 3.2.0
  • click 8.1.7
  • colorama 0.4.6
  • cython 3.0.2
  • durationpy 0.5
  • et-xmlfile 1.1.0
  • exceptiongroup 1.1.3
  • flask 2.3.3
  • flask-cors 4.0.0
  • h11 0.14.0
  • hjson 3.1.0
  • httpcore 0.17.3
  • httpx 0.24.1
  • idna 3.4
  • iniconfig 2.0.0
  • isodate 0.6.1
  • itsdangerous 2.1.2
  • jinja2 3.1.2
  • jmespath 1.0.1
  • kappa 0.6.0
  • markupsafe 2.1.3
  • netcdf4 1.6.5
  • numpy 1.26.2
  • openpyxl 3.1.2
  • packaging 23.1
  • pip 23.2.1
  • placebo 0.9.0
  • pluggy 1.3.0
  • pydantic 2.3.0
  • pydantic-core 2.6.3
  • pyparsing 3.1.1
  • pytest 7.4.0
  • python-dateutil 2.8.2
  • python-slugify 8.0.1
  • pyyaml 6.0.1
  • rdflib 7.0.0
  • requests 2.31.0
  • s3transfer 0.6.2
  • setuptools 68.1.2
  • six 1.16.0
  • sniffio 1.3.0
  • sparqlwrapper 2.0.0
  • text-unidecode 1.3
  • toml 0.10.2
  • tomli 2.0.1
  • tqdm 4.66.1
  • troposphere 4.4.1
  • typing-extensions 4.7.1
  • urllib3 1.26.16
  • uvicorn 0.23.2
  • werkzeug 2.3.7
  • wheel 0.41.2
  • zappa 0.57.0
pyproject.toml pypi
  • pytest ^7.4.0 develop
  • cython ^3.0.0
  • flask ^2.3.3
  • flask-cors ^4.0.0
  • httpx ^0.24.1
  • jinja2 ^3.1.2
  • netcdf4 ^1.6.5
  • openpyxl ^3.1.2
  • pydantic ^2.3.0
  • pytest ^7.4.0
  • python ^3.10
  • setuptools ^68.1.2
  • sparqlwrapper ^2.0.0
  • uvicorn ^0.23.2
  • zappa ^0.57.0