Maps4HTML / MapML-Specification

Map Markup Language is hypertext for Web maps, like HTML is hypertext for Web pages https://maps4html.org/MapML-Specification/spec/
Other
55 stars 12 forks source link

Define element categories: Metadata, Feature, Extent #230

Open Malvoz opened 2 years ago

Malvoz commented 2 years ago

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

Malvoz commented 2 years ago

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

prushforth commented 2 years ago

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 \ itself.

Malvoz commented 2 years ago

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: https://github.com/Maps4HTML/MapML/issues/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 commented 2 years ago

Updated Feature and Extent element categories per above comments, in https://github.com/Maps4HTML/MapML/pull/230/commits/281817e23eff51353ee20eb587f62b71f52038f4:

updated-element-categories