Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement NIST CAXIF as skin of generic #77

Open
opoudjis opened this issue Sep 5, 2023 · 15 comments
Open

Implement NIST CAXIF as skin of generic #77

opoudjis opened this issue Sep 5, 2023 · 15 comments
Assignees
Labels
enhancement New feature or request

Comments

@opoudjis
Copy link
Contributor

opoudjis commented Sep 5, 2023

Note: not as a new gem inheriting from generic, but as a pure skin of generic—bundling generic with stylesheets and config. If we can't do that, and require gems for each new deployment of an SDO, we will never get scale.

That means they don't get to have a wishlist: it is a bare bones implementation, as much as can be put in by configuration.

"NIST CAXIF: want a new flavour, to publish EXPRESS docs and non-MDA docs"

This hopefully does not make the skin implementation impossible.

@opoudjis opoudjis added the enhancement New feature or request label Sep 5, 2023
@opoudjis opoudjis self-assigned this Sep 5, 2023
@github-project-automation github-project-automation bot moved this to 🆕 New in Metanorma Sep 5, 2023
@opoudjis
Copy link
Contributor Author

opoudjis commented Sep 5, 2023

@ronaldtse Where is the documentation for this org?

@opoudjis opoudjis moved this from 🆕 New to 🏗 In progress in Metanorma Sep 8, 2023
@opoudjis
Copy link
Contributor Author

opoudjis commented Sep 8, 2023

Using :customize: attribute to specify a local metanorma.yaml file; directories are being treated as relative to the metanorma-generic gem, rather than relative to the metanorma.yaml specified.

The metanorma.yaml file is the skin, and we can go a fair way just with that. The expectation to migrate more functionality to the config file is longstanding and remains overly optimistic; we can add the ordering of sections in the document, which is now a config in arrays in code.

@opoudjis opoudjis moved this from 🏗 In progress to 🏔 High priority in Metanorma Oct 12, 2023
@opoudjis
Copy link
Contributor Author

opoudjis commented Jan 8, 2024

@alexeymorozov I would like for this to be your next project. Please get in touch so I can explain a bit more about this. https://www.metanorma.org/builder/topics/simple-adoption/ gives some necessary background.

@alexeymorozov alexeymorozov self-assigned this Jan 8, 2024
@alexeymorozov
Copy link

As we discussed with Nick, I've tried the customize: attribute and, at least in some way, it works. Here is an example:

  1. adoc file
  2. a custom config
  3. output doc, html and other files

https://github.com/alexeymorozov/nist-caxif

Now I need styling specifications of CAx-IF or an example of a target document.

@alexeymorozov
Copy link

@opoudjis @ronaldtse What are our priorities? Do I need to talk to someone in CAx-IF to gather specifications or more information on the requirements?

@ronaldtse
Copy link
Contributor

ronaldtse commented Feb 11, 2024

The documents are now provided here:

I'll get some of the documents encoded for sample purposes:

@opoudjis opoudjis moved this from 🏔 High priority to 🏗 In progress in Metanorma Jul 29, 2024
@opoudjis
Copy link
Contributor Author

opoudjis commented Aug 9, 2024

As part of making metanorma-generic more adaptable: need to add fontist config and output formats to the YAML. Also PDF stylesheet name. As little as possible needs to be in code.

opoudjis added a commit that referenced this issue Aug 11, 2024
opoudjis added a commit to metanorma/metanorma-cc that referenced this issue Aug 11, 2024
opoudjis added a commit to metanorma/metanorma-csa that referenced this issue Aug 11, 2024
opoudjis added a commit to metanorma/metanorma-iho that referenced this issue Aug 11, 2024
opoudjis added a commit to metanorma/metanorma-ribose that referenced this issue Aug 11, 2024
opoudjis added a commit to metanorma/metanorma-bipm that referenced this issue Aug 11, 2024
opoudjis added a commit to metanorma/isodoc that referenced this issue Aug 11, 2024
opoudjis added a commit that referenced this issue Aug 11, 2024
opoudjis added a commit that referenced this issue Aug 11, 2024
opoudjis added a commit to metanorma/metanorma-cc that referenced this issue Aug 11, 2024
opoudjis added a commit to metanorma/isodoc that referenced this issue Aug 12, 2024
opoudjis added a commit to metanorma/metanorma-bipm that referenced this issue Aug 13, 2024
@opoudjis
Copy link
Contributor Author

@ronaldtse I see you expect something like this:

https://github.com/metanorma/mn-samples-mbxif/blob/main/reference-docs/ewis-if/EWIS_test_suite_v1-0.pdf

Screenshot 2024-08-19 at 21 13 33

to be delivered by a config-only, zero code instance of metanorma-generic.

That is not a reasonable expectation.

@opoudjis opoudjis moved this from 🏗 In progress to 🏝 Low priority in Metanorma Aug 19, 2024
@opoudjis
Copy link
Contributor Author

I am going to compile the first document I find, just to see what happens, using the ISO HTML and PDF stylesheets for rendering, stored in html/, and a local metanorma-generic configuration file. That's going to be bundle exec metanorma compile sources/cae-if/HandbookVolume2_V1.1_CAE-IF/document.adoc, using :customize: ../../../metanorma-config.yml . That's an initial proof of concept that rendering can be done with local rendering assets at all.

opoudjis added a commit to metanorma/mn-samples-mbxif that referenced this issue Aug 19, 2024
@opoudjis opoudjis moved this from 🏝 Low priority to 🏗 In progress in Metanorma Aug 20, 2024
@opoudjis
Copy link
Contributor Author

Need to deal with resolving paths when compiling in a remote directory: customize: ../../../yml is looking for stylesheets at the document root, not the config file root.

Need to configure supported formats: is refusing to process PDF, because it's not in generic.

@opoudjis
Copy link
Contributor Author

need to make sure that when I reread the YAML file from :customize: , its default values (including formats) are still processed; they had been ignored on reread anyway.

@opoudjis
Copy link
Contributor Author

Race condition: metanorma compile is extracting formats, before the document is processed so that :customize: can override the formats.

But in fact, the extensions aren't needed until after we compile the Semantic Metanorma XML. We extract them beforehand, to test if there is an illegal extension, and thus abort. But... generating the Semantic XML even if an illegal extension is included is not that big a deal, and could be used in debugging anyway. So will delay that test until after Semantic XML is generated (and thus, :customize: has already been read in).

@opoudjis
Copy link
Contributor Author

Metanorma compile cannot see the updates being done to the metanorma-generic processor (including its formats); Metanorma accesses processors through Registry, but metanorma-generic does not.

@opoudjis
Copy link
Contributor Author

... Need config file path to be absolute, working directory and document directory getting confused.

opoudjis added a commit that referenced this issue Aug 22, 2024
opoudjis added a commit that referenced this issue Aug 22, 2024
opoudjis added a commit that referenced this issue Aug 22, 2024
opoudjis added a commit that referenced this issue Aug 22, 2024
@opoudjis
Copy link
Contributor Author

After a very VERY long time, we finally have the ability to compile a metanorma-generic file using local config.

opoudjis added a commit to metanorma/metanorma.org that referenced this issue Aug 23, 2024
opoudjis added a commit to metanorma/metanorma-iho that referenced this issue Aug 23, 2024
ronaldtse pushed a commit to metanorma/metanorma.org that referenced this issue Aug 24, 2024
ronaldtse pushed a commit to metanorma/metanorma.org that referenced this issue Aug 24, 2024
@opoudjis opoudjis moved this from 🏗 In progress to 🏕 Med priority in Metanorma Aug 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: 🏕 Med priority
Development

No branches or pull requests

3 participants