You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Improve how-to-contribute (styling and PR #210 follow-up)
* Clean-up README - remove duplicate contributing guide
* Make copilot PR reviews more precise & less noisy
* Avoid PR-from-org-warning for home-organization and switch to using gh-markdown alert messages
@@ -9,15 +9,17 @@ This repository contains a SKOS vocabulary for catalysis. When reviewing pull re
9
9
**Problem:** New concepts in the SKOS vocabulary must be properly classified by linking them to the hierarchy through `skos:broader` relationships, eventually reaching one of the top concepts.
10
10
11
11
**What to look for:**
12
-
- Excel files in `inbox-excel-vocabs/` with new concepts
12
+
- Vocabulary PRs are initiated by uploading an Excel file to
13
+
`inbox-excel-vocabs/` (transient: CI converts and removes it). Rely on the PR
14
+
description and CI validation artifacts rather than the file’s continued
15
+
presence in the branch.
13
16
- Check if new concepts have `skos:broader` relationships defined
14
-
- Verify the broader concepts eventually chain to a top concept like:
15
-
- Process
16
-
- Method
17
-
- Material entity
18
-
- Quality
19
-
- Role
20
-
- etc.
17
+
- Verify the broader chain reaches one of Voc4Cat's top concepts:
- Common high-level children: Events (`voc4cat:0000183`), Actions (`voc4cat:0000184`), Processes (`voc4cat:0000185`)
22
+
- Attributes (`voc4cat:0000186`)
21
23
22
24
**Suggested response:**
23
25
```
@@ -33,6 +35,31 @@ Let me know if you need help identifying the appropriate parent concepts!
33
35
34
36
## General Guidance
35
37
38
+
### PR Review Style (Concise, no diff rehash)
39
+
40
+
- Summarize changes in plain language: what changed and why.
41
+
- Do not restate or quote diffs, hunks, or line-by-line changes.
42
+
- Do not link to individual file diffs; reference files only when necessary (path + short purpose).
43
+
- Focus feedback on correctness, classification, scope, and follow-ups rather than code excerpts.
44
+
- Keep the review brief, actionable, and non-repetitive with what the GitHub diff already shows.
45
+
46
+
### Choosing the Right Review Template
47
+
48
+
Use simple heuristics based on PR intent and CI signals:
49
+
- Use the Vocabulary template when the PR clearly introduces vocabulary changes
50
+
(e.g., PR description mentions an Excel upload or CI ran vocabulary
51
+
validation). Direct `.ttl` edits should be flagged (TTLs are CI-generated).
52
+
- Use the Docs / CI template when changes are in `docs/**`, Sphinx config (`docs/conf.py`), `.github/workflows/**`, tooling, or other infrastructure.
53
+
- Mixed PRs: pick the primary area of change and mention secondary impacts briefly. If vocabulary + docs both change substantially, you may include two short sections using both templates.
54
+
- Always avoid rehashing diffs; focus on correctness, classification, scope, build status, and next steps.
55
+
56
+
### File Discovery Hints
57
+
58
+
- Source Excel upload path: `inbox-excel-vocabs/voc4cat.xlsx` (transient; CI converts and removes it)
59
+
- TTL files are CI-generated and read-only in reviews; use only for context
60
+
- Glob for concept TTLs: `vocabularies/voc4cat/[0-9]*.ttl`
61
+
- Regex for concept TTLs: `vocabularies/voc4cat/[0-9]{7}\.ttl`
62
+
36
63
### What Makes a Good Contribution
37
64
38
65
-**Small, focused changes**: Single concept additions or small groups (~20 concepts)
@@ -43,11 +70,10 @@ Let me know if you need help identifying the appropriate parent concepts!
43
70
44
71
### What to Check in PRs
45
72
46
-
1.**File locations**: Excel files must be in `inbox-excel-vocabs/`
47
-
2.**File naming**: Keep as `voc4cat.xlsx`
48
-
3.**No direct .ttl edits**: Turtle files should only be modified by CI
49
-
4.**Documentation**: Changes should be described in PR description
50
-
5.**Size**: Large contributions should be split into smaller PRs
73
+
1.**Excel upload**: `inbox-excel-vocabs/voc4cat.xlsx` (if visible in the initial upload commit; CI may remove it after conversion)
74
+
2.**No direct .ttl edits**: Turtle files should only be modified by CI
75
+
3.**Documentation**: Changes should be described in PR description
76
+
4.**Size**: Large contributions should be split into smaller PRs
51
77
52
78
### Helpful Resources
53
79
@@ -76,7 +102,74 @@ Let me know if you need help identifying the appropriate parent concepts!
⚠️ We noticed that this pull request comes from an organization account,
146
-
which will prevent our CI workflow from working correctly.
152
+
> [!CAUTION]
153
+
> We noticed that this pull request comes from a fork under an organization account,
154
+
> which will prevent our CI workflow from working correctly.
147
155
148
156
GitHub does not allow the "Allow edits from maintainers" option for forks in organizations (see [discussion](https://github.com/orgs/community/discussions/5634)).
149
157
Our CI needs this permission to commit turtle files and clean up Excel files.
Copy file name to clipboardExpand all lines: README.md
+3-36Lines changed: 3 additions & 36 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,9 +17,8 @@ It uses the [voc4cat-tool](https://github.com/nfdi4cat/voc4cat-tool) and GitHub
17
17
## Basic principles
18
18
19
19
Voc4cat makes contributing easy for everyone with a GitHub account.
20
-
The process is essentially *(see further below for details,
21
-
browse through our [step-by-step guide](https://nfdi4cat.github.io/voc4cat/docs_usage/published-guidelines-v2.html#contribution-step-by-step-guide),
22
-
or read the guide in pdf form with screenshots of each step (https://zenodo.org/records/13757351)*.
20
+
The process is essentially *(browse through our [step-by-step guide](https://nfdi4cat.github.io/voc4cat/docs_usage/how-to-contribute.html),
21
+
or read the guide in pdf form with screenshots of each step (https://zenodo.org/records/13757351)*:
23
22
24
23
- Download the [most current vocabulary file (xlsx)](https://nfdi4cat.github.io/voc4cat/dev/voc4cat.xlsx),
25
24
- Edit the vocabulary file in Excel,
@@ -78,44 +77,12 @@ Both services offer API access to voc4cat. Skosmos has more SKOS-specific featur
78
77
79
78
To discuss about the **voc4cat**-vocabulary maintained here, create an [issue](https://github.com/nfdi4cat/voc4cat/issues).
80
79
81
-
To contribute new concepts or collections or change existing ones, you may either submit your contributions as Excel/xlsx-file or (as an expert) as new/changed turtle file.
80
+
To add new concepts or collections or change existing ones, please follow our [*"How to contribute?"*](https://nfdi4cat.github.io/voc4cat/docs_usage/how-to-contribute.html#) guide.
82
81
83
82
> Small contributions like adding a single concept are as valuable as bigger ones.
84
83
> In fact if you plan a bigger change (50+ concepts), consider splitting up the additions/changes into smaller chunks
85
84
> with max. ~20 changes to make the review process not too hard for the reviewers and you as author.
86
85
87
-
Here are the steps for submitting updates via Excel/xlsx:
88
-
89
-
<details>
90
-
91
-
- Get the Excel/xlsx-vocabulary file
92
-
- The most recent version of the vocabulary is always available via GitHub-pages https://nfdi4cat.github.io/voc4cat/dev/voc4cat.xlsx
93
-
- Make changes to the Excel file. If you want to add something new you need to [request a range of IDs](https://github.com/nfdi4cat/voc4cat/issues/new/choose) for you.
94
-
- Create a fork of the voc4cat repository (if you don't yet have one) or pull the latest changes to your fork (via "Sync fork" button in GUI).
95
-
- Create a feature branch for your contribution (via GitHub GUI or `git switch -c name-of-branch`)
96
-
- Add the xlsx file to the feature branch into the folder `inbox-excel-vocabs`
97
-
- The name of the file must match the vocabulary that you want to update. So do not change the filename, but keep `voc4cat.xlsx`.
98
-
- Create a pull request with the updated Excel-file in this repository.
99
-
- Please describe your changes and the motivation for the changes in the pull request note or link to an issue with this information.
100
-
This will help reviewers to understand the proposed change and decide about it.
101
-
- Your pull request will be processed automatically by a CI/CD pipeline that typically finishes in less than a minute.
102
-
- Review the artifacts/logs generated by the CI pipeline.
103
-
- The [workflow artifact](https://docs.github.com/en/actions/managing-workflow-runs/downloading-workflow-artifacts) will contain an updated xlsx file that is recreated from the updated turtle-files.
104
-
- If all is good your contribution will be either
105
-
- directly merged by the maintainers
106
-
- or a discussion will be started about what else is needed
107
-
- or why the proposed change may not fit.
108
-
- If you need to fix something, first pull the changes made by the action with `git pull` (or "sync" in GUI) and then commit further changes to the pull request branch in your clone.
109
-
- If any commits have been made by the CI pipeline, pull the changes to your repo (via "Sync fork" button in GUI) before committing any additional changes.
110
-
111
-
</details>
112
-
113
-
Finally, when the proposed pull request is accepted, your changes will be integrated in the vocabularies in the folder `vocabularies`.
114
-
The vocabularies are stored in split form using one folder per vocabulary.
115
-
Each concept, collection and concept scheme is stored in a separate file using the ID-part of the IRI as file name.
116
-
117
-
See [inbox-excel-vocabs/README.md](https://github.com/nfdi4cat/voc4cat/tree/main/inbox-excel-vocabs/README.md) for a minimal example how to test the submission process.
118
-
119
86
## How to suggest improvements to the tooling & template?
120
87
121
88
To discuss about the workflow for maintaining SKOS vocabularies based on this template, create an [voc4cat-template issue](https://github.com/nfdi4cat/voc4cat-template/issues).
Copy file name to clipboardExpand all lines: docs/docs_usage/how-to-contribute.md
+11-7Lines changed: 11 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -151,7 +151,7 @@ From the root directory of your cloned repo:
151
151
152
152
2. Sync your fork with upstream nfdi4cat/voc4cat. Press the green "Sync fork" button which makes your fork/clone an exact copy of upstream `main` again (nfdi4cat/voc4cat). If this fails, see [](#troubleshooting).
153
153
154
-
:::{dropdown} **Be careful when you "*Sync fork*" in GitHub UI.**
154
+
:::{dropdown} Be careful when you "*Sync fork*" in GitHub UI.
155
155
:icon: copilot-warning
156
156
**It should look like this screenshot.** Your main branch should only be behind the forked repository (not ahead of it).
157
157
@@ -242,7 +242,7 @@ The downloaded Excel file consists of seven sheets:
242
242
243
243
The *Concepts* sheet is where most contributions by users will be made.
244
244
Detailed descriptions on how to properly fill these columns can be found
245
-
in paragraph 6.6. There are nine columns used in the “*Concepts*” sheet:
245
+
in the [guidelines](guidelines.md). There are nine columns used in the “*Concepts*” sheet:
246
246
247
247
1.**Concept IRI**: Must be a valid URI. This is based on the
248
248
Vocabulary URI (Uniform Resource Identifier) and for new
@@ -376,17 +376,21 @@ git push
376
376
377
377
- Open the GitHub page of your fork `https://github.com/<your_username>/voc4cat` and - if you already created a branch for your contribution - switch to the branch.
378
378
- Open the “inbox-excel-vocabs” folder
379
-
- Click click on the "*Add file*" then "*Upload files*" to open a file a file submission page.
379
+
- Click click on the "*Add file*" then "*Upload files*" to open a file submission page.
380
380
- Upload the voc4cat.xlsx file (the file name must be exactly this).
381
-
- Commit the uploaded file making sure that you **commit to your feature-branch** (not `main`). If you have to create a new branch, you may change the default name to a more reasonable name describing your contribution in the form `issue###_<short_title>`.
381
+
- Commit the uploaded file making sure that you **commit to your feature-branch** (not `main`).
382
+
If you have to create a new branch, you may change the default name to a more reasonable name describing your contribution in the form `issue###_<short_title>`.
382
383
383
384
:::
384
385
::::
385
386
386
387
**Create the pull request**
387
388
388
-
The easiest way is go to the original [nfdi4cat/voc4cat](https://github.com/nfdi4cat/voc4cat) repository.
389
-
A notification will show up (1st screenshot) and if you click "Compare & pull request" the defaults will be correct (2nd screenshot).
389
+
The easiest way is go to the original [nfdi4cat/voc4cat](https://github.com/nfdi4cat/voc4cat) repository.
390
+
A notification will show up (1st screenshot).
391
+
After clicking on "Compare & pull request" you will be asked about the source and target of your PR.
392
+
Verify that the defaults are correct (2nd screenshot).
393
+
If the selection box on the left does not show the upstream voc4cat repository, click on the "compare across forks" link to switch the view.
390
394
391
395
```{figure} media/create-pr-msg.png
392
396
:alt: Screenshot of GitHub UI suggesting to create a PR from your fork
0 commit comments