Skip to content

Migrate schema tutorial files from GitLab MR !2286 and update mkdocs …#7

Open
siamakn wants to merge 24 commits intodevelopfrom
5-rewrite-schema-tutorial-migrated-from-gitlab-2286
Open

Migrate schema tutorial files from GitLab MR !2286 and update mkdocs …#7
siamakn wants to merge 24 commits intodevelopfrom
5-rewrite-schema-tutorial-migrated-from-gitlab-2286

Conversation

@siamakn
Copy link
Contributor

@siamakn siamakn commented Apr 23, 2025

…config

Closes #56
Closes #5

@siamakn siamakn requested a review from hampusnasstrom April 23, 2025 15:16
@siamakn siamakn self-assigned this Apr 23, 2025
@siamakn siamakn linked an issue Apr 23, 2025 that may be closed by this pull request
Copy link
Contributor

@hampusnasstrom hampusnasstrom left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@siamakn I've gone through the first two pages for now and added my comments. I think we should discuss some things there before moving on.

mkdocs.yml Outdated
- Exploring data: tutorial/explore.md
- Access data via API: tutorial/access_api.md
- Schemas and plugins: tutorial/custom.md
- Schemas and plugins:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if this should really be called "Schemas and plugins" as we have another tutorial below on how to develop a plugin. What do you think?

@hampusnasstrom
Copy link
Contributor

@ahm531 this is the PR from Siamak that should be merged in under the ELN tutorial somehow.

@siamakn siamakn force-pushed the 5-rewrite-schema-tutorial-migrated-from-gitlab-2286 branch from a4cb44e to f1f9ebd Compare July 30, 2025 13:54
- Enable ELN functionality for manual data input and structured documentation.
- Extract structured data from files using parsers, which allow NOMAD to read data from raw files.
- Transform and enrich data post-upload using normalizers, ensuring compatibility with schema requirements and enhancing metadata consistency.
- Transform and enrich data, post-upload, using [normalizers](../../reference/glossary.md#normalizer), ensuring compatibility with schema requirements and enhancing metadata consistency.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But do you really mean a "normalizer" here? Aren't you referring to the normalize method of a schema?

@lauri-codes lauri-codes changed the base branch from main to develop October 10, 2025 05:47
@siamakn siamakn force-pushed the 5-rewrite-schema-tutorial-migrated-from-gitlab-2286 branch from f1f9ebd to 115d571 Compare January 6, 2026 13:06
@siamakn siamakn requested a review from ahm531 January 30, 2026 18:45
@github-actions
Copy link
Contributor

github-actions bot commented Feb 2, 2026

PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://FAIRmat-NFDI.github.io/nomad-docs/pr-preview/pr-7/

Built to branch gh-pages at 2026-02-27 15:30 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@siamakn
Copy link
Contributor Author

siamakn commented Feb 2, 2026

Hi @yanghaoyu97@outlook.com @DanielYang59,

I modified the tests/test_assets.py while updating the ELN tutorial in the docs. Locally the test was telling ca. 81 images in docs/tutorial/images were “unused” even though they were referenced (e.g. pages under docs/tutorial/eln/ linking via ../images/...).

The newly generated pages pages live under docs/tutorial/eln/, but images live under docs/tutorial/images/. Those pages reference images via relative paths like ../images/....

The previous test only looked for images filenames (assets in general) in md files located in the same directory level as the images/ or data/ folder, so references from nested subfolders (in my case docs/tutorial/eln/*) could be missed (I hit this locally and it reported many images as "unused" even though they are referenced in the my md pages).

With this modification: for each images/ and data/ folder, it scans the md files in the parent folder as well as its subfolders (while skipping images/ and data/ during the scan).

Could you please confirm , or if you would prefer to keep the old behavior, I can revert this test changes.

@DanielYang59
Copy link
Collaborator

DanielYang59 commented Feb 2, 2026

Hi @siamakn I think @blueraft implemented that in #110 using Gemini CLI. But I guess it would be better if assets are scanned recursively?

@siamakn
Copy link
Contributor Author

siamakn commented Feb 3, 2026

@DanielYang59 Thanks, Yes, it is exactly what I changed.
@blueraft, I added you as reviewer. Could you please have a quick look at the modified test_assets.py this PR?

@siamakn siamakn requested a review from blueraft February 3, 2026 10:57
@blueraft
Copy link
Collaborator

blueraft commented Feb 3, 2026

Could you create a new branch and copy over the test_assets.py changes? It would be easier to review without all of the other changes in this PR

…ediate sub-directory then updated links to images
…ance clarity, update learning objectives, and improve structure.
…eriment, improve structure, and general revision
@blueraft blueraft removed their request for review February 3, 2026 16:23
…ate example experiment details, and improve structure.
Copy link
Contributor

@ahm531 ahm531 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@siamakn Thank you very much! This is great work.
I have gone through the pages you have created and made several changes to improve consistency and clarity.

Main structural changes:

  • Included the example admonitions for both in custom_eln_yaml.md and tabular_parser_yaml.md, to provide context of the scientific example used in the tutorials.
  • “What you learn” come before “Before you Begin” - this was also corrected in the tutorials template. The Reasoning here is that the reader can first decide if it is something they are interested in reading, and then they evaluate if they can do it with the knowledge they have.
  • Removed the section “A quick map of what your are building”. The path of the tutorial is provided concisely in the introductory part of each tutorial + the what you will learn. This paragraph is good and provides a more detailed and technical perspective of what will be done, however, I see the potential risk of introducing an overhead for the reader considering the technical terms not introduced.
    For this reason, I would stick the general introduction paragraph provided.
  • Simplified the tasks when code is involved. The task in each step would to copy-paste a code snippet into a folder they are working with. This can be preceded with some introductory and concise statements, however, the “DO” task is to add the code to their schema file.
    After this, clarification for the various elements is provided as bullet list (as complete as needed - precise - and concise as possible).
  • After each step, a checkpoint (admonition: success) is provided to show the current state of the file and to ensure that things are copied an pasted in the right place/indentation/order.

Content changes:
I have rewritten some parts to improve consistency with the other tutorials and provide more clarity while attempty stay concise.

Action requested:
The changes I made are in the recent commit to the PR. Please go through them once more, checking for typos, and any technical issues that I may have caused with me changes.

Please update the imagesin the sliders. - Update them so that the font is Titillium web (consistent with the other images in the tutorial)

  • This applies for the image slider in step7 (both in custom_eln_yaml.md and tabular_parser_yaml.md)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Incomplete "Creating custom schemas" Tutorial Rewrite Schema Tutorial (migrated from GitLab !2286)

5 participants