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

Remove mentions of deprecated input types #76

Closed
Malvoz opened this issue Jul 18, 2020 · 1 comment · Fixed by #77
Closed

Remove mentions of deprecated input types #76

Malvoz opened this issue Jul 18, 2020 · 1 comment · Fixed by #77

Comments

@Malvoz
Copy link
Member

Malvoz commented Jul 18, 2020

https://maps4html.org/MapML/spec/#the-input-element:

There must be at least four input element children of the extent element, including only one of each of the following type inputs: xmin, ymin,xmax and ymax.

According to the "Changes since the previous draft" section, these (and projection) have all been deprecated, so this text should be removed.

I suppose this means there is no requirement of minimum amount of input elements now?

Also probably want to remove (or at least comment out in HTML) the strikethrough text in this table: https://maps4html.org/MapML/spec/#attr-input-type-keywords.

@prushforth
Copy link
Member

According to the "Changes since the previous draft" section, these (and projection) have all been deprecated, so this text should be removed.

OK i'll fix that. Probably time to start working on the spec again, now. Please raise any other issues you find or don't understand.

I suppose this means there is no requirement of minimum amount of input elements now?

There's not really a minimum, per se. The idea behind the <extent> is to provide an affordance for the layer, sort of binding it to the map element's rendered rectangle. As the map moves, the extent drives content retrieval for the layer by generating requested events and providing the requested serialized part of the event to link templates which perform content retrieval appropriate to their link@rel= value.

The only input that we have still got as mandatory is zoom, but I think we may be able to knock that back to at-the-services-need (SHOULD), with some discussion:

Map services need to know what scale of content to provide, with some exceptions (exceptions which don't represent good practice imho). In the case of WMS, the scale of rendering is determined by knowing the width and height of the image to be generated, in addition to the projected bounding box. In tile services, zoom is a proxy for scale, because for each zoom level, the resolution is a defined quantity, as are the size of the tiles.

From the spec:

In the case where a MapML document contains an extent element, an input@type=zoom MUST be present which controls how the zoom is transmitted from client to server.

In the case of WMS services, the only reason I have got zoom listed as MUST is because I thought it necessary in order to constrain the zoom range within which the extent would generate requests. Currently the polyfill will genenrate errors if you don't include the zoom input, but it could coded to be guided by the entire TCRS zoom range in that case instead. So a zoom input could be treated as a SHOULD in IETF terms, so that the client doesn't send the server requests outside the zoom range that the server supports.

However, the issue remains that the zoom input variable isn't required at all by WMS services, but even so you would have to bind it into the link template that points to the WMS, in order to associate the zoom range to the template that you intend.

Also probably want to remove (or at least comment out in HTML) the strikethrough text in this table: https://maps4html.org/MapML/spec/#attr-input-type-keywords.

Yes, I'll fix that, too.

Thanks for your note!

prushforth added a commit to prushforth/MapML-Specification that referenced this issue Jul 18, 2020
Remove action,enctype,method attributes.
Update description of <extent> element.  

Resolves Maps4HTML#76

Overal, description of <extent> still needs improvement, 
because since the removal of the action attribute, the meaning of 
extent has shifted slightly.  Now that the requests for content are 
driven by link templates and associated inputs, an extent is represented
the union of the extents of the templates, which is dictated by the min/
max values of the axes of the location inputs.
prushforth added a commit that referenced this issue Jul 19, 2020
* Remove deprecated input types xmin,ymin,xmax,ymax,projection. 
Remove action,enctype,method attributes.
Update description of <extent> element.  

Resolves #76

Overal, description of <extent> still needs improvement, 
because since the removal of the action attribute, the meaning of 
extent has shifted slightly.  Now that the requests for content are 
driven by link templates and associated inputs, an extent is represented
the union of the extents of the templates, which is dictated by the min/
max values of the axes of the location inputs.

* Get rid of reference to obsolete action attribute.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants