Mit „JavaScript License Web Labels“ kann man maschinenlesbar die Lizenzen von JavaScript-Dateien, die in Webseiten eingebunden sind, angeben.

Im Falle von GNU-Lizenzen stellt dies eine lizenzkonforme Möglichkeit dar, minifiziertes JavaScript einzusetzen. Möglicherweise ist dies auch für andere Lizenzen der Fall, dazu gibt GNU aber keine Auskunft.

Da die Lizenzen maschinenlesbar angegeben werden, haben Besucher der Webseite die Möglichkeit, ausschließlich freies JavaScript auszuführen (siehe z. B. LibreJS).

Wie funktioniert das?

Man benötigt eine separate Webseite (erreichbar unter beliebiger URL), deren Hauptinhalt eine Tabelle mit der ID jslicense-labels1 sein muss. Jede Zeile repräsentiert eine JavaScript-Datei und besteht aus drei Zellen:

  1. Link zur JS-Datei (mit genau der URL, die im src-Attribut des script-Elements angegeben ist)
  2. Link zum Lizenztext; der Ankertext enthält die vollständige Bezeichnung der Lizenz
  3. Link zum lesbaren (unminifizierten) Quelltext; falls die eingebundene JS-Datei nicht minifiziert ist, kann man den Link aus der ersten Zelle hier noch mal angeben

Diese Webseite mit der Tabelle verlinkt man nun auf jeder Webseite, die mindestens eines der angegebenen Skripte eingebunden hat. Der Link muss den rel-Wert jslicense haben.

Feedback abgeben

Verbesserungsvorschläge können über die LibreJS-Mailingliste eingereicht werden. Da die ID für die Tabelle eine Versionsnummer enthält, können zukünftige Methoden durchaus völlig anders funktionieren.

Es wurde wohl in Erwägung gezogen, RDF zu verwenden:

We considered using another format like RDF as the basis for our system, in order to simplify this job for programmers by giving them more detailed information in an easily parsed format. However, our goal was to make this information accessible to human readers first, and machines second.