opengeospatial / opengeospatial/bblocks-postprocess

XML schema support?

Open
#31 0 comments 0 reactions 2 assignees View on GitHub

@rob-metalinkage is already working on this.

Since Feb 12, 2024.

enhancement
Dominant language
Python
Stars
1
Forks
6
Avg merge
5d 10h
Merged PRs (30d)
3

Description

There is a need to support XML schemas in a similar manner to JSON ones. Some ideas for discussion:

  • Most likely XML Schema, in the form of XSD files, would be the schema format.
    • By default, schema.xsd would be detected (like schema.yaml or schema.json).
    • Should we re-use the schema keyword in bblock.json or define a new one (e.g., xmlSchema)? Reusing would mean implementing some kind of autodetection (trial-and-error?) mechanism to tell XML and YAML/JSON files apart (e.g., when the URL does not have an extension).
    • schemaLocations in xs:imports could use bblocks:// URIs.
    • What would dependency detection look like?
      • <xs:import schemaLocation="...">
      • What else?
  • XSLT could be used for XML to RDF transforms.
    • Would it be even possible to make it work the same way as JSON-LD contexts (i.e., with some kind of nesting)?
    • I think XML schema annotation (like we do in JSON schemas) wouldn't make sense.
    • XSLT > 1 support is not great outside of Java. There are a few projects that wrap the Saxon/C library from Saxonica, but only the FOSS version (which may be enough, though).

Related links:

CC @rob-metalinkage @pzaborowski

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.