Skip to content

Commit 0e033f9

Browse files
committed
Merge branch 'capabilities-wip' of https://github.com/NickFitz/HTML-Map-Element-UseCases-Requirements into capabilities-wip
� Conflicts: � index.html
2 parents a1d6ef3 + d41edbd commit 0e033f9

File tree

1 file changed

+157
-6
lines changed

1 file changed

+157
-6
lines changed

index.html

+157-6
Original file line numberDiff line numberDiff line change
@@ -1704,7 +1704,8 @@ <h4>Reposition or scale a map to find more context for the displayed locations</
17041704

17051705
<h5>Required capabilities</h5>
17061706
<ul data-ucr-role="required-capabilities">
1707-
<li><a href="#capability-pan-zoom-or-re-centre-map"></a></li>
1707+
<li><a href="#capability-pan-map-or-re-centre-map"></a></li>
1708+
<li><a href="#capability-zoom-map-in-or-out"></a></li>
17081709
</ul>
17091710
</section>
17101711

@@ -1738,7 +1739,8 @@ <h5>Required capabilities</h5>
17381739
<ul data-ucr-role="required-capabilities">
17391740
<li>As a custom application feature:
17401741
<ul>
1741-
<li><a href="#capability-pan-zoom-or-re-centre-map"></a></li>
1742+
<li><a href="#capability-pan-map-or-re-centre-map"></a></li>
1743+
<li><a href="#capability-zoom-map-in-or-out"></a></li>
17421744
</ul>
17431745
</li>
17441746
</ul>
@@ -1991,6 +1993,8 @@ <h4>Add a custom control to a map</h4>
19911993
<h5>Required capabilities</h5>
19921994
<ul data-ucr-role="required-capabilities">
19931995
<li><a href="#capability-implement-a-custom-control"></a></li>
1996+
<li><a href="#capability-add-control-map"></a></li>
1997+
<li><a href="#capability-remove-control-map"></a></li>
19941998
</ul>
19951999
</section>
19962000

@@ -4543,8 +4547,8 @@ <h5>Existing implementations</h5>
45434547
<dd><a>full support</a>:
45444548
<p>
45454549
All of these implementations fully support the concept of controls,
4546-
including support for control implementations to be notified when they are added to or removed from the map,
4547-
so they can update their own internal state accordingly.
4550+
including support for control implementations to be notifed when they are added to or removed from the map,
4551+
so they can update their own internal state acordingly.
45484552
They also allow controls to request their desired positioning within the map's UI,
45494553
and will position controls using sensible defaults if developers choose not to implement that capability.
45504554
</p>
@@ -4614,7 +4618,7 @@ <h5>Conclusion</h5>
46144618
-->
46154619
<p>
46164620
It might seem that, as controls are implemented using existing interactive HTML elements,
4617-
there is no pressing need for them to be supported by additional APIs.
4621+
there is no pressing need for them to be supported by additional APIS.
46184622
However, the need for them to be closely integrated with a map's own UI, state, and lifecycle
46194623
suggests that this functionality is a <a data-ucr-role="conclusion">requirement</a> for modern web maps.
46204624
</p>
@@ -4628,6 +4632,153 @@ <h5>Conclusion</h5>
46284632
</ul>
46294633
</section>
46304634

