From 8bd6845c711831befbe2a32dd8d758bce7d1ae63 Mon Sep 17 00:00:00 2001 From: Malvoz <26493779+Malvoz@users.noreply.github.com> Date: Thu, 4 Nov 2021 15:30:15 +0100 Subject: [PATCH 1/3] Define element categories: Metadata, Feature, Extent --- spec/index.html | 395 ++++++++++++++++++++++++++++++------------------ 1 file changed, 246 insertions(+), 149 deletions(-) diff --git a/spec/index.html b/spec/index.html index b74740f..23eff7a 100644 --- a/spec/index.html +++ b/spec/index.html @@ -43,7 +43,10 @@ edDraftURI: "https://maps4html.org/MapML/spec/", copyrightStart: "2015", github: "https://github.com/Maps4HTML/MapML/", - xref: "web-platform", + xref: { + specs: ["cssom-1"], + profile: "web-platform", + }, pluralize: true, localBiblio: { "Web-Map-Custom-Element": { @@ -186,6 +189,9 @@ :root dl.def dd + dt { margin-top: 0.75em; } + :root .toc > li li li li { + font-size: inherit; + } :root code, :root .hljs-deletion, :root .hljs-name, @@ -703,9 +709,14 @@

The <layer> element

Contexts in which this element can be used:
As a child of the map element.
Content model:
-
If the src attribute is present: Nothing. - If no src attribute is present: - Metadata content describing nested Map Markup Language content.
+
If the src attribute is present: Nothing.
+
+ If no src attribute is present: + Extent content, + Feature content, + Metadata content, + optional tile element. +
Content attributes:
Global attributes.
src — Address of the resource.
@@ -1513,7 +1524,7 @@
The <head> element
Contexts in which this element can be used:
As the first child element of the mapml element.
Content model:
-
One or more elements of metadata content, of which exactly one is a title element and no more than one is a base element.
+
One or more elements of Metadata content, of which exactly one is a title element and no more than one is a base element.
Content attributes:
Global attributes.
Accessibility considerations:
@@ -1563,11 +1574,29 @@
The <head> element
and zero or more meta elements.

+
+

Metadata content

+
+
Elements categorized as metadata content:
+
+ title, + base, + meta, + link, + style. +
+
+ Elements from other namespaces whose semantics are primarily + metadata-related (e.g. RDF) are also + metadata content. +
+
+
The <title> element
Categories:
-
Metadata content.
+
Metadata content.
Contexts in which this element can be used:
As a child of the head element.
Content model:
@@ -1625,7 +1654,7 @@
The <title> element
The <base> element
Categories:
-
Metadata content.
+
Metadata content.
Contexts in which this element can be used:
As a child element of the head element.
Content model:
@@ -1684,7 +1713,7 @@
The <base> element
The <meta> element
Categories:
-
Metadata content.
+
Metadata content.
Contexts in which this element can be used:
In the head element.
Content model:
@@ -1744,7 +1773,7 @@
The <meta> element
The <link> element
Categories:
-
Metadata content.
+
Metadata content.
Contexts in which this element can be used:
If the element represents a hyperlink (has a href attribute): as a child of the head or body element.
If the element represents a link template (has a tref attribute): as a child of the extent element.
@@ -1924,6 +1953,39 @@

@rel values

+
The <style> element
+
+
Categories:
+
Metadata content.
+
Contexts in which this element can be used:
+
Where Metadata content is expected.
+
Content model:
+
Text that gives a conformant style sheet.
+
Content attributes:
+
Global attributes.
+
media — Applicable media.
+
Also, the title attribute has special semantics on this element: CSS style sheet set name.
+
Accessibility considerations:
+
For authors.
+
For implementers.
+
DOM interface:
+
+
+            [Exposed=Window]
+            interface HTMLStyleElement : HTMLElement {
+              [HTMLConstructor] constructor();
+            
+              [CEReactions] attribute DOMString media;
+            
+              // also has obsolete members
+            };
+            HTMLStyleElement includes LinkStyle;
+            
+
+
+
+
+
The <body> element
Categories:
@@ -1931,7 +1993,12 @@
The <body> element
Contexts in which this element can be used:
As the second child of the mapml element.
Content model:
-
Features and metadata.
+
+ Extent content, + Feature content, + Metadata content, + optional tile element. +
Content attributes:
Global attributes.
Accessibility considerations:
@@ -1978,11 +2045,25 @@
The <body> element

The body element represents the content of the document.

+
+

Extent content

+
+
Elements categorized as extent content:
+
+ extent, + input, + datalist, + label, + select, + option. +
+
+
The <extent> element
Categories:
-
Metadata content.
+
Extent content.
Contexts in which this element can be used:
Required to be a child of the body element.
Content model:
@@ -2051,7 +2132,7 @@
The <extent> elementThe <input> element
Categories:
-
N/A.
+
Extent content.
Contexts in which this element can be used:
Required to be a child of the extent element.
Content model:
@@ -2388,7 +2469,7 @@

input@axis values

The <datalist> element
Categories:
-
N/A.
+
Extent content.
Contexts in which this element can be used:
As a child of the extent element, associated to an input element via that element's list attribute. @@ -2449,7 +2530,7 @@
The <datalist> eleme
The <label> element
Categories:
-
N/A.
+
Extent content.
Contexts in which this element can be used:
As a child of the extent element. @@ -2508,7 +2589,7 @@
The <label> element
The <select> element
Categories:
-
N/A.
+
Extent content.
Contexts in which this element can be used:
As a child of the extent element. @@ -2571,7 +2652,7 @@
The <select> elementThe <option> element
Categories:
-
N/A.
+
Extent content.
Contexts in which this element can be used:
As a child of the select element or the datalist element. @@ -2628,144 +2709,26 @@
The <option> element
-
-
The <tile> element
-
-
Categories:
-
Feature data.
-
Contexts in which this element can be used:
-
Child of the body element.
-
Content model:
-
Nothing.
-
Content attributes:
-
row — An integer (a Y axis value / the tile size) in the range of the tile coordinate reference system.
-
col — An integer (a X axis value / the tile size) in the domain of the tile coordinate reference system.
-
src — A URL from which the tile may be obtained.
-
type — A hint about the MIME type of the resource obtainable at the src URL.
-
Accessibility considerations:
-
-
- For authors -
- - - - - - - - - - - - - -
Implicit ARIA semanticsARIA roles, states and properties which MAY be used
- No corresponding role - -

No role or aria-* attributes.

-
-
-
-
-
-
- For implementers -
-
-
-
DOM interface:
-
-
-
-            [Exposed=Window]
-            interface HTMLTileElement : HTMLElement {
-              [HTMLConstructor] constructor();
-              
-              attribute long row;
-              attribute long col;
-              attribute DOMString src;
-              attribute DOMString type;
-            };
-            
-
-
-

- The tile element is a type of feature which is associated with a tiled coordinate reference system that subdivides or 'tiles' 2D space in a recursively repeating grid pattern, where the origin of both the tiled - coordinate reference system and the grid at all zoom levels is defined in coordinates of an underlying projected coordinate reference system. -

-

- A defining characteristic of tiled coordinate reference systems is that they rely on integer grid row/col coordinates and zoom values. The use of these values in URLs can yield highly cacheable resources, which can lead to - high-performance map services. -

-

- The "zoom" value is a global integer property of a MapML document whose coordinate system is defined by this specification. All MapML documents have a defined zoom value. The "zoom" value is equal to the - zoom@value child of the extent element. Hence the zoom value is not a direct attribute of the tile element. -

-

- The main example of such a tiled coordinate reference system is OSMTILE, although others exist. -

-
The <image> element
-
-
Categories:
-
Feature data.
-
Contexts in which this element can be used:
-
A child of the feature element, which has a sibling bbox element.
-
Content model:
-
Nothing.
-
Content attributes:
-
src — Address of the hyperlink.
-
type — A hint as to the MIME type of the resource.
-
Accessibility considerations:
-
-
- For authors -
- - - - - - - - - - - - - -
Implicit ARIA semanticsARIA roles, states and properties which MAY be used
- No corresponding role - -

No role or aria-* attributes.

-
-
-
-
-
-
- For implementers -
-
-
-
DOM interface:
+

Feature content

+
+
Elements categorized as feature content:
-
-            [Exposed=Window]
-            interface HTMLImageElement : HTMLElement {
-              [HTMLConstructor] constructor();
-            };
-            
+ feature, + featurecaption, + properties, + geometry, + coordinates, + image.
-
+
The <feature> element
Categories:
-
Feature data.
+
Feature content.
Interactive content.
Contexts in which this element can be used:
Child of the body element.
@@ -2832,7 +2795,7 @@
The <feature> element
The <featurecaption> element
Categories:
-
Feature data.
+
Feature content.
Contexts in which this element can be used:
As a child of a feature element containing no other featurecaption elements.
Content model:
@@ -2893,7 +2856,7 @@
The <featurecaption><
The <properties> element
Categories:
-
Feature data.
+
Feature content.
Contexts in which this element can be used:
A child of the feature element.
Content model:
@@ -2948,7 +2911,7 @@
The <properties> e
The <geometry> element
Categories:
-
Feature data.
+
Feature content.
Contexts in which this element can be used:
Child of the feature element.
Content model:
@@ -3089,7 +3052,7 @@
The <geometry> eleme
The <coordinates> element
Categories:
-
Feature data.
+
Feature content.
Contexts in which this element can be used:
A descendant of the geometry element, as the coordinate data which defines a feature geometry.
Content model:
@@ -3152,6 +3115,140 @@
The <coordinates> multipolygon element, the descendant coordinates elements must follow additional constraints.

+
+
The <image> element
+
+
Categories:
+
Feature content.
+
Contexts in which this element can be used:
+
A child of the feature element, which has a sibling bbox element.
+
Content model:
+
Nothing.
+
Content attributes:
+
src — Address of the hyperlink.
+
type — A hint as to the MIME type of the resource.
+
Accessibility considerations:
+
+
+ For authors +
+ + + + + + + + + + + + + +
Implicit ARIA semanticsARIA roles, states and properties which MAY be used
+ No corresponding role + +

No role or aria-* attributes.

+
+
+
+
+
+
+ For implementers +
+
+
+
DOM interface:
+
+
+            [Exposed=Window]
+            interface HTMLImageElement : HTMLElement {
+              [HTMLConstructor] constructor();
+            };
+            
+
+
+
+
+
+
The <tile> element
+
+
Categories:
+
None.
+
Contexts in which this element can be used:
+
Child of the body element.
+
Content model:
+
Nothing.
+
Content attributes:
+
row — An integer (a Y axis value / the tile size) in the range of the tile coordinate reference system.
+
col — An integer (a X axis value / the tile size) in the domain of the tile coordinate reference system.
+
src — A URL from which the tile may be obtained.
+
type — A hint about the MIME type of the resource obtainable at the src URL.
+
Accessibility considerations:
+
+
+ For authors +
+ + + + + + + + + + + + + +
Implicit ARIA semanticsARIA roles, states and properties which MAY be used
+ No corresponding role + +

No role or aria-* attributes.

+
+
+
+
+
+
+ For implementers +
+
+
+
DOM interface:
+
+
+
+            [Exposed=Window]
+            interface HTMLTileElement : HTMLElement {
+              [HTMLConstructor] constructor();
+              
+              attribute long row;
+              attribute long col;
+              attribute DOMString src;
+              attribute DOMString type;
+            };
+            
+
+
+

+ The tile element is a type of feature which is associated with a tiled coordinate reference system that subdivides or 'tiles' 2D space in a recursively repeating grid pattern, where the origin of both the tiled + coordinate reference system and the grid at all zoom levels is defined in coordinates of an underlying projected coordinate reference system. +

+

+ A defining characteristic of tiled coordinate reference systems is that they rely on integer grid row/col coordinates and zoom values. The use of these values in URLs can yield highly cacheable resources, which can lead to + high-performance map services. +

+

+ The "zoom" value is a global integer property of a MapML document whose coordinate system is defined by this specification. All MapML documents have a defined zoom value. The "zoom" value is equal to the + zoom@value child of the extent element. Hence the zoom value is not a direct attribute of the tile element. +

+

+ The main example of such a tiled coordinate reference system is OSMTILE, although others exist. +

+

Styling

From 281817e23eff51353ee20eb587f62b71f52038f4 Mon Sep 17 00:00:00 2001 From: Malvoz <26493779+Malvoz@users.noreply.github.com> Date: Wed, 6 Apr 2022 13:20:28 +0200 Subject: [PATCH 2/3] Update Feature and Extent element categories --- spec/index.html | 72 ++++++++++++++++++++++++------------------------- 1 file changed, 35 insertions(+), 37 deletions(-) diff --git a/spec/index.html b/spec/index.html index 23eff7a..2dbc49d 100644 --- a/spec/index.html +++ b/spec/index.html @@ -712,9 +712,9 @@

The <layer> element

If the src attribute is present: Nothing.
If no src attribute is present: - Extent content, - Feature content, Metadata content, + optional extent element, + optional feature element, optional tile element.
Content attributes:
@@ -1994,9 +1994,9 @@
The <body> element
As the second child of the mapml element.
Content model:
- Extent content, - Feature content, Metadata content, + optional extent element, + optional feature element, optional tile element.
Content attributes:
@@ -2045,28 +2045,16 @@
The <body> element

The body element represents the content of the document.

-
-

Extent content

-
-
Elements categorized as extent content:
-
- extent, - input, - datalist, - label, - select, - option. -
-
The <extent> element
Categories:
-
Extent content.
+
None.
Contexts in which this element can be used:
Required to be a child of the body element.
Content model:
+
Extent content.
A set of multiple input and one or more link elements with their rel attribute in either the "tile", "image" or "features" state, and zero or one link element with its rel attribute in the "query" state. @@ -2126,8 +2114,21 @@
The <extent> elementextent element is a map-associated affordance, which contains input and link elements, whose job it is to serialize location event properties that can be submitted to a server for processing.

The units attribute indicates the parent TCRS that location events shall be generated for, and serialized as requested by the extent's contents.

-
+ +
+

Extent content

+
+
Elements categorized as extent content:
+
+ input, + datalist, + label, + select, + option. +
+
+
The <input> element
@@ -2710,33 +2711,16 @@
The <option> element
-
-

Feature content

-
-
Elements categorized as feature content:
-
- feature, - featurecaption, - properties, - geometry, - coordinates, - image. -
-
The <feature> element
Categories:
-
Feature content.
Interactive content.
Contexts in which this element can be used:
Child of the body element.
Content model:
-
Optional featurecaption element, - optional geometry element, - optional properties element, - optional image element.
+
Feature content.
Content attributes:
Global attributes.
zoom — the 'native' zoom level of the feature geometry.
@@ -2791,6 +2775,20 @@
The <feature> element A feature element represents a map feature.

+ +
+

Feature content

+
+
Elements categorized as feature content:
+
+ featurecaption, + properties, + geometry, + coordinates, + image. +
+
+
The <featurecaption> element
From 0bc87dcf76857b246cd0b06239d064183c6a223b Mon Sep 17 00:00:00 2001 From: Malvoz <26493779+Malvoz@users.noreply.github.com> Date: Wed, 6 Apr 2022 13:39:02 +0200 Subject: [PATCH 3/3] Add note to Changes on additions/updates to element categories --- spec/index.html | 1 + 1 file changed, 1 insertion(+) diff --git a/spec/index.html b/spec/index.html index 2dbc49d..82c4d28 100644 --- a/spec/index.html +++ b/spec/index.html @@ -369,6 +369,7 @@

Changes

  • : Remove HTMLExtentControlsCollection attribute, per #212
  • : Remove undefined and unresolved LinkStyle interface reference, per #212
  • : Remove legendLinks attribute and interface definition and reference, per #212
  • +
  • : Add/update element categories: Metadata content, Extent content, Feature content. (#230)