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

"include base IVOA definitions from github location" should point to IVOA-v1.0.vodsl #12

Open
hugobuddel opened this issue May 28, 2019 · 4 comments

Comments

@hugobuddel
Copy link

Intellisense suggests to "include base IVOA definitions from github location" in an empty vodsl file.

However, this will add

include "https://github.com/ivoa/vodsl-models/raw/master/IVOA.vodsl"

but this file is renamed to IVOA-v1.0.vodsl and the include should be:

include https://raw.githubusercontent.com/ivoa/vodsl-models/master/IVOA-v1.0.vodsl

(Apparently github also uses a new URL format.)

See also the instruction video https://www.youtube.com/watch?v=xzSk413raLY&feature=youtu.be&t=282

@hugobuddel
Copy link
Author

Also, the generated url in the XML file is incorrect. It generates

      <import>
        <name>tbd</name><!--should be able to work out from the included model -->
        <url>https://github.com/ivoa/vodsl-models/raw/master/IVOA-v1.0.vo-dml.xml</url>
        <documentationURL>not known</documentationURL>
      </import>

This should be

        <url>https://github.com/ivoa/vodsl-models/raw/master/src_gen/IVOA-v1.0.vo-dml.xml</url>

However, the IVOA*.vo-dml.xml file has been removed in ivoa/vodsl-models@622fb89#diff-a5c408e3d05880d4e8e31b49c6087580

@pahjbo
Copy link
Owner

pahjbo commented May 28, 2019

It is slightly tricky to come up with a best solution here, in the specific case of this top level IVOA model, as the generated VO-XML should not be viewed as the official version of this model - it is not that obvious where that actually resides - though it is http://www.ivoa.net/xml/VODML/IVOA-v1.vo-dml.xml, and I did not want to have another version actually in the GitHub repository.

At the same time I wanted the import mechanism to be generic - so I really do not want to be doing some different URL mangling depending on exactly where the file is hosted.

The end result is that at the moment the imports really only work well when they are all relative ( although there is the capability of doing an absolute import, but that assumes that the VODSL and VODML files are hosted beside each other) I might be able to persuade people to host the VODSL file on the IVOA web site - which would be a solution to that problem.

So the current workaround is to just copy the IVOA VODSL model file locally into your project and potentially post-process the any models produced VODML files to edit the import url to be that of the official IVOA base model.

@hugobuddel
Copy link
Author

Yeah the general problem is hard to solve. That's all the more reason to have the Intellisense suggestion at least work, even when it is not the optimal solution.

The intellisense suggestion currently does not work because of changes to vodsl-models:

  • The vodsl file it includes is missing the -v1.0 identifier that is now necessary.
  • The xml file that is included in the generated vodsl/xml file does not exist anymore.

pahjbo added a commit that referenced this issue May 29, 2019
this is a partial workaround to #12
@pahjbo
Copy link
Owner

pahjbo commented Dec 15, 2023

note that if using vo-dml tooling (the preferred way to consume VODSL nowadays)

include "./build/tmp/IVOA-v1.0.vodsl"

is more appropriate - at least the point is that the tooling will create the VODSL files for the model dependencies in the top level build/tmp directory, so the relative link depends on where the referencing VODSL file lives

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

2 participants