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

specify that datetime string serialization to conform to ISO 8601 #37

Open
pahjbo opened this issue Dec 15, 2023 · 3 comments
Open

specify that datetime string serialization to conform to ISO 8601 #37

pahjbo opened this issue Dec 15, 2023 · 3 comments
Labels
documentation Improvements or additions to documentation VO-DML Language relates to the core VO-DML meta-model
Milestone

Comments

@pahjbo
Copy link
Member

pahjbo commented Dec 15, 2023

update the base IVOA model documentation to make this clear - separate distinction with times in CoordsDM

preferably UTC - but as long as the string conforms to ISO 8601 then this does not matter.

@pahjbo pahjbo added documentation Improvements or additions to documentation VO-DML Language relates to the core VO-DML meta-model labels Dec 15, 2023
@pahjbo pahjbo added this to the VO-DML 1.1 milestone Dec 15, 2023
pahjbo added a commit that referenced this issue Dec 21, 2023
this is in reference to #37
@pdowler
Copy link
Member

pdowler commented Jan 28, 2025

Should the model actually specify serialization? Are there other cases where it does?

@pahjbo
Copy link
Member Author

pahjbo commented Jan 31, 2025

In general the standard does make a distinction between "logical" and "physical" representations of a model instance and clearly for the logical representation there is no serialisation - however for the physical representation then there is and Appendix B does discuss this somewhat. I have been trying to promote the idea in the vodmltools that there is a "standard" serialisation of model instances (in a direct object tree representation as opposed to other serialisations like MIVOT) in various formats for direct interoperability - and in particular this makes it easy to have a JSON representation that can be used for APIs for instance.

Perhaps these "standard" serialisations as I am calling them could be in a separate document

@Zarquan
Copy link
Member

Zarquan commented Feb 1, 2025

I have been trying to promote the idea in the vodmltools that there is a "standard" serialisation of model instances ...

I have been trying to promote the idea of separating the details of data model from the serialisation.

I want to avoid making the same mistake we made in the early development of linking our standards too strongly to XML (understandable at the time, but a mistake nevertheless) by simply replacing XML with JSON.

Separate documents sounds good.

We should also make it clear that rules like ISO 8601 only apply to specific text based serializations.

Part of the results from the P3T work proposed separate documents defining the rules for each serialization format.

  • IVOA JSON Serialization profile
    Datetime serliaised as ISO 8601 strings

  • IVOA Avro Serialization profile
    Datetime serliaised as long (microseconds from the unix epoch)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation VO-DML Language relates to the core VO-DML meta-model
Projects
None yet
Development

No branches or pull requests

3 participants