Skip to content

Commit

Permalink
Prepare move to nfdi4cat org
Browse files Browse the repository at this point in the history
  • Loading branch information
dalito committed Mar 25, 2024
1 parent 0155914 commit a8d66a7
Show file tree
Hide file tree
Showing 8 changed files with 58 additions and 35 deletions.
4 changes: 2 additions & 2 deletions .cruft.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
"cookiecutter": {
"project_name": "pid4cat-model",
"__project_slug": "pid4cat_model",
"github_org": "dalito",
"github_org": "nfid4cat",
"__source_path": "src/pid4cat_model/schema/pid4cat_model.yaml",
"project_description": "LinkML model for Catalyst Resource Idenifier (PID4Cat)",
"project_description": "LinkML model for handle-based PIDs for resources in catalysis (PID4Cat)",
"full_name": "David Linke",
"email": "[email protected]",
"__author": "David Linke <[email protected]>",
Expand Down
26 changes: 14 additions & 12 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,17 @@ in a pull request.

## Table Of Contents

* [Code of Conduct](#code-of-conduct)
* [Guidelines for Contributions and Requests](#contributions)
* [Reporting problems with the data model](#reporting-bugs)
* [Requesting new terms](#requesting-terms)
* [Adding new terms yourself](#adding-terms)
* [Best Practices](#best-practices)
* [How to write a great issue](#great-issues)
* [How to create a great pull/merge request](#great-pulls)
- [Contributing to pid4cat-model](#contributing-to-pid4cat-model)
- [Table Of Contents](#table-of-contents)
- [Code of Conduct](#code-of-conduct)
- [Guidelines for Contributions and Requests](#guidelines-for-contributions-and-requests)
- [Reporting problems with the data model](#reporting-problems-with-the-data-model)
- [Requesting new terms](#requesting-new-terms)
- [Adding new terms yourself](#adding-new-terms-yourself)
- [Best Practices](#best-practices)
- [GitHub Best Practice](#github-best-practice)
- [Understanding LinkML](#understanding-linkml)
- [Modeling Best Practice](#modeling-best-practice)

<a id="code-of-conduct"></a>

Expand Down Expand Up @@ -99,20 +102,19 @@ Core developers should read the material on the [LinkML site](https://linkml.io/
- Include examples and counter-examples (intentionally invalid examples)
- Rationale: these serve as documentation and unit tests
- These will be used by the automated test suite
- All elements of the nmdc-schema must be illustrated with valid and invalid data examples in src/data. New schema elements will not be merged into the main branch until examples are provided
- Invalid example data files should be invalid for one single reason, which should be reflected in the filename. It should be possible to render the invalid example files valid by addressing that single fault.
- Use enums for categorical values
- Rationale: Open-ended string ranges encourage multiple values to represent the same entity, like “water”, “H2O” and “HOH”
- Any slot whose values could be constrained to a finite set should use an Enum
- Non-categorical values, e.g. descriptive fields like `name` or `description` fall outside of this.
- Reuse
- Existing scheme elements should be reused where appropriate, rather than making duplicative elements
- More specific classes can be created by refinining classes using inheritance (`is_a`)
- More specific classes can be created by refining classes using inheritance (`is_a`)

[about-branches]: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches
[about-issues]: https://docs.github.com/en/issues/tracking-your-work-with-issues/about-issues
[about-pulls]: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests
[issues]: https://github.com/dalito/pid4cat-model/issues/
[pulls]: https://github.com/dalito/pid4cat-model/pulls/
[issues]: https://github.com/nfdi4cat/pid4cat-model/issues/
[pulls]: https://github.com/nfdi4cat/pid4cat-model/pulls/

We recommend also reading [GitHub Pull Requests: 10 Tips to Know](https://blog.mergify.com/github-pull-requests-10-tips-to-know/)
51 changes: 36 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,54 @@
[![CI - main](https://github.com/nfdi4cat/pid4cat-model/actions/workflows/main.yml/badge.svg?branch=main)](https://github.com/nfdi4cat/pid4cat-model/actions/workflows/main.yml)
[![CI - docs](https://github.com/nfdi4cat/pid4cat-model/actions/workflows/deploy-docs.yml/badge.svg?branch=main)](https://github.com/nfdi4cat/pid4cat-model/actions/workflows/deploy-docs.yml)

# PID4cat model

A LinkML model for handle-based PIDs for resources in catalysis (PID4Cat)
> Status: alpha - This is in early development and may change.
A LinkML model for handle-based PIDs for resources in catalysis.

## Website
## Documentation

[https://dalito.github.io/pid4cat-model](https://dalito.github.io/pid4cat-model)
- [PID4Cat model](https://nfdi4cat.github.io/pid4cat-model) documentation
- [NFDI4Cat PID concept](nfdi4cat_details.md) - more information about the role and use of this model.

## Repository Structure

* [examples/](examples/) - example data
* [project/](project/) - project files (do not edit these)
* [src/](src/) - source files (edit these)
* [pid4cat_model](src/pid4cat_model)
* [schema](src/pid4cat_model/schema) -- LinkML schema
- [examples/](examples/) - example data
- [project/](project/) - project files (do not edit these)
- [src/](src/) - source files (edit these)
- [pid4cat_model](src/pid4cat_model)
- [schema](src/pid4cat_model/schema) - LinkML schema
(edit this)
* [datamodel](src/pid4cat_model/datamodel) -- generated
- [datamodel](src/pid4cat_model/datamodel) - generated
Python datamodel
* [tests/](tests/) - Python tests
- [tests/](tests/) - Python tests

## Developer Documentation

<details>
Use the `make` command to generate project artefacts:

* `make all`: make everything
* `make deploy`: deploys site
- `make all`: make everything
- `make deploy`: deploys site
</details>

## Credits
## Contributors

A big thanks to all [contributors](https://github.com/nfdi4cat/pid4cat-model/graphs/contributors).

Main author:

- David Linke (ORCID: 0000-0002-5898-1820) - Idea and initial setup of repository. Current maintainer.

## License

The code in this repository is distributed under MIT license.

## Acknowledgement

[linkml-project-cookiecutter](https://github.com/linkml/linkml-project-cookiecutter) provided the base setup for this repository.

This project started as an in-kind contribution of [Leibniz-Institut für Katalyse e.V.](https://www.catalysis.de) (Rostock, Germany) to the NFDI4Cat project.

This project was made with
[linkml-project-cookiecutter](https://github.com/linkml/linkml-project-cookiecutter).
After 2024-03-27 this work has been funded by the German Research Foundation (DFG) through the project "[NFDI4Cat](https://www.nfdi4cat.org) - NFDI for Catalysis-Related Sciences" (DFG project no. [441926934](https://gepris.dfg.de/gepris/projekt/441926934)), within the National Research Data Infrastructure ([NFDI](https://www.nfdi.de)) programme of the Joint Science Conference (GWK).
4 changes: 2 additions & 2 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ nav:
# - Home: home.md
- Index: index.md
- About: about.md
site_url: https://dalito.github.io/pid4cat-model
repo_url: https://github.com/dalito/pid4cat-model
site_url: https://nfdi4cat.github.io/pid4cat-model
repo_url: https://github.com/nfdi4cat/pid4cat-model

# Uncomment this block to enable use of Google Analytics.
# Replace the property value with your own ID.
Expand Down
2 changes: 1 addition & 1 deletion nfdi4cat_details.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ Therefore, PID4Cat handles are similar to [ePIC](http://www.pidconsortium.net/)-
This has the advantage that these metadata are available directly from the resolver.

PID4Cat comes with a well-defined schema for how and which metadata to store in the handle record.
The schema is defined in [LinkML](https://linkml.io/linkml/) and developed in this repo ([NFDI4Cat/PID4Cat](https://github.com/dalito/pid4cat-model/)).
The schema is defined in [LinkML](https://linkml.io/linkml/) and developed in this repo ([NFDI4Cat/PID4Cat](https://github.com/nfdi4cat/pid4cat-model/)).
The schema does only require a minimum of information; it does not disclose anything about the resource except its type. Moreover, it is not required to specify an owner/creator but only a curator. Therefore, PID4Cat-handles do not mandate to put resources into context if this is undesired for whatever reasons.

### Mapping of PID4Cat schema to handle record
Expand Down
2 changes: 1 addition & 1 deletion project/jsonld/pid4cat_model.jsonld
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"Add Enums for rdf_type, schema_type"
],
"see_also": [
"https://dalito.github.io/pid4cat-model"
"https://nfdi4cat.github.io/pid4cat-model"
],
"id": "https://w3id.org/nfdi4cat/pid4cat-model",
"imports": [
Expand Down
2 changes: 1 addition & 1 deletion project/owl/pid4cat_model.owl.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -780,7 +780,7 @@ pid4cat_model:ResourceCategory a owl:Class,
rdfs:label "pid4cat-model" ;
dct:license "MIT" ;
dct:title "pid4cat-model" ;
rdfs:seeAlso <https://dalito.github.io/pid4cat-model> ;
rdfs:seeAlso <https://nfdi4cat.github.io/pid4cat-model> ;
skos:definition """A LinkML model for PIDs for resources in catalysis (PID4Cat). PID4Cat is a handle system based persistent identifier (PID) for digital or physical resources used in the catalysis research process. The handle record is used to store metadata about the PID besides the obligatory landing page URL.
The model describes metadata for the PID itself and how to access the identified resource. It does not describe the resource itself with the exception of the resource category, which is a high-level description of what is identified by the PID4Cat handle, e.g. a sample or a device.""" .

Expand Down
2 changes: 1 addition & 1 deletion src/pid4cat_model/schema/pid4cat_model.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ todos:

license: MIT
see_also:
- https://dalito.github.io/pid4cat-model
- https://nfdi4cat.github.io/pid4cat-model

prefixes:
pid4cat_model: https://w3id.org/nfdi4cat/pid4cat-model/
Expand Down

0 comments on commit a8d66a7

Please sign in to comment.