tilejson-spec icon indicating copy to clipboard operation
tilejson-spec copied to clipboard

Structured attribution

Open 1ec5 opened this issue 9 years ago • 4 comments

As explained in https://github.com/mapbox/mapbox-gl-native/issues/2723#issuecomment-239383427, native map controls need attribution information in a format other than HTML source code. We should allow the attribution property to be set to something more structured that can be converted to the appropriate data structures on the client side. For example, it could be an array of objects, each with a required title property (interpreted as literal text) and an optional url property (for linking):

{
  "attribution": [
    {
      "title": "© OpenStreetMap contributors",
      "url": "http://www.openstreetmap.org/about/"
    },
    {
      "title": "Creative Commons Attribution-ShareAlike 2.0",
      "url": "http://www.openstreetmap.org/copyright/"
    }
  ]
}

Other considerations:

  • Should the title property be localizable? If so, perhaps it should be set to an object mapping ISO 639 language codes to literal strings.
  • Mobile clients are often space-constrained. In the example above, it may be advantageous to abbreviate the two items as “© OSM” and “CC BY-SA”. These abbreviations could go in a short_title property beside the title property.
  • Should other formatting be allowed? The current specification doesn’t disallow any HTML tags, so it’s theoretically possible to boldface text or embed images. While such content may be feasible in Web clients, native clients may have difficulty displaying it.
  • Perhaps there should be a separate feedback property beside the attribution property. Many TileJSON documents hosted by Mapbox include an “Improve This Map” link alongside copyright statements. Native clients may want to open an alternative map feedback tool (mapbox/mapbox-gl-native#6001); as things stand, they’d have to look for and omit a specific URL. In space-constrained environments, the client may choose to omit feedback items from the attribution UI to ensure that all the legally required copyright statements are visible.

/cc @kkaefer @jfirebaugh

1ec5 avatar Aug 13 '16 21:08 1ec5

Should the title property be localizable? If so, perhaps it should be set to an object mapping ISO 639 language codes to literal strings.

Is it realistic that TileJSON producers will include attribution in lots of different languages?

Perhaps there should be a separate feedback property beside the attribution property.

👍

kkaefer avatar Aug 15 '16 09:08 kkaefer

Is it realistic that TileJSON producers will include attribution in lots of different languages?

Maybe not lots, but yes, some developers have requested this functionality in the past. (mapbox/mapbox-gl-js#1485 would be a workaround at the map level.)

1ec5 avatar Aug 16 '16 15:08 1ec5

This seems like a perfectly reasonable approach. What's the status of this?

reyemtm avatar Nov 02 '16 23:11 reyemtm

Thanks for opening this ticket @1ec5 . This proposed change will be considered as part of the v4 push https://github.com/mapbox/tilejson-spec/issues/35

GretaCB avatar Apr 09 '18 17:04 GretaCB