{"id":21291527,"url":"https://github.com/smartdataanalytics/conjure","last_synced_at":"2025-03-15T16:34:09.011Z","repository":{"id":145428516,"uuid":"215569024","full_name":"SmartDataAnalytics/Conjure","owner":"SmartDataAnalytics","description":"A declarative approach to conjure RDF datasets from RDF datasets using SPARQL with caching of repeated operations.","archived":false,"fork":false,"pushed_at":"2025-02-24T01:22:21.000Z","size":241,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":13,"default_branch":"jena-4.8.0","last_synced_at":"2025-02-24T02:32:18.216Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SmartDataAnalytics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2019-10-16T14:29:41.000Z","updated_at":"2021-12-26T23:05:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"89d2e4e7-9e5b-4b2b-abfa-f64fd99b1558","html_url":"https://github.com/SmartDataAnalytics/Conjure","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SmartDataAnalytics%2FConjure","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SmartDataAnalytics%2FConjure/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SmartDataAnalytics%2FConjure/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SmartDataAnalytics%2FConjure/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SmartDataAnalytics","download_url":"https://codeload.github.com/SmartDataAnalytics/Conjure/tar.gz/refs/heads/jena-4.8.0","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243760428,"owners_count":20343630,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-11-21T13:34:48.621Z","updated_at":"2025-03-15T16:34:08.952Z","avatar_url":"https://github.com/SmartDataAnalytics.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Conjure\nA declarative approach to conjure RDF datasets from RDF datasets using SPARQL with caching of repeated operations.\nConjure enables blazing fast data profiling and analysis on the basis of RDF dataset catalogs.\n\nConjure comprises tools for\n\n* detecting content types and encodings\n* conversions between content types and encondings\n* an RDF vocabulary to model data access (DataRef classes, e.g. DataRefUrl, DataRefSparqlEndpoint)\n* an RDF vocabulary to model sparql-based data transformation workflows (Op classes, e.g. OpUnion, OpCoalesce)\n* providing implementations of these vocabularies access d data storge (git, webdav)\n\nConjure builds on several existing libraries including Apache tika, Jena, jgit and more.\n\n\n## Concept\n* First, one provides a specification of an abstract collection of input records (RDF resources) which carry references to (RDF) datasets. The use of DCAT dataset specifications is the recommended and natively supported approach.\n* Finally, one provides a job specification whose execution maps each of the input records to an output dataset.\n* The output is a data catalog with provenance information referring to the result dataset files.\n\n\n```\ndataSources = dataSourceAssembler.assemble()\ndataSources.map(processor)\n\n```\n\nThe processor is a mere Spring Bean. Thus, the *exact same conjure configuration* can be used\nin arbitrary environments, regardless of single, multi-threaded or cluster setups such as using native Java or Apache Spark.\n\n\n\n\n\n## Building dist packages\nThe spark bundle suitable for spark-submit and its wrapping as a debian package can be built with\n\n`mvn -P dist package`\n\nThe spark debian package places a runnable jar-with-dependencies file under `/usr/share/lib/conjure-spark-cli`\n\n\n## Spring boot\n\nCustom contexts can be specified via these jvm options:\n-Dspring.main.sources=ctx1.groovy,ctx2.groovy\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmartdataanalytics%2Fconjure","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsmartdataanalytics%2Fconjure","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmartdataanalytics%2Fconjure/lists"}