The FOSSology Project: 10 Years Of License Scanning
Author | Michael C. Jaeger - Oliver Fendt - Robert Gobeille - Maximilian Huber - Johannes Najjar - Kate Stewart - Steffen Weber - Andreas Würl |
Position | Siemens AG, Corporate Technology - Siemens AG, Corporate Technology - Freelance Consultant - TNG technology Consulting GmbH - TNG technology Consulting GmbH - The Linux Foundation - TNG technology Consulting GmbH - TNG technology Consulting GmbH |
Pages | 9-18 |
!∀!#∃%∃&
∋(!%)∗+∋(
∋(∗+∋(∗,
!∀#
∃ % ∃ &∀∃ ∋( ∀
∃∃ & ) ∃ % ∗∃ +
) ,∃∗ ∃& −∃
∗ ∗∗& ∋(∃∃ ∃∀&
&(&∋(.∗∃∗∗∃,)/,
∃ ∃%(& 0 ∀ ,
∗(#12∀∀
∃ ∗∀ (%& & %
&%&3%4∃−
&& − & ∃ ∗ (%
,∃)&%5%∃∃−∃
&∗∃4&%∗∃&
&∃%,667∗∃6
46+
Introduction
% , & %& ∃0 ∃ % ,6) ∃∃
,6&∗% (∗∃&, ( 6 ,∗%(
&∀&6&&(%&%+%6%&&)
((&∗,,&&,,
∃%, &%∃ %∗∃ ∃%∀
∃∀&&0 ∃ %& ∃ %∗∃ ∗∃,
∃ &0 8,∀6 ∗& ( ∗
%%∃%∃
∀∃,&&&9∃%∗∃,&&(&9
%&,&,&:∃;∃(∗
∃ %∗∃: %;6∗ ∗&9 ,,&6,
∃%∀∃%0∃!!∃%!&=#1
&∃%,,>∀, ?6%
∃%%&∀4,)%∃∗∃%
& &6 9 &0& ∗ ≅# ∋ , ∀ ∃∃%6
∗∗∃%∃∃∃∗,)6((%6
∗ % ∃%(& & ∃∃& ( &∀&%Α ,
Β−∗∃∃∃%2Χ.2%(#∗∃
Α ∃0 +∃∃ %(% #
?(/6%&Α∀&&9∗%∃
6∗,
+%∃%,∀∃%%∃%
,∆
7∗∗Α∀∃∗∗∆
Χ=∃0Α∀∃ ∃∗ %& &∃∃ %
,
2∀∃(∀6&∀&%Α∀%&%∃&&∀
6&&%∗(−−,∀∗,−
& & ∗∃ &% &9 > ∃
% ∗ %∗( − − +%∗
&(% ∃ % ,∗∃6 & ∃ ∗∗
∃&%∃,∃%∃6∃Ε%&∗−−
∃∃(∗%∃
∗ Ε% ∃∀& − , &(%
,∗∃
∗ −∃ ∃% & , − &
&(%
∗& ∗ ∗∃(,&
∗( , ∗∃ & , ∗∃( &
(,∗∃(
+%−∃∀(∀60∃&(%∃%,
&∗ − −8,∀6 %6(% ∃ %∃
& (, ∗6 ∗− & ( ∃ ∗ ∃% ,
∗∃∋ %& 0∗)%∃ ∗&,∃)6
(∗0∗%,)∃∃∃6
%∗( − −6 (% ∀ ∗∃ %
∗∃,∗%∃∃%∃∃∗∃∗∃
&&6 & % ∃ %,& %6 ∗
6&&Α&∗∋6% 2∀6∀&&Α&
&%0 −∃∗∗ ,6∗% ∀%&&∀&%
, 6 ∗∗% ∃ % %6 ∗ ,
∗∗−(%∗(%%∃∃%
%&&∗
# 4∋)%∃=%−%&7(∀4∃!!∃&−!!=#Φ
2%(∗∃%%28%(∗∃!!(%(∗!#= ==∃=%==%=
=%(=∗!=#
&∃%,,>∀, ?6%
%∗∗6,∀&90&−∃∃(−%
,&(%∃%,
+%∗(−Γ∃Η∆
%&∃%∗∃∆
+%∗∗&%∗(%%∃%%&−
, − ∀ , ∃ %
,&),−6−∃&∀∗
∃∀&&(∃,&&&∗
& ∃% ∗∃ , 0 ∃%(& #1 (
%∃8,=)&Γ8Η6,(% 6 ,&
∗%∃&,∃∃&,&%&
Α& ,− &% ∃&∀
( ∀∀, + %(Ε% −∃ ∗ %&
+ ∃∀& ∀∀, & 4&
%&
,0∃%(&( ∗8+0 ∀,−&
& ∗∃ 3 ∗ (6 8 ,6 26
, ∗ ∃∗ % , %− &(%
&, 8 ∃&% + ∗ %− &(%, & ∃ ∃
%,%6 , ∃( ∀,%∗
(+ 0∀ ,& &∀&%∃ %(Ε%6
∃∀∀&7%&∗∃&−%(∃&67&,&
∗) ∗∃(−,%%− &∗∗
%& Χ∗ ∗(& Χ∗ ,
Α∃∗&(%)% %&&0(%)(& &&∋
∃∃6 , , & , &∀&% 0 % + ∗ ∗ ,
∃∀&&%∗(8∃
%(Ε%96>(2( (∗∀∀&(& ∃∃& ∃
%∃(∃∃,%&(&&,%&,
&9,& 3%& &(6 ,∀&&
∃0&(%+∃,∃6,,06
&& %∃% −%( 3 ∃% ∋( ∀& ( ∋(∀6
&∗&0%(∃%&(&&&
+ %∃&( (&6 ∃∗ Α ∀%
∃,%Α6,∃∃&%Α∗&%)>6
&∗& &∀∃∗%& (∀& (∗) ∃% ∃ %
,( ∀,∗) ∃%&∗
∗6(∗&−&∗6∗Ι
= %& &∃ %,∗∃∗&%
∃%((∗∃&∃∃)∃∃&%∃&&∃%
∗∃ + , ∗& ∃ %6 , ∗& ∃∀&
∗∗%, Γ ∗ &:&;Η #ϑ6
&∃%,,>∀, ?6%
#
∃&0&∃ ∃∀&& ∃%(∃,&
∗&≅
##6 ∃ & ∀ # + , ∃) %%
& , ∃ %∗6 % , ∗& ,
∗∃∗,&%,&9
∃& & & % ∗&∃& ∋ % && ( ,
% %6 ,%∃∀&& ∗−(%%
∃ ,& ∀ ∀ ∃ & ∃
∗,),∗&%(∗(&,)/,%∗∃
+∗∃∀∗&%& ∀ # , &%
& ( Γ+Η 0 &6 + ∃& ∗) &( ∗
∗3% , &9∃ ∗6 + %&(,
&9%∃%∃∗∃∗,Ε%6%&
∗ %Ε% &(6−∗∃6%& %∃&&
∗∃
∋∀#6∀∀& ∗%%∋(∃∃∀&,∗&
∃ % , Χ && ∃ % , (∗ ∗ & ∗
∃∃%&,(%∗∃&6(%,&∗∗
&∀&% ∗%&& # ,(% Α%∃&
, & ( 0&(%%∃ ( %&∗
∀ (& ∋( ∃∃ % %∃&6 & Α
∗∃&
+∗%%&,,)&0∀,∀,
0&%&−∀∗&
0∋ %& ,&%& % ( ∗∃& ∃∗∗∃(∗
&∀∗ %%∃%∗∗ %&+
∗∗−∃%6−∗∃6%−∃Ε%&−
∗∗∗ ,∗ − ,%& ∀( ∗∃∗& (
8,∀6 ∗& − ∋( .6 0 &∃&
%& ∗∗ 8& − ,%& (% ∗∗
∃∀%∗&∗+ %6%−−∃,
+ && 6% & 0 ∗%∃∗ &
&∗%∃0,Ε%∗∃∀∃∃%
& , , 96 %& % ∀−
∃Ε%)&&∀∃0
+ ∃&6 0 ∀4 ,∃%(& −∗&% (
.∀ ∗ Χ()4 ∃0 −∃∗& (% ,
∃) %& ∗Φ ∀ ∗&% %% 6
4 %∃% , ∗∃∗& % ∃ + 0 ∀ ,
&4 ∗∃ &%∗ , %(Ε% ∀% ∃%
∃∀&&4#∗&%∗%∃%∗
≅ >(2(∃=Κϑ&#ϑ,)
,∃
%∃4=∃7∗∃%∗∗#
Φ 4∋)%∃=%−%&7(∀4=
∃!!∃&−!!∃&&!0!∃!0!∃&−∀#∃&=#Φ
&∃%,,>∀, ?6%
∀# 6 ∃, & %− %& (∀
∃+&%(% ∃,&)∃∗ ∃
8 ∗∃ , Α1 Β∀% %− %& 9&
∃,0∃7∗∃∗ϑ
&%& , ,% 0&
−Χ∗3 ∗& &9(,&−
&%&− &,∃ % Ε%)& +&&6
),&%&(Χ∗&∗−∀,∀%∃
&∃, % ( ∗& 9
−∗ &( , % +%&%& ,
∀ , &∃( ∃ ∃%& ( ∗∃
% , &∃,∃& ∀ &9
,∃,∃∗(−∃&+%∗∃∗&%−
∃ ∀ − ∀∗6 ∗∗
∃∃%6∗∗∀∗
Χ,Λ∀∃∗,))Μ% &Μ%(∗&Α&) &
, ∀&6% &∃&&(
%&,∗∃∀∗,∗%Μ%.(−∃&
∗∃∗8∗∃%,(
+∃% ∃6Χ) (& %,∃∃
∗ & , ∀ ∃∃ , ∗ &∃∀
,( %&(& %∋
&6,&&&∗%∗ ,)/,&&
,&0%% %&∗∃)%∗&
&∗∗&(&−∃6
∃&%∃ ∃ % & ∗%& ∃% 0 &
∃∃%%∃&60∗∗∀∃%
+%, &4 #> 0 > −&& %∃%
∗4 =∀% && >!−∗ > # &&& (
∗∃ 4 &%∗ ∗ ∀ ,
%∗6,&∃&%∗∃,&&& #6,
∗6(%%∗∗&,0&+&06
&&&ΛΧ%∃%∗∃(−∃%∃∃
+ % ∗∃∗& ∀ # ( & )
∗∗%,&0(&)&∗
∋ ∃ &6 (& ) 9Γ %&&
Η & ∃6 ∀ &∗ &
(&) ∃∃ Ν&∀ ∗∃
,%%(Ε%∗%&∃
1 8,=)&7: 8∃,Χ,&%=&%(7∗∃6>6(Φ
#≅
ϑ %−%&∃7∗∃∗Ο+%−%&∀
∃!!∗∃%−%&
2∗6&∀6Λ%%.&&&%&∃%
,&(%∗7∗∃Γ77Η6#ΒΒΒϑ76∃∃ϑ≅=
ΒΒΒ6#
&∃%,,>∀, ?6%
≅
(% 6 &&&%&% ∗&&∗∃
&(%∗∗∃∀%&%∃&−∗∃6,
, ∀ ,6 ( ∗& &9 ∗∃&
&∀6%∗& %0
( &0& %∗− ∃ ∃∀% %∃& ( ) ∀ , %∃&
∋ % ∗% ∗ , ∀ , ∗∃
∗∗Α&%&9
&∀∀ + ∗ &∃∃
% %−6% +∃∋(∀6(%& &(& ∃∀&8=
(&∋(.6Μ&(∀%&&
&∃& %− + & (6 ( ∃&
∋&,∗8,∀6∀%∗&)=(&(%&∗)%
∃∗∃(&
∃ %∗∃ &∗% &6 %
&(Ε%&Μ ∀(∗%− &(%&∃∗%
&∃&6,,∃(,
0& 6 ∗,& & 2&(∗
, ∗& ∀ Α& ∗∃∗ lib/php/libschema.php 8,∀6
∗ ∃ ( ∃& ∗ %∃& − &( 6
&&∃∗& Ε%&&% %∃& ,%∃∃
∀∗∃ % ,&( & % &0 ,
%&(∗&,,∀,∃install/fossinit.php−%
install/db/dbmigrate*0&∃&&&(&
&%∃,&0&
∋∗ Ε% ,%&,) ,, &(∗∗ ∗6∗ ∃Α&
Ε% Μ6 %∀∗∃%% ∃∗ ∃∗
−% &( & 8 %0 &∃& %∃ &(
+>=∗∃∃ΓΗ%&6&% %∗(∗∃−6∃∗Α&
Ε%
∃∀#Φ&&%8∗,)0%%&#Φ
, 6 &6 ∗ 6 (% & , 8 &∃& ,
&( % ∗∃ ∃)∗ 7∗∃ , ∗( &
Γ∀Η &∃& &∃& ∗ 8 ∗ %∃& ∗
∃∀% &∃&6 & ∗
,Ε%&&%&∗%&Β+>
∗& & &&Α& 8 ∃∃ ∃ , ∗
&9∃0∃ ∗∃∀(,∗∃8 %&
∋( &6 %% %% ∗∃∀& % 7 ) ∃&∗ 8
&∗&∗8∃∗,∗∃∃∀%∗&+
(∀∃& ∗∃∀%( %( &(0%6
&∃%,,>∀, ?6%
=∗& ∃ ∗∃&∃ & ,&
∃ & ∃ 6 & , ∃& , ∃ % ∗∃ ,
∃(&(∃∃&∗∀#Φ%∀
Χ∗∗&(&%−∃+&&
(∀6 −∗& ∃∗∗%∃0 ∗∗6% Κ!!Κ Γ
:!Π;6 :∆∆;6 :>Β
%∗∀ ∃(∗6 Χ∗ % & −∃ &
∗Α∃ &0 ∀& ∃∃+
∗∃∃(&6Χ∗&∗∃&0&
∃∃∗∃∃&0&
0& ∃∀ ∗ ), , ∀6 %),
),&% ,∀6
∀∃ 0 &0&∀ − ),
7%6Χ∗&∗ ∃∃∗∃∗Φ
+∃∗%∗&6Χ∗ (% =∗&8
0( %∃&&&& / &6 Χ∗( &
∗∗∗& & %∃% (&& &&% ∃−∃
%
%%&&∀∗∀−0&,%−∃
) ( & ∗∃%&−∋ ∃∗ ( ∗
∃∃∀6 %∗ ∀ ∃∃% − ∃(∗ =(&
−∗∃∃(∗%∗
, −& +% −∃(& ∃∃,%&Ε% &
−∗∃ ∃∗∀&,%&∃(0&
:==∃∗∀;%∗&&
& ∗& &
−∗&(−,&&&
,% ∀,− . %
− ∗∃ , %& − 0 %∃&& , ∗∃
6 −%& 0(∃
()+∗∗∗∗0&6 Λ&
−∗&−&&& ,∗∃%& &−,−
∗ , ∗ , ∗ , Θ ∗
(% ∗ −%& − ,,
&&&6Θ∗,%&,(∃&∀6(%−∗
(∀% &&∀ Α , ∃
&(,6(Χ∗&
Χ∗ &%),∗ −6,∀6, ∃+
∗∗∃&%),
FOSSology and SPDX
+∗&64∃&=&&−∃∗&(%,
∃)4 & Ρ, )Β−Ρ & &( ∀(
&∃%,,>∀, ?6%
Φ
%−%& &&∗∗%∗∃& +∃
4 96 ∃0 &0 ∗∃∀ , &&
&0& ∃0 ∃∗Γ 4 Η 5 ∗
%6%∃∃4 ∃∗∃%∃+
&0%4&&&0,∃
6 ∗&(∀6 & ( −∃4# ∃
&%∃%,&4#∗∃(6,(&(6∗
%∃&6∀#
, %∃% ∗ ∗ 4 &0 %∃∃& >!−∗ Γ >%
∃∗&∀∃&( ∋ 7Η & =∀%=∀% ∗ ∗ %∗
&(%∃%& ∗ &(=∃∗%& (∃)
∃∃ % & ( ∗ &Γ =
∀%Η%∗ &(∗ % −∃&% :;6 ,
%,%:7%&&;
3%∗∃∗4∃%∗∃(6
,),&(=∃0 ∗&9(, 4=∀%
∗ & &(=∃ &(=∃ 0 ( %& Γ %&&Η
,4∗&∀&%0+%64&%∗%&(
∀&&(=∃0(%∀∀
!∀#∃∀
#16 ∗ ∗∃,( , 4&%∗
4∗∗&((∀%&6∗∃∗∗∃%,
8,∀6%),&6Γ∃%∃Β∃∋ Φ
∗∃ 4&%∗ &%∗∃&%Η,∀(#1
&∗∃4∗%∀,∗%
∃ ∀ 4 &%∗6 , ,%& ∀ ∃ ∀,
&%∗Σ∋,%&(Ε%&∀,, 0&%%,
,∗∃&4ΓΗ∗&∗∀,%
∃∀&&(
% Ε%,∗∃6∗(% &
∀ ∗∃,%& (∀( %Β− %%&(
∀( ∃%( % ,) , %% ∀ ,
∗∃∗∃−%∃(&%9,,
∀,∗∃
#1 ( ( ∗∃ 4&%∗ & >!−∗ ∀
, % ∗∗ , %6% %
∀ ∗ ∃ 4 &%∗ , ∃∃ %∃&&
,∗∃ +∗∃6 ,)/, ∗∃ ∀0
%
,) % ( ∀ ∗ %∗6 % −
∃ ∗∃ ∃( &% 9& ∀&&%∃,)
4∋)%∃=%−%&7(∀4=
∃!!∃&− !!∃&&!0!∃!0!∃&−∀#∃& =#Φ
((!∃0∃!!,,,&(!&!∃)=∗%!∃=
∗!!=#1
&∃%,,>∀, ?6%
1
∀ − & (, & −
∗,6,%(,
%∃
∃ ( ∃% 6& %∃∃ &∃ ∃
% ,, ∃ % −∃& %
&%& 2=#& &( %−%&6
∗:∃%7∗∃,∃%;
∗∃ ( ∀( 6 %&%∀6 &∀&%6
∃& ∗∃ %& ( ∃∀ ∗∃6 ,
9& ∃% ∗∗ % &
∀(6 (&& = &&=( ∗∃∀&∃∀&%∃6
,∗∃∀0&,−∗∃,)
,−&∗ &&%∗6 %&∗
∀%)∃∃,∗∗∀%( ∗∃∀&
∀ 6 % ∗ ∃ ∀, %6 ∗
& & %6 %∗ %6& −% &=
&&4&∗∗&.
∗∃∗∃6 ( ,)/,& , % ∀,6 ∃∃∀6 &
% ∀∃&%& + ∃( Ε%&∀
∗∃
+%%& ∗∃ %& ∗∗−∃&
∀∃,6&&Α%&,6−∗∃6>%∃∃∃&(
,%& Β%∃# , , & (% %∗
&& 9Ε%&∗%∀,&%&,
)∃∃&
∀
%,%&)∃)%2%∗%∃∃
./ +) ) −∀
∀)+ #0 11#
) )!∃2/3 )−
))!!+ ) # ) −∀
∀)!!)4335
−!!+ ) ∀1 +
)∀6
# ,%&Β%∃?ΓΒΗ>Β.Β∀∃!!%,=#1
&∃%,,>∀, ?6%
ϑ
∗∗+ ) −
))),)!!+7)!∃2/3
− − !!+ ) !∃2/3 ∋
( −!! ∀ ) ) %
!) ∗+ + ∀1 )
−∀ − + ))
)∀)−∀
!∗∗+1
+)++−8∗)
!∀ !0 −! 9 , ) −
)−−) ) ∃ 23 +− ) −∀
+ +−∀1) %:!
43+−∀):!: 8
−+−))−;,
!# ∃ −∀) ∀ 1 1
) −− ∀ 8∗− 90 ! 43.2
∀1−)−)∀#−∀1
∃%∀1− + 8∗∗ −
)) ) −∀))+∀
) + − ) − +
)−∀−
&∃%,,>∀, ?6%
∃
∃∃,∃%(&&∃%,,
>∀,6?%∗6%Γ∗(#1Η∃∃&
∃!!,,,
%&(&,
Λ6&6∀∆62(6Robert; Huber6
Χ6Λ∆,6Τ;∋(69&∋Υ6+&Γ#1ΗΚ
Κ68)!
!−∀,∀∀9ΓΗ, pp 9 – 18
DOI: 10.5033/ifosslr.v9i1.123
7∃ς#17Λ6∀&6>(2(6
8%(6ΛΧ6Τ,69∋(&+&∋Υ.
&%&7∀7∗∗+(%≅77=3∀(
∃!!∀∗∗!!(!≅!