Take this example (the formatting is already the result of parsing
into Python objects:
EB Garamond
['EB Garamond', 'EB Garamond 08']
['08 Italic', 'Cursiva', 'kurzíva', 'kursiv', 'Πλάγια', 'Italic',
'Kursivoitu', 'Italique', 'Dőlt', 'Corsivo', 'Cursief', 'Kursywa',
'Itálico', 'Курсив', 'İtalik', 'Poševno', 'Etzana']
EB Garamond
['EB Garamond', 'EB Garamond 08']
['Standard', '08 Regular', 'Normal', 'obyčejné', 'Κανονικά',
'Regular', 'Normaali', 'Normál', 'Normale', 'Standaard', 'Normalny',
'Обычный', 'Normálne', 'Navadno', 'Arrunta']
EB Garamond SC
['EB Garamond SC', 'EB Garamond SC 08']
['Standard', '08 Regular', 'Normal', 'obyčejné', 'Κανονικά',
'Regular', 'Normaali', 'Normál', 'Normale', 'Standaard', 'Normalny',
'Обычный', 'Normálne', 'Navadno', 'Arrunta']
The plain string is the "font family".
The first Python list is the comma-separated first part of the entry,
the second list the comma-separated list following ":style="
I would read this as having two independent variants "EB Garamond" and
"EB Garamond SC" where both can be addressed with an alias "... 08".
EB Garamond is available in two styles: Italic and Regular, with both
styles having numerous aliases. The SC variant is only available as
Regular with numerous aliases.
Does this sound reasonable?