4635+
<section id="capability-add-control-map" data-ucr-role="capability">
4636+
<h4>Add a control to a map</h4>
4637+
<p>
4638+
Description to follow
4639+
</p>
4640+
<p class="issue discussion" data-number="58">
4641+
Discuss this section on GitHub.
4642+
</p>
4643+
4644+
<h5>Existing implementations</h5>
4645+
<p>
4646+
Existing implementation support:
4647+
</p>
4648+
<dl data-ucr-role="implementation-notes">
4649+
<!-- Use dt elements to name the implementation, using the id string to create an auto-link.
4650+
Give details about what is/isn't supported in the dd element,
4651+
starting with a link to one of the implementation levels.
4652+
List full implementations first.
4653+
Group implementations (multiple dt for the same dd) when they have the same support.
4654+
-->
4655+
<dt>google-maps-api</dt>
4656+
<dt>bing-maps-api</dt>
4657+
<dt>apple-mapkit-js-api</dt>
4658+
<dt>mapbox-gl-api</dt>
4659+
<dt>leaflet-api</dt>
4660+
<dt>open-layers-api</dt>
4661+
<dt>tomtom</dt>
4662+
<dt>d3-geographies-api</dt>
4663+
<dd>
4664+
<p><a>full support</a>:
4665+
Google, Bing, MapKit and TomTom allow straightforward creation of a map
4666+
with configuration options.
4667+
</p>
4668+
<p>
4669+
Leaflet, OpenLayers, and MapBox require explicit construction of objects defining the map layers
4670+
and viewport, with sensible defaults for creation of, for example, a map showing OpenStreetMap tiles
4671+
in a standard [[[WGS84]]] projection.
4672+
This provides added flexibility, at the expense of increasing the complexity of code that uses these libraries.
4673+
</p>
4674+
</dd>
4675+
</dl>
4676+
4677+
<h5>Supported use cases</h5>
4678+
<ul data-ucr-role="capability-uses"><!-- auto-generated from use case required capabilities --></ul>
4679+
4680+
<h5>Uses beyond mapping</h5>
4681+
<p>
4682+
Leaflet, OpenLayers, and MapBox allow for the creation of layers displaying non-geographical imagery.
4683+
</p>
4684+
4685+
<h5>Related web specifications</h5>
4686+
<p>
4687+
<a data-cite="HTML">HTML</a> specifies a number of aspects of elements
4688+
that embed media in a web page and expose JavaScript APIs to enable interaction and dynamic configuration.
4689+
</p>
4690+
<p>
4691+
The <a data-cite="DOM">DOM</a> provides interfaces for creating
4692+
HTML elements, which are what these implementations are using under the hood.
4693+
<!-- Any existing/proposed specs that address similar needs or otherwise interact.
4694+
Include links with proper ReSpec references. -->
4695+
</p>
4696+
<p>
4697+
[[[DOM]]] [[[HTML]]]
4698+
</p>
4699+
4700+
<h5>Conclusion</h5>
4701+
<!-- Cost, benefits, and recommendation on whether this should be a requirement.
4702+
Should include an `<a>` element with attribute `data-ucr-role="conclusion"`
4703+
whose text content or `data-lt` value matches one of the conclusions (requirement, enhancement, impractical, undecided).
4704+
See examples.
4705+
-->
4706+
<p>
4707+
Based on the limited data, we are <a data-ucr-role="conclusion">undecided</a> about whether this should be a requirement.
4708+
</p>
4709+
<ul data-ucr-role="conclusion-notes">
4710+
<!-- bullet-point notes summarizing implementation details / blocking issues.
4711+
Add tags to the start of a point with an empty `<a data-ucr-role="tag"></a>` where the text content or href matches a tag `id` value. -->
4712+
<li><a data-ucr-role="tag" href=""></a>
4713+
<!-- short summary of how the tag applies -->
4714+
</li>
4715+
</ul>
4716+
</section>
4717+
4718+
<section id="capability-remove-control-map" data-ucr-role="capability">
4719+
<h4>Remove a control from a map</h4>
4720+
<p>
4721+
Description to follow
4722+
</p>
4723+
<p class="issue discussion" data-number="59">
4724+
Discuss this section on GitHub.
4725+
</p>
4726+
4727+
<h5>Existing implementations</h5>
4728+
<p>
4729+
Existing implementation support:
4730+
</p>
4731+
<dl data-ucr-role="implementation-notes">
4732+
<!-- Use dt elements to name the implementation, using the id string to create an auto-link.
4733+
Give details about what is/isn't supported in the dd element,
4734+
starting with a link to one of the implementation levels.
4735+
List full implementations first.
4736+
Group implementations (multiple dt for the same dd) when they have the same support.
4737+
-->
4738+
<dt>google-maps-api</dt>
4739+
<dt>bing-maps-api</dt>
4740+
<dt>apple-mapkit-js-api</dt>
4741+
<dt>mapbox-gl-api</dt>
4742+
<dt>leaflet-api</dt>
4743+
<dt>open-layers-api</dt>
4744+
<dt>d3-geographies-api</dt>
4745+
<dd><a>full support</a>:
4746+
<!-- details about what is/isn't supported -->
4747+
</dd>
4748+
</dl>
4749+
4750+
<h5>Supported use cases</h5>
4751+
<ul data-ucr-role="capability-uses"><!-- auto-generated from use case required capabilities --></ul>
4752+
4753+
<h5>Uses beyond mapping</h5>
4754+
<p>
4755+
ToDo
4756+
</p>
4757+
4758+
<h5>Related web specifications</h5>
4759+
<p>
4760+
<!-- Any existing/proposed specs that address similar needs or otherwise interact.
4761+
Include links with proper ReSpec references. -->
4762+
</p>
4763+
4764+
<h5>Conclusion</h5>
4765+
<!-- Cost, benefits, and recommendation on whether this should be a requirement.
4766+
Should include an `<a>` element with attribute `data-ucr-role="conclusion"`
4767+
whose text content or `data-lt` value matches one of the conclusions (requirement, enhancement, impractical, undecided).
4768+
See examples.
4769+
-->
4770+
<p>
4771+
Based on the limited data, we are <a data-ucr-role="conclusion">undecided</a> about whether this should be a requirement.
4772+
</p>
4773+
<ul data-ucr-role="conclusion-notes">
4774+
<!-- bullet-point notes summarizing implementation details / blocking issues.
4775+
Add tags to the start of a point with an empty `<a data-ucr-role="tag"></a>` where the text content or href matches a tag `id` value. -->
4776+
<li><a data-ucr-role="tag" href=""></a>
4777+
<!-- short summary of how the tag applies -->
4778+
</li>
4779+
</ul>
4780+
</section>
4781+
46314782
<section id="capability-add-layer-map" data-ucr-role="capability">
46324783
<h4>Add a layer to a map</h4>
46334784
<p>
@@ -5191,7 +5342,7 @@ <h5>Conclusion</h5>
51915342
</section>
51925343

51935344
<section id="capability-pan-zoom-or-re-centre-map" data-ucr-role="capability">
5194-
<h4>Pan, zoom, or re-centre a map</h4>
5345+
<h4>Pan, zoom or re-centre a map</h4>
51955346
<p>
51965347
Developers expect to be able to control a map by changing its centre and/or zoom level,
51975348
and may also wish to support the capability of resetting a map to its view as originally presented.

0 commit comments

Comments
 (0)