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

Change recommendation on schema version reference. #19

Open
tomdonaldson opened this issue May 15, 2020 · 1 comment
Open

Change recommendation on schema version reference. #19

tomdonaldson opened this issue May 15, 2020 · 1 comment
Milestone

Comments

@tomdonaldson
Copy link
Contributor

The current guidance on versioning is that the namespace URI should remain constant for all minor revisions of a major document version (see the endorsed note on XML Schema Versioning Policies, section 2.2.3). That's fine, but the added feature of having that URI be a URL that redirects to the latest schema version is more confusing than convenient, and we should not be recommending it.

That endorsed note was not in force for VOTable version 1.0 through 1.3, so 1.x versions after 1.3 became somewhat confusing. For VOTable 1.4, the schema location is http://www.ivoa.net/xml/VOTable/votable-1.4.xsd, while the namespace URI is http://www.ivoa.net/xml/VOTable/v1.3 (which for "convenience" functions as a URL that redirects to the actual 1.4 schema location).

The need to support that namespace redirection forces the VOTable schema to actually be incorrect in that it allows version="1.3" and the TIMESYS element in the same document. It must do this to simultaneously support the backward compatibility required by the namespace redirection and 1.4-only features like TIMESYS.

The fact that the namespace URI redirects to the schema URL is outside the scope of the VOTable specification. Nevertheless, we should recommend that if a VOTable specifies the schema location, it should use the explicitly versioned URL (e.g., http://www.ivoa.net/xml/VOTable/votable-1.4.xsd). Can we even override the note and not permit the use of the namespace URI for the schema location?

@tomdonaldson tomdonaldson added this to the v1.5 milestone May 15, 2020
@tomdonaldson
Copy link
Contributor Author

Let's make this a lot clearer in v2.0.

@tomdonaldson tomdonaldson modified the milestones: v1.5, v2.0 Feb 17, 2023
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

No branches or pull requests

1 participant