ionwg/ion-doc

Parser rules for meta members

Closed this issue · 3 comments

https://github.com/ionwg/ion-doc/blame/master/draft-ion.adoc#L322

A Meta Object MAY contain members that are not defined in the Ion Metadata Member Registry. Any member not understood by an Ion parser SHOULD be ignored.

No requirement is stated for the parser to recognise registered members. I would suggest:

A Meta Object MAY contain members that are not defined in the Ion Metadata Member Registry. An Ion Parser:

  1. MUST recognise all members defined in the Ion Metadata Member Registry,
  2. MAY recognise members which are not defined in the Ion Metadata Member Registry,
  3. MUST ignore members which it does not understand, that is, it MUST continue to parse without failure

Thanks for the issue. The current language has been changed to:

An Ion Parser:

  1. MUST recognize all members defined in the Ion Object Member Registry,
  2. MAY recognize members which are not defined in the Ion Object Member Registry,
  3. MUST ignore members which it does not understand.

I removed the first sentence because it's stated in the 2nd point.

I also truncated the last part of the last sentence because 'continuing to parse without failure' might cause confusion (maybe there is an error later that should cause parsing to fail but the previous wording might indicate it shouldn't?). The 'must ignore members which it does not understand' basically covers 'don't fail when encountering what you don't understand' scenarios.

Does that work? Thoughts?

Works for me

Closing due to removal of the meta member. Feel free to open a new issue or ask a question on StackOverflow for any followups. Thanks!