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

contributed vs application definitions #775

Closed
RealPolitiX opened this issue May 15, 2020 · 12 comments
Closed

contributed vs application definitions #775

RealPolitiX opened this issue May 15, 2020 · 12 comments
Assignees
Labels
Milestone

Comments

@RealPolitiX
Copy link

RealPolitiX commented May 15, 2020

I have a few questions on contributed and application definitions

  1. What's the procedure to submit a new contributed definition for a new type of experiment? Say if we want to write an xml file, is there code available to parser it to make sure the syntax is correct?
  2. Will contributed definitions ever become application definitions?
  3. If people want to amend or extend existing application or contributed definitions, whom should they communicate with?
  4. Does NIAC release example files for each application or contributed definition?
@prjemian prjemian self-assigned this May 15, 2020
@prjemian prjemian added this to the NXDL 2020.10 milestone May 15, 2020
@prjemian
Copy link
Contributor

1.b. xmllint --noout --schema nxdl.xsd base_classes/NXentry.nxdl.xml will validate NXentry when current working directory is root of the definitions tree

There are other ways but this is most straightforward.

@prjemian
Copy link
Contributor

1.a. fork the definitions repository, add the new files, make a pull request - then the questions start :)

contributed definitions include propositions from the community for NeXus base classes or application definitions

@prjemian
Copy link
Contributor

  1. after at least a year of incubation, if at all

Consider the contributed definitions as either in incubation or a special case not for general use.

-- https://manual.nexusformat.org/classes/index.html

@prjemian
Copy link
Contributor

Ratification (acceptance) of a new base class or application definition requires a vote of the full NIAC.

-- https://manual.nexusformat.org/niac.html

@prjemian
Copy link
Contributor

  1. make a new issue: https://github.com/nexusformat/definitions/issues/new and state your ideas

@prjemian
Copy link
Contributor

  1. NeXus has an example data file repository that is edited occasionally. See https://github.com/nexusformat/exampledata for what is available. No one yet has taken the mission to ensure there is at least one example for every base class or application. That is a laudable goal. (To my knowledge, I don't even know what fraction of the base classes are used in the example data.)

@prjemian
Copy link
Contributor

Does that help answer your questions?

@prjemian
Copy link
Contributor

Here is an example of a request for change in the NXsas definition: #523

@prjemian
Copy link
Contributor

NXDL validation example:

# xmllint --noout --schema nxdl.xsd base_classes/NXentry.nxdl.xml
# base_classes/NXentry.nxdl.xml validates

@prjemian
Copy link
Contributor

Looks like definitions/utils/test_nxdl.py will validate ALL NXDL files when called as it is from

python utils/test_suite.py
(that's part of our continuous integration process)

@RealPolitiX
Copy link
Author

Thanks a lot @prjemian, these are very timely and illustrative information.

@prjemian
Copy link
Contributor

Seems that we've answered your questions. Closing now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants