[ Rather than respond to comments to the previous post, I will create a new post — I think this is important enough to clarify ]
> I don’t see how putting a particular license on the *data* solves the problem. Terms of *service* are something entirely different.
We’re not putting a new license on our data — the data remains under the existing licenses.
I am suggesting that the ToS for our web service state that:
- Anyone can access the web service.
- Data returned by the web service is covered under the CC license, since we may return data where portions are PD and portions are CC. We must use the greater common denominator license if we want to be consistent with our data licenses.
This has the effect that anyone can connect to our web service, but using the data returned from the service has to be use in accordance with the CC license. In order to not be in copyright violation, the user needs to qualify as non-commercial set out by the CC license. The two clarifications on non-profit I give serve to make it clear that these uses fall into the non-commercial realm, since the CC license errs on the side of commercial use if a use falls into a grey zone.
> Software being free or not has nothing to do with it being commercial or not!
We’re not talking about software — we’re not even talking about data (which you can download for FREE (as in speech)). We’re talking about providing a service. Each call to our service costs a finite amount of money (power, bandwidth, server cost amortized over its life) — granted its small, given that we’re doling out 30M web service calls a month. By applying the CC license to the data returned by our web service, we’re ensuring that people who use the service are doing so in a non-commercial manner. Otherwise, your donations to the MetaBrainz Foundation go towards supporting other people making money. I don’t think that is right.
> If you want to block other hosts from abusing the web services, or charge a fee to heavy users so you can add the required capacity, just do so. I don’t see what this has to do with the database, or whether these third parties are making money.
This doesn’t have anything to do with the database, as stated above. Rod explained this quite succinctly in his recent post to the musicbrainz-experts list.
However, charging a fee for heavy users is far from trivial. Have you thought about:
- Purchasing the machines to do this
- Finding hosting for the machines
- Administering the machines
- Tracking and billing heavy users
Until we have more money to hire (more) staff, this is not plausible. Unless you wish me to spend the next year building this system and neglecting the overall features of MusicBrainz. By going with a CC license as part of the ToS we can off-load this burden to our commercial customers.
> I’m not sure that saying “Applications that charge a registration or shareware fee and that donate at least 10% of their fees to the MetaBrainz Foundation are considered non-commercial” makes any sense.
It does if you consider the exact text of the CC license. As I mentioned above, the CC license errs on the side of considering things in the grey zone to be commercial. The Creative Commons (and this is according to our Director Emeritus Larry Lessig) says that the licensor should refine this grey zone and show which cases are non-commercial and which are commercial. The two clauses I gave do just that.
> Also, you miss the case of a non-osi “free as in beer” product. Do they have to give 10% of nothing to qualify?
Ohhh — that is an excellent point. I don’t have a good answer for this — any suggestions?
> The one thing I would suggest is a requirement that a UserAgent field be set by calling applications so that usage can be monitored. It’s by no means a fool-proof method, but it’s a lightweight change, and at least gives you a fighting chance of a) understanding the impact on the server by different software, and b) blocking out bad neighbours if there’s a problem.
Ohh. Another good suggestion, though that will require some libmusicbrainz changes to enable this. I think also limiting the number of calls per second per client the way Amazon does it is also good. I’ll add these two clauses.
> You might want to consider a specific licensing fee (not just as a threshold percentage of registration) for commercial applications that use the web service (as I understand it, currently the only commercial licenses are for the replication database feed).
Yes, but this can happen outside of the ToS for general use. If a small commercial entity is going to be an insignificant amount of load on our servers, we can grant them a separate license to use our web service. This ToS does not preclude that from happening — we could in effect dual license the web service.
So, the revamped proposed ToS then reads:
- The data returned by the web service is covered under the Creative Commons Attribution-NonCommercial 2.5 License.
- Applications that make their source code available under an OSI approved open source license are considered non-commercial.
- Applications that charge a registration or shareware fee and that donate at least 10% of their fees to the MetaBrainz Foundation are considered non-commercial. (e.g. Jaikoz and Magic-Tagger)
- Applications must set the User-Agent: header with the name and version of the application making the web service call.
- Each application instance may not make more than one web service call per second.
The “free as in beer” case still needs to be addressed.