Bug 292832 - MapQuest Open Guidance Service for routing
Summary: MapQuest Open Guidance Service for routing
Status: RESOLVED FIXED
Alias: None
Product: marble
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR wishlist
Target Milestone: 1.3 (KDE 4.8)
Assignee: marble-bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-01-29 23:02 UTC by Eckhart Wörner
Modified: 2012-11-22 21:41 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Eckhart Wörner 2012-01-29 23:02:13 UTC
Version:           unspecified (using KDE 4.8.0) 
OS:                Linux

MapQuest provides an API for retrieving guidance information using OpenStreetMap data. IMHO the quality of the results currently surpasses all other online routing services used in Marble by far.
The API spec can be found here: http://open.mapquestapi.com/guidance/
The terms of use can be found here: http://developer.mapquest.com/web/tools/getting-started/terms-overview

MapQuest also provides a forum for discussing the API: http://developer.mapquest.com/web/products/open/forums/-/message_boards?_19_mbCategoryId=174434

Reproducible: Didn't try



Expected Results:  
MapQuest Open appears as plugin for routing
Comment 1 Dennis Nienhüser 2012-01-30 08:53:25 UTC
The API looks indeed promising, especially since it enables world-wide voice navigation that is only possible with monav currently. I skimmed the terms of use, which look good (IANAL) except the following part:

"7.2. End User Terms. End users shall only be entitled to use the MapQuest Services and MapQuest Content if they accept the then current end user Terms of Use located at http://info.mapquest.com/terms-of-use/. MapQuest reserves the right to amend and/or replace these terms and the form and manner of presentation. You must provide a hypertext link at the bottom of each page in your website or application where the MapQuest Services or MapQuest Content can be viewed or accessed, or within the terms of use of your application or website, to the end user terms of use."

If we were to implement that to the letter, we'd need to
- deactivate the plugin by default
- show a popup with terms of usage link and "[ ] I accept..." dialog when activating it
- Link to the terms of use in the routing widget / routing activity
- Link to the terms of use in guidance mode / navigation activity

1-3 seem doable, though degrading the user experience. But 4 looks cumbersome to me. Opinions?
Comment 2 Torsten Rahn 2012-01-30 10:11:37 UTC
Does this basically ask to show a "terms of use" link at the bottom of the map? This would indeed be not acceptable: If everybody demanded this we'd end up with a map that only shows credits but no content.
Comment 3 Torsten Rahn 2012-01-30 10:19:12 UTC
Ah wait it just asks for a "Terms of Use" link at the bottom of the page which on click allows to access the Terms of Use of the MapQuest stuff. Correct? 

Personally I'm against displaying credits / copyright on top of the map but I feel we could expose the licensing / terms of use way better than we do already. 

Maybe we could indeed have a common hyperlink somewhere at the bottom of the Marble application which on click presents all the licensing and sources that apply for the current dgml theme.

But still: what would we do for the MarbleWidget case?
The whole "demanded exact ToS placement" thing doesn't look good to me.
Comment 4 Dennis Nienhüser 2012-01-30 13:25:47 UTC
I wrote a mail to them using their contact form:


Hi,

I'm currently evaluating the usage of the mapquest Open Guidance Service for use in Marble [1]. Marble is a Virtual Globe and World Atlas software distributed under the terms of the LGPL 2.1. It aggregates several routing services and presents them in a unified way to the user.

Your current terms of use [2] state that "7.2. End User Terms. End users shall only be entitled to use the MapQuest Services and MapQuest Content if they accept the then current end user Terms of Use located at http://info.mapquest.com/terms-of-use/."

I understand that "shall" is the same as "must" [3]. Still I see two possible ways to interpret this:
(A) End users must explicitly accept the terms of usage by e.g. answering "Yes, I agree to the (link) terms of usage of MapQuest" before they use the service
(B) End users implicitly agree to the terms of usage by using the application which has a link to the terms of usage at a prominent place. If they disagree with it, they do not use the application or deactivate the service in the application.

(A) would be too intrusive to me and rule out MapQuest. (B) is how it is implemented on e.g. http://www.mapquest.com/, but one may argue that the case is different. Therefore I'd like to ask you whether going the (B) way in my application is acceptable from your point of view. 

Thanks,
Dennis Nienhüser

[1] edu.kde.org/marble
[2] http://developer.mapquest.com/web/info/terms-of-use
[3] http://www.ietf.org/rfc/rfc2119.txt
Comment 5 Dennis Nienhüser 2012-01-31 08:44:15 UTC
I received the following reply:

"Dennis,

I received your inquiry and looked at your question.  If you continue to read the paragraph under 7.2 your question is answered.  Specifically, what you are required to display and where it should be placed.

Andy Miller"

I was kind of afraid to get this reply, which is not as definite as I'd like it to be. But still enough to go the (B) way IMHO.
Comment 6 Torsten Rahn 2012-01-31 09:50:45 UTC
Well, personally I regard applications as well as data that demands a very specific striking way of crediting / license approval "non-free". 
That is even one of the issues I have with the CC-by-SA which asks for the kind of attribution that has been specified by the author - however in reality that hasn't been a real issue.
 
The whole thing very much smells like the advertizing clause in early BSD versions: I do not want to encourage license models that end up with applications showing disclaimers and advertizement everywhere.

So if we include it I suggest we discuss how to include non-free map data and non-free plugins in general.
Comment 7 Dennis Nienhüser 2012-01-31 10:27:15 UTC
Follow-up for that is in bug 292946
Comment 8 Dennis Nienhüser 2012-01-31 23:39:38 UTC
Git commit 526683505900e1b7d0ff3d3069dfb4f65b1eca92 by Dennis Nienhüser.
Committed on 01/02/2012 at 00:33.
Pushed by nienhueser into branch 'master'.

Routing runner using the MapQuest routing service.

M  +8    -1    src/lib/MarbleAboutDialog.cpp
M  +5    -8    src/plugins/runner/CMakeLists.txt
A  +16   -0    src/plugins/runner/mapquest/CMakeLists.txt
A  +49   -0    src/plugins/runner/mapquest/MapQuestConfigWidget.ui
A  +127  -0    src/plugins/runner/mapquest/MapQuestPlugin.cpp     [License: LGPL]
A  +39   -0    src/plugins/runner/mapquest/MapQuestPlugin.h     [License: LGPL]
A  +251  -0    src/plugins/runner/mapquest/MapQuestRunner.cpp     [License: LGPL]
A  +60   -0    src/plugins/runner/mapquest/MapQuestRunner.h     [License: LGPL]
M  +1    -1    src/qt-components/marble-touch/AboutMarblePage.qml

http://commits.kde.org/marble/526683505900e1b7d0ff3d3069dfb4f65b1eca92