{"id":41545813,"url":"https://github.com/hbz/lobid-resources","last_synced_at":"2026-01-24T02:51:53.375Z","repository":{"id":37431001,"uuid":"41291958","full_name":"hbz/lobid-resources","owner":"hbz","description":"Transformation, web frontend, and API for the hbz catalog as LOD","archived":false,"fork":false,"pushed_at":"2025-12-18T12:31:38.000Z","size":106225,"stargazers_count":11,"open_issues_count":86,"forks_count":7,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-12-21T06:33:33.910Z","etag":null,"topics":["api","code4lib","etl","gruppe-offene-infrastruktur","lobid","lod"],"latest_commit_sha":null,"homepage":"http://lobid.org/resources","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hbz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2015-08-24T08:39:45.000Z","updated_at":"2025-12-11T13:42:11.000Z","dependencies_parsed_at":"2023-10-16T19:16:00.526Z","dependency_job_id":"937a75c7-c72b-47c8-8224-a214cd2c0c32","html_url":"https://github.com/hbz/lobid-resources","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/hbz/lobid-resources","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbz%2Flobid-resources","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbz%2Flobid-resources/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbz%2Flobid-resources/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbz%2Flobid-resources/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hbz","download_url":"https://codeload.github.com/hbz/lobid-resources/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hbz%2Flobid-resources/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28708641,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-23T23:51:44.727Z","status":"online","status_checked_at":"2026-01-24T02:00:06.909Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","code4lib","etl","gruppe-offene-infrastruktur","lobid","lod"],"created_at":"2026-01-24T02:51:52.815Z","updated_at":"2026-01-24T02:51:53.359Z","avatar_url":"https://github.com/hbz.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# lobid-resources\n\n## About\n\nTransform Alma MARC-XML to JSON for Elasticsearch indexing with\n[Metafacture](https://github.com/culturegraph/metafacture-core/wiki),\nserve API and UI with [Play Framework](https://playframework.com/).\n\nThe resulting JSON is [JSON-LD](https://json-ld.org/) and therefore provides machine-readable\nLinked Data. The context file lists all used RDF properties and classes:\nhttp://lobid.org/resources/context.jsonld\n\nAleph MAB-XML was supported up to tag \\`0.5.0\\`.\n\nThis repo replaces the lobid-resources part of\n\u003chttps://github.com/lobid/lodmill\u003e.\n\nFor information about the Lobid architecture and development process,\nsee \u003chttp://hbz.github.io/#lobid\u003e.\n\n## Build\n\n[![Build No Status](https://github.com/hbz/lobid-resources/workflows/Build/badge.svg?branch=master)](https://github.com/hbz/lobid-resources/actions?query=branch%3Amaster)\n\n### Prerequisites:\n\n- Java 11, Maven 3; verify with `mvn -version`\n- sbt 1.8.2 or higher should work; verify with `sbt --version`\n- A working installation of [metafacture-core standalone application](https://github.com/metafacture/metafacture-core?tab=readme-ov-file#metafacture-as-a-stand-alone-application)\n\nCreate and change into a folder where you want to store the projects:\n\n- `mkdir ~/git ; cd ~/git`\n\nBuild lobid-resources:\n\n- `git clone https://github.com/hbz/lobid-resources.git`\n- `cd lobid-resources`\n- `mvn clean install`\n\nBuild the web application:\n\n- `cd web`\n- `sbt clean`\n- `sbt stage`\n- `./target/universal/stage/bin/lobid-resources-web -no-version-check`\n\nSee the `.github/workflows/build.yml` file for details on the CI config\nused by Github Actions.\n\nTo run the tests:\n\n- `cd web`\n- `sbt test`\n\n## Eclipse setup\n\nReplace `test` with other Play commands, e.g.\n`\"eclipse with-source=true\"` (generate Eclipse project config files,\nthen import as existing project in Eclipse), `~ run` (run in test mode,\nrecompiles changed files on save, use this to keep your Eclipse project\nin sync while working, make sure to enable automatic workspace refresh\nin Eclipse: `Preferences` \\\u003e `General` \\\u003e `Workspace` \\\u003e\n`Refresh using native hooks or polling`).\n\n## Production\n\nCopy `web/conf/resources.conf_template` to `conf/resources.conf` and\nconfigure that file to your need.\n\n## Example of getting the data\n\nIn the online test the data is indexed into a living elasticsearch\ninstance.\nThis instance is only reachable within our internal network, thus this\ntest\nmust be executed manually. Then elasticsearch can be looked up like\nthis:\n\n\u003chttps://lobid.org/resources/990054215550206441\u003e\n\nFor querying it you can use the elasticsearch query DSL, like:\n\n\u003chttps://lobid.org/resources/search?q=title:%22Moby%20dick%22\u003e\n\n## Developer instructions\n\nThis section explains how to make a successful build after changing the\ntransformations and how to index the data.\n\n## Changing transformations\n\nAfter changing the\n[fix](https://github.com/hbz/lobid-resources/blob/master/src/main/resources/alma/alma.fix)\nthe build must be executed:\n\n`mvn clean install`\n\nTwo possible outcomes:\n\n- **BUILD SUCCESS**: the tested resources don't reflect the changes.\n  In this case you should add an Alma-MARC-XML resource to\n  [src/test/resources/alma-fix/](https://github.com/hbz/lobid-resources/blob/master/src/test/resources/alma-fix)\n  that *would* reflect your changes.\n\n\u003c!-- --\u003e\n\n- **BUILD FAILURE**: the newly generated data isn't equal to the test\n  resources.\n  This is a good thing because you wanted the change.\n\nDoing `mvn test -DgenerateTestData=true` the test data is generated and\nalso updated in the filesystem.\nThese new data will now act as the template for sucessful tests. So, if\nyou would rebuild now, the build will pass successfully.\nYou just must approve the new outcome by committing it.\n\nNow you must approve the new outcome.\nLet's see what has changed:\n\n`git status`\n\nLet's make a diff on the changes, e.g. all JSON-LD documents:\n\n`git diff src/test/resources/alma-fix/`\n\nYou can validate the generated JSON-LD documents with the provided\nschemas:\n\n`cd src/test/resources; bash validateJsonTestFiles.sh`\n\nIf you are satisfied with the changes, go ahead and add and commit them:\n\n`git add src/test/resources/alma-fix/; git commit`\n\nDo this respectivly for all other test files (Ntriples …).\nIf you've added and commited everything, check again if all is ok:\n\n`mvn clean install`\n\nThis should result in **BUILD SUCCESS**. Push your changes.\n\nCheck if the play tests work, e.g.:\n\n`cd web; sbt \"test:testOnly *IntegrationTest\"`\n\nIf that fails, check the tests. Most of the time the \"fix\" is to update\nthe test\nas new data introduce more/less hits.\nThen, at last:\n\nYou're done :)\n\n## Tables as gitsubmodules\n\nSome lookup tables are provided through gitsubmodules (s.\n`.gitmodules`).\nTo initialize the submodules do\n`git submodule update --init --remote`.\nTo add a submodule do `git submodule add $repoUrl`.\nTo make a `git pull` also\nupdate these tables you can e.g. do\n`git config --local submodule.recurse true` once and\n`git submodule update --recursive --remote` after every `git pull` !\nThis is necessary\nto be on the HEAD of the master of the submodules.\n\n### Elasticsearch index\n\nWe use the plugin\n[org.xbib.elasticsearch:elasticsearch-plugin-bundle:5.4.1.0](https://github.com/jprante/elasticsearch-plugin-bundle#elasticsearch-5x)\nFollow the [installation guide for this\nplugin.](https://github.com/hbz/lobid-resources/issues/1615#issuecomment-1516331254)\n\nHave a look at the [maintaining\nguide.](https://github.com/hbz/lobid-resources/wiki/Maintaining-lobid-API)\n\n## License\n\nEclipse Public License: \u003chttp://www.eclipse.org/legal/epl-v10.html\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhbz%2Flobid-resources","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhbz%2Flobid-resources","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhbz%2Flobid-resources/lists"}