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

Define element categories: Metadata, Feature, Extent #230

Open
wants to merge 3 commits into
base: gh-pages
Choose a base branch
from

Conversation

Malvoz
Copy link
Member

@Malvoz Malvoz commented Apr 5, 2022

Quite an old and I guess semi-experimental branch, because I'm not exactly sure if we should go through with #206.

  • Fixes <style> not specified #209

    By (re-)defining the <style> element.

  • Fixes Use of "Metadata content" in <layer>'s content model #84

    If you want to allow only MapML elements here, don't use "metadata content"

    We do want to use at least a subset of (HTML) metadata elements. We now (re-)define all allowed metadata elements, and link to our definition of "metadata", and not HTML's. They include "Elements from other namespaces whose semantics are primarily metadata-related (e.g. RDF)".

    (At some point we may want to change these metadata elements' definitions to just link to the HTML spec instead, if that makes sense. Same as SVG: https://www.w3.org/TR/SVG/struct.html#HTMLMetadataElements.)

  • Fixes Define MapML element Categories? #206

    Defines Metadata-, Feature-, and Extent content to help with establishing the content models of MapML elements.

    This also allows the reader to create a mental model of MapML's structure, see the sidebar:

    mapml-element-categories

@Malvoz
Copy link
Member Author

Malvoz commented Apr 5, 2022

The large edits in this PR are due to moving the tile and image elements to their respective sections.

@Malvoz Malvoz requested a review from prushforth April 5, 2022 21:30
Copy link
Member

@prushforth prushforth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think having granular content categories is fine. We can aggregate later if necessary and as appropriate

@prushforth
Copy link
Member

prushforth commented Apr 6, 2022

Note that "extent content", if used like the term "phrasing content" or similar means that the list of elements that are characterized as "extent content" are allowed here / have meaning here, but that's not the case in your use of the term in the image above. What we want "extent content" to mean (if we define such a category) is "the extent element can be used here, see elsewhere for what content category is allowed inside the extent element itself". I don't yet have another element that I can think of as "extent content" besides <extent> itself.

@Malvoz
Copy link
Member Author

Malvoz commented Apr 6, 2022

What we want "extent content" to mean (if we define such a category) is "the extent element can be used here, see elsewhere for what content category is allowed inside the extent element itself"

If you follow: Content model of layer -> Extent content -> (e.g.) input:

Contexts in which this element can be used:
    Required to be a child of the extent element.

I think it makes sense (although the Contexts will need updating in some other cases: #74). OTOH it seem to go against the definition of Contexts in which this element can be used:

This information is redundant with the content models of elements that allow this one as a child, and is provided only as a convenience.

So maybe:

  1. take out extent from Extent content, take out feature from Feature content
  2. in the Content models for layer and body allow (in conjunction to Metadata content and tile) extent and feature elements (as opposed to Extent content and Feature content)
  3. use Extent content as Content model for extent only, use Feature content as Content model for feature only
  4. (what should Categories be for feature, extent and tile?)

@Malvoz
Copy link
Member Author

Malvoz commented Apr 6, 2022

Updated Feature and Extent element categories per above comments, in 281817e:

updated-element-categories

@Malvoz Malvoz requested a review from prushforth April 6, 2022 11:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants