Spec prose for the version declaration

Here’s my first attempt:

If a version declaration is present in an Invisible XML grammar, it is an assertion by the author that this grammar was written with the rules of the version so declared in mind. 

An implemenation will either recognize the version string or it will not. If it recognizes the version string, it _should_ process the grammar using the syntax and semantics of the declared version. If a version declaration is not present, an implementation _should_ behave as if the grammar was labeled “1.0”.

If it does not recognize the version string, it may issue a warning, but it *must* attempt to process the grammar. If it finds a syntactically valid interpretation of the grammar, it _should_ proceed using the semantics of that version of Invisible XML. It *must* reject (error Sxxx) any grammar for which it cannot find a syntactic interpretation.

See:

  https://github.com/invisibleXML/ixml/issues/63#issuecomment-1100917298

                                        Be seeing you,
                                          norm

--
Norm Tovey-Walsh
Saxonica

Received on Sunday, 17 April 2022 17:10:50 UTC