CONCLUSIONI DELL’AVVOCATO GENERALE

MACIEJ SZPUNAR

presentate il 10 marzo 2021 ( 1 )

Causa C‑13/20

Top System SA

contro

Stato belga

[domanda di pronuncia pregiudiziale proposta dalla cour d’appel de Bruxelles (Corte d’appello di Bruxelles, Belgio)]

«Rinvio pregiudiziale – Diritto d’autore e diritti connessi – Direttiva 91/250/CEE – Tutela giuridica dei programmi per elaboratore – Articolo 5, paragrafo 1 – Deroghe relative alle attività riservate – Atti necessari per la correzione di errori – Articolo 6 – Decompilazione di un programma per elaboratore»

Introduzione

1. La presente causa offre alla Corte una nuova occasione per prendere in esame le particolarità della tutela giuridica dei programmi per elaboratore. Infatti, sebbene si ammetta, tanto nel diritto dell’Unione ( 2 ) quanto nel diritto internazionale ( 3 ), che i programmi per elaboratore sono tutelati dal diritto d’autore come opere letterarie, essi se ne distinguono tuttavia sotto vari aspetti. La loro specificità, quali oggetti di tutela, si riflette nei meccanismi di detta protezione, a tal punto differenti dalle norme generali del diritto d’autore che taluni autori parlano di un regime de facto di tutela sui generis ( 4 ).

2. Anzitutto, non soltanto i programmi per elaboratore hanno una finalità utilitaristica, ma tale utilità ha carattere del tutto speciale: far funzionare elaboratori. Un simile programma è infatti costituito da un insieme di istruzioni che, una volta eseguite da un elaboratore, consentono a quest’ultimo di compiere taluni compiti ( 5 ). Ne consegue che, contrariamente a qualsiasi altra categoria di oggetti protetti dal diritto d’autore, i programmi per elaboratore non sono destinati ad essere utilizzati mediante la percezione umana. I primi programmi per elaboratore erano del resto considerati accessori della macchina e solo progressivamente il software ha conquistato la propria autonomia rispetto all’hardware ( 6 ).

3. Certamente, in alcune situazioni, che possono essere rilevanti dal punto di vista del diritto d’autore, la presa di conoscenza di un programma per elaboratore da parte dell’uomo può essere utile, ad esempio al fine di creare un programma concorrente o complementare. Tuttavia, in linea di principio, non è l’utente, bensì l’elaboratore che «prende conoscenza» del programma e l’esegue. L’utilità per l’utente non risiede dunque nel programma per elaboratore in quanto tale, ma nelle funzionalità che tale programma consente all’elaboratore di mettere in atto. Ciò avvicina i programmi per elaboratore alle invenzioni tutelate dal brevetto anziché alle «classiche» opere tutelate dal diritto d’autore.

4. Da tale prima caratteristica dei programmi per elaboratore discende la seconda, ossia la loro modalità di espressione. Infatti, se il programma per elaboratore non è destinato alla percezione umana, ma alla percezione della macchina, dev’essere espresso in modo che sia comprensibile da quest’ultima. Tale mezzo di espressione è il codice binario, una «scrittura» che si limita a due segni, abitualmente rappresentati come 0 e 1, ma tale rappresentazione è ancora una convenzione ad uso umano. Il processore dell’elaboratore «legge» detti segni come differenti valori di tensione elettrica.

5. Mentre i programmi per elaboratori detti «di prima generazione» erano spesso codificati direttamente in forma binaria, i programmi moderni sono troppo complessi per poter essere creati, o anche letti, in tale forma. Esistono dunque linguaggi di programmazione, detti «linguaggi di alto livello», che contengono le differenti istruzioni per gli elaboratori, codificate sotto forma di espressioni vicine al linguaggio naturale e, dunque, percepibili dall’uomo e comprensibili da coloro che conoscono tali linguaggi. Un programma per elaboratore realizzato in un siffatto linguaggio di programmazione costituisce il suo «codice sorgente». Tale codice sorgente è poi «compilato», mediante un apposito software denominato «compilatore», in un «codice oggetto» o «codice macchina», vale a dire la forma comprensibile ed eseguibile da un elaboratore ( 7 ).

6. Resta nondimeno il fatto che, nella pratica, i programmi per elaboratore sono di norma comunicati agli utenti unicamente sotto forma di codice oggetto. Ciò consente di utilizzare tali programmi eseguendoli sull’elaboratore, ma non permette di conoscerne il contenuto, il che è insolito quando si tratta di un’opera protetta dal diritto d’autore. Se e, eventualmente, in che misura l’utente di un programma per elaboratore abbia diritto di tradurre il codice oggetto di detto programma in codice sorgente (una siffatta operazione è detta «decompilazione») per conoscerne il contenuto è la questione che si situa appunto al centro della presente causa.

7. Tale questione ci conduce alla terza caratteristica dei programmi per elaboratore quali oggetti protetti dal diritto d’autore: l’articolazione fra tale protezione ed il classico principio del diritto d’autore secondo il quale quest’ultimo non tutela le idee, ma unicamente la loro espressione. Detto principio rispecchia la ratio del diritto d’autore che è quella di contribuire non soltanto alla creazione, tutelando il lavoro creativo degli autori, ma anche alla diffusione e all’accesso alle idee, prevenendone la monopolizzazione, cosicché queste ultime possano essere all’origine di altre creazioni. Tuttavia, il fatto che l’espressione dei programmi per elaboratore, come abitualmente divulgati, non sia percepibile dall’uomo permette di dissimulare le idee sottese a tali programmi, riconoscendo così ai loro autori una tutela che va oltre quanto giustificato dagli obiettivi del diritto d’autore ( 8 ). I programmi per elaboratore costituiscono quindi la sola categoria di opere protette per la quale l’accesso alle idee soggiacenti, mediante la semplice analisi sensoriale che non implichi atti soggetti al monopolio dell’autore, è impossibile ( 9 ).

8. Le precedenti considerazioni introduttive mi sembravano necessarie per collocare la presente causa nello specifico contesto della tutela dei programmi per elaboratore da parte del diritto d’autore. Infatti, il problema chiave di tale causa, quello del diritto alla decompilazione di un programma, non può porsi per nessun’altra categoria di oggetti protetti, per la semplice ragione che né il processo di decompilazione né nessun procedimento analogo sono necessari per accedere al contenuto delle opere appartenenti a categorie diverse da quella dei programmi per elaboratore.

Contesto normativo

Diritto dell’Unione

9. L’articolo 1 della direttiva 91/250/CEE del Consiglio, del 14 maggio 1991, relativa alla tutela giuridica dei programmi per elaboratore ( 10 ), dispone quanto segue: «1. Conformemente alle disposizioni della presente direttiva, gli Stati membri tutelano i programmi per elaboratore, mediante diritto d’autore, come opere letterarie ai sensi della convenzione di Berna sulla tutela delle opere letterarie e artistiche. Ai fini della presente direttiva, il termine “programma per elaboratore” comprende il materiale preparatorio per la progettazione di un programma. 2. La tutela ai sensi della presente direttiva si applica a qualsiasi forma di espressione di un programma per elaboratore. Le idee e i principi alla base di qualsiasi elemento di un programma per elaboratore, compresi quelli alla base delle sue interfacce, non sono tutelati dal diritto d’autore a norma della presente direttiva. 3. Un programma per elaboratore è tutelato se originale, ossia se è il risultato della creazione intellettuale dell’autore. Per determinare il diritto alla tutela non sono presi in considerazione altri criteri».

10. Ai sensi dell’articolo 4, lettere a) e b), della direttiva in parola: «Fatte salve le disposizioni degli articoli 5 e 6, i diritti esclusivi del titolare, ai sensi dell’articolo 2, comprendono il diritto di effettuare o autorizzare: a) la riproduzione, permanente o temporanea, totale o parziale di un programma per elaboratore con qualsivoglia mezzo, in qualsivoglia forma. Nella misura in cui operazioni come il caricamento, la visualizzazione, l’esecuzione, la trasmissione o la memorizzazione del programma per elaboratore richiedono una riproduzione, tali operazioni devono essere sottoposte ad autorizzazione da parte del titolare del diritto; b) la traduzione, l’adattamento, l’adeguamento e ogni altra modifica di un programma per elaboratore e la riproduzione del programma che ne risulti, fatti salvi i diritti della persona che modifica il programma;».

11. Ai sensi dell’articolo 5, paragrafo 1, di detta direttiva: «Salvo disposizioni contrattuali specifiche, non sono soggetti all’autorizzazione del titolare del diritto gli atti indicati nell’articolo 4, lettere a) e b), allorché tali atti sono necessari per un uso del programma per elaboratore conforme alla sua destinazione, da parte del legittimo acquirente, nonché per la correzione di errori».

12. Infine, l’articolo 6 della medesima direttiva, intitolato «Decompilazione», dispone quanto segue: «1. Per gli atti di riproduzione del codice e di traduzione della sua forma ai sensi dell’articolo 4, lettere a) e b), non è necessaria l’autorizzazione del titolare dei diritti qualora l’esecuzione di tali atti al fine di modificare la forma del codice sia indispensabile per ottenere le informazioni necessarie per conseguire l’interoperabilità con altri programmi di un programma per elaboratore creato autonomamente, purché sussistano le seguenti condizioni: a) tali atti siano eseguiti dal licenziatario o da un’altra persona che abbia il diritto di utilizzare una copia del programma o, per loro conto, da una persona abilitata a tal fine; b) le informazioni necessarie per ottenere l’interoperabilità non siano già facilmente e rapidamente accessibili alle persone indicate alla lettera a) e c) gli atti in questione siano limitati alle parti del programma originale necessarie per conseguire l’interoperabilità. 2. Le disposizioni del paragrafo 1 non consentono che le informazioni ottenute in virtù della sua applicazione: a) siano utilizzate a fini diversi dalla realizzazione dell’interoperabilità del programma creato autonomamente; b) siano comunicate a terzi, fatta salva la necessità di consentire l’interoperabilità del programma creato autonomamente; c) siano utilizzate per lo sviluppo, la produzione o la commercializzazione di un programma sostanzialmente simile nella sua espressione, o per ogni altro atto che violi il diritto di autore. 3. Conformemente alla convenzione di Berna sulla tutela delle opere letterarie e ar[t]istiche, le disposizioni del presente articolo non possono essere interpretate in modo da consentire che la loro applicazione arrechi indebitamente pregiudizio agli interessi legittimi del titolare del diritto o entri in conflitto con il normale impiego del programma».

13. La direttiva 91/250 è stata abrogata, a decorrere dal 24 maggio 2009, in forza dell’articolo 10 della direttiva 2009/24/CE ( 11 ). Tuttavia, i fatti di cui al procedimento principale restano soggetti, ratione temporis, alla direttiva 91/250. Peraltro, le disposizioni pertinenti di tale direttiva non sono state modificate.

Diritto belga

14. Gli articoli 4, 5 e 6 della direttiva 91/250 sono stati recepiti nel diritto belga, sostanzialmente alla lettera, agli articoli 5, 6 e 7 della legge del 30 giugno 1994, che recepisce nel diritto belga la direttiva 91/250/CEE del Consiglio, del 14 maggio 1991, relativa alla tutela giuridica dei programmi per elaboratore ( 12 ).

Fatti, procedimento e questioni pregiudiziali

15. Il Selor [bureau de sélection de l’Administration fédérale (ufficio di selezione dell’Amministrazione federale)] è un’istituzione pubblica belga, che è stata integrata nel service public fédéral Stratégie et Appui (servizio pubblico federale Strategia e Sostegno), responsabile della selezione e dell’orientamento dei futuri collaboratori dei differenti servizi pubblici dell’amministrazione. Lo Stato belga è designato come parte nel procedimento principale.

16. La Top System SA, società di diritto belga, sviluppa programmi per elaboratore e effettua diverse prestazioni informatiche per i propri clienti. Essa collabora da vari anni con il Selor.

17. La Top System è in particolare autrice di varie applicazioni sviluppate su richiesta del Selor, tra cui lo «SWA» (Selor Web Access), denominato anche «eRecruiting». Tali applicazioni sono costituite, da un lato, da elementi concepiti «su misura», idonei a soddisfare le esigenze ed i requisiti specifici del Selor, e, dall’altro, da elementi estrapolati da parte della Top System dal «TSF» (Top System Framework), programma di cui essa è autrice. Uno dei componenti del TSF è il «DGE» (DataGridEditor). Il Selor detiene una licenza d’uso delle applicazioni sviluppate dalla Top System.

18. Il 6 febbraio 2008 il Selor e la Top System hanno concluso contratti di servizio, uno dei quali aveva ad oggetto l’installazione e la configurazione di un nuovo ambiente di produzione nonché l’integrazione e la migrazione delle sorgenti delle applicazioni del Selor in tale nuovo ambiente. Tra i mesi di giugno e di ottobre del 2008 vi è stato uno scambio di messaggi di posta elettronica riguardo a problemi concernenti talune applicazioni, in particolare l’applicazione eRecruiting.

19. Ne è seguita una controversia dinanzi ai giudici commerciali di Bruxelles (Belgio). In particolare, il 6 luglio 2009 la Top System ha proposto un ricorso contro il Selor e lo Stato belga dinanzi al tribunal de commerce de Bruxelles (Tribunale del commercio di Bruxelles, Belgio) per far constatare, in sostanza, la decompilazione, da parte del Selor, del software quadro TSF. La Top System ha addotto in particolare una violazione dei suoi diritti esclusivi sul TSF e ha chiesto la condanna del Selor e dello Stato belga al risarcimento dei danni. La causa è stata rinviata dinanzi al tribunal de première instance de Bruxelles (Tribunale di primo grado di Bruxelles, Belgio), che ha dichiarato la domanda di risarcimento dei danni infondata.

20. La Top System ha impugnato tale sentenza presso il giudice del rinvio. Dinanzi a tale giudice, il Selor ammette di aver proceduto alla decompilazione di parte del TSF – le cui funzionalità sono state integrate nelle applicazioni del Selor – per disattivare una funzione difettosa. Il Selor sostiene di essere autorizzato a procedere a tale decompilazione, in primo luogo, in via contrattuale, affermazione che il giudice del rinvio respinge in quanto infondata, e, in secondo luogo, in forza delle disposizioni che recepiscono l’articolo 5, paragrafo 1, della direttiva 91/250. La Top System invece, contestando al contempo l’esistenza di qualsiasi errore nei suoi software, sostiene che, al di fuori della cornice contrattuale, la decompilazione di un programma per elaboratore è permessa soltanto in forza dell’articolo 6 di tale direttiva e non già ai fini della correzione degli errori, bensì dell’interoperabilità dei software indipendenti.

21. Ciò premesso, la cour d’appel de Bruxelles (Corte d’appello di Bruxelles, Belgio) ha deciso di sospendere il procedimento e di sottoporre alla Corte le seguenti questioni pregiudiziali: «1) Se l’articolo 5, paragrafo 1, della [direttiva 91/250] debba essere interpretato nel senso di consentire al legittimo acquirente di un programma per elaboratore di decompilarlo, in tutto o in parte, qualora tale decompilazione sia necessaria per consentirgli di correggere errori che incidono sul funzionamento di detto programma, anche quando la correzione consista nel disattivare una funzione che incide sul corretto funzionamento dell’applicazione di cui fa parte il programma stesso. 2) In caso di risposta affermativa, se egli debba soddisfare anche i requisiti di cui all’articolo 6 della [direttiva 91/250] o altri requisiti».

22. La domanda di pronuncia pregiudiziale è pervenuta alla Corte il 14 gennaio 2020. Hanno presentato osservazioni scritte le parti nel procedimento principale e la Commissione europea. In considerazione delle attuali circostanze relative alla crisi sanitaria, la Corte ha deciso di annullare l’udienza. Le parti hanno risposto per iscritto ai quesiti della Corte.

Analisi

Sulla prima questione pregiudiziale

23. Con la prima questione pregiudiziale, il giudice del rinvio chiede, in sostanza, se l’articolo 5, paragrafo 1, della direttiva 91/250 consenta al legittimo acquirente di un programma per elaboratore di procedere alla decompilazione di detto programma qualora tale decompilazione sia necessaria per correggere errori che incidono sul suo funzionamento. Dalla decisione di rinvio risulta che il dubbio di tale giudice attiene, in particolare, all’argomento formulato dalla Top System secondo il quale la decompilazione di un programma per elaboratore sarebbe consentita unicamente nell’ipotesi prevista all’articolo 6 di tale direttiva ( 13 ) e, di conseguenza, sarebbe esclusa nelle ipotesi disciplinate dall’articolo 5 della medesima direttiva. La risposta a tale questione impone di esaminare le prerogative del titolare dei diritti d’autore su un programma per elaboratore nei confronti del legittimo acquirente di tale programma.

Sul rapporto tra il titolare dei diritti ed il legittimo acquirente di un programma per elaboratore

24. Anzitutto, l’articolo 4 della direttiva 91/250 prevede i diritti esclusivi del titolare dei diritti d’autore, di carattere preventivo ( 14 ), sul suo programma per elaboratore. Il primo di tali diritti è il diritto di riproduzione, delimitato in maniera particolarmente estensiva in quanto include non soltanto qualsiasi forma di riproduzione, permanente o temporanea, ma anche gli atti di riproduzione necessari per l’uso di un programma. Orbene, contrariamente ad altre categorie di opere, in ogni caso quelle distribuite sul proprio supporto, un programma per elaboratore richiede sempre, per il suo uso, una riproduzione, non foss’altro che provvisoria, nella memoria dell’elaboratore. Per quanto riguarda i programmi per elaboratore, i diritti esclusivi del titolare costituiscono dunque un’ingerenza più profonda nella sfera privata dell’utente rispetto all’ipotesi di altre categorie di oggetti protetti, in quanto esigono de facto un’autorizzazione di detto titolare anche per la semplice utilizzazione del programma. Orbene, la direttiva 91/250 non contiene deroghe equivalenti a quelle previste all’articolo 5, paragrafo 1 e paragrafo 2, lettera b), della direttiva 2001/29/CE ( 15 ).

25. La direttiva 91/250 sottopone poi al monopolio del titolare tutta una serie di atti pertinenti alla modifica di un programma per elaboratore, inclusa «la riproduzione del programma che ne risulti». Anche in tal caso, i diritti del titolare sono particolarmente ampi rispetto alle classiche soluzioni del diritto d’autore, secondo le quali le trasformazioni dell’opera rientrano eventualmente nella sfera esclusiva dell’autore solo mediante la divulgazione pubblica del risultato della trasformazione.

26. Pertanto, il monopolio del titolare dei diritti d’autore su un programma per elaboratore si estende non soltanto ai classici atti di sfruttamento dell’opera nell’ambito del diritto d’autore, ma anche al godimento di tale opera nell’ambito della sfera privata dell’utente.

27. Infine, la direttiva 91/250 sancisce il diritto di distribuzione, che non viene in rilievo nella presente causa.

28. Tale ampia definizione delle prerogative del titolare è tuttavia limitata per quanto attiene ai suoi rapporti con il legittimo acquirente del suo programma per elaboratore. Infatti, ai sensi della frase introduttiva dell’articolo 4 della direttiva 91/250, i diritti esclusivi sono riconosciuti al titolare «[f]atte salve le disposizioni degli articoli 5 e 6» della direttiva in parola. Pertanto, sebbene i citati articoli siano presentati come deroghe ai diritti esclusivi ( 16 ), essi costituiscono di fatto un limite inerente a tali diritti. Orbene, ai sensi dell’articolo 5, paragrafo 1, di detta direttiva, non sono soggetti all’autorizzazione del titolare del diritto gli atti indicati nell’articolo 4, lettere a) e b), di quest’ultima – ossia la riproduzione e ogni forma di modifica del programma – allorché sono necessari per un uso del programma da parte del legittimo acquirente, nonché per la correzione di errori.

29. L’articolo 5, paragrafo 1, della direttiva 91/250 contiene tuttavia la propria riserva, vale a dire la previsione che gli atti del legittimo acquirente di un programma per elaboratore effettuati nel contesto dell’uso di detto programma non sono soggetti al monopolio del titolare «[s]alvo disposizioni contrattuali specifiche».

30. In definitiva, il vero esito dell’articolo 4, lettere a) e b), della direttiva 91/250, consiste nel permettere al titolare dei diritti d’autore su un programma per elaboratore, nel contesto dei suoi rapporti con il legittimo acquirente del suo programma, di definire contrattualmente, in maniera dettagliata, le modalità di utilizzazione di detto programma da parte di tale acquirente. Invece, in assenza di simili clausole contrattuali, l’acquirente è libero di realizzare atti soggetti, in linea di principio, al monopolio del titolare, a condizione di restare nell’ambito dell’uso del programma in questione conforme alla sua destinazione, il che include la correzione degli errori.

31. Peraltro, è vero che, secondo il diciassettesimo considerando della direttiva 91/250, «il contratto non può vietare gli atti di caricamento e di svolgimento necessari per l’utilizzazione di una copia di un programma legittimamente acquisita e l’atto di correzione dei suoi errori». Si deve tuttavia constatare che l’analisi della parte normativa di tale direttiva conduce alla conclusione opposta. Infatti, detta direttiva non solo non contiene alcuna disposizione esplicita che si esprima nel senso di tale considerando, ma neppure consente un’interpretazione che vada in tal senso. La sola disposizione della direttiva 91/250 che potrebbe venire in rilievo, ossia l’articolo 5, paragrafo 1, tratta allo stesso modo tutti gli atti elencati all’articolo 4, lettere a) e b), di tale direttiva. La disposizione in parola non lascia quindi alcun margine interpretativo che permetta di sottrarre taluni atti, ossia il caricamento e lo svolgimento del programma per elaboratore nonché la correzione degli errori, alla riserva relativa alle disposizioni contrattuali specifiche di cui all’articolo 5, paragrafo 1, di detta direttiva. Orbene, benché i considerando di una direttiva possano guidare l’interpretazione delle disposizioni che rispecchiano tali considerando, essi sono tuttavia sprovvisti di valore normativo che consenta loro di sostituire disposizioni inesistenti o condurre ad un’interpretazione contra legem.

32. Ciò è vero a maggior ragione in quanto l’articolo 9, paragrafo 1, seconda frase, della direttiva 91/250 stabilisce esplicitamente che è nulla qualsiasi disposizione contrattuale non conforme all’articolo 6 nonché all’articolo 5, paragrafi 2 e 3, di tale direttiva. La circostanza che il legislatore dell’Unione non abbia ivi menzionato l’articolo 5, paragrafo 1, di detta direttiva deve dunque essere necessariamente considerata intenzionale.

33. Come sostenuto dalla Commissione nella sua risposta ad un quesito della Corte in proposito, è possibile che il diciassettesimo considerando della direttiva 91/250 rispecchi la formulazione della proposta originale di tale direttiva ( 17 ). Infatti, quest’ultima, all’articolo 5, paragrafo 1, sanciva una distinzione tra i contratti di licenza negoziati fra le parti ed i cosiddetti contratti «di adesione», nei quali la libertà contrattuale dell’acquirente di un programma per elaboratore si limitava a concludere o meno il contratto. Secondo la Commissione, il divieto menzionato al diciassettesimo considerando riguarderebbe unicamente la seconda categoria di contratti. Resta nondimeno il fatto che il testo dell’articolo 5, paragrafo 1, della direttiva 91/250 infine adottato non opera tale distinzione. Pertanto, le clausole di qualsiasi contratto di licenza d’uso di un programma per elaboratore possono disciplinare tutti gli aspetti di tale utilizzazione, inclusi il caricamento e lo svolgimento, nonché la correzione di errori.

34. Ciò non è così irrazionale come appare prima facie. Beninteso, è difficile immaginare una licenza d’uso di un programma che vieti completamente tale uso. Tuttavia, l’uso del programma può essere limitato, ad esempio, per quanto concerne il numero di elaboratori sui quali il programma può essere installato e utilizzato, cosicché il suo caricamento ed il suo svolgimento su elaboratori aggiuntivi, anche da parte dello stesso acquirente ( 18 ), sarebbero vietati. Ciò vale a fortiori per quanto attiene alla correzione degli errori che, abitualmente, non rientra fra gli atti necessari per l’uso di un programma per elaboratore conforme alla sua destinazione. La correzione degli errori può dunque essere riservata al titolare dei diritti d’autore, senza incidere sulla coerenza di una licenza d’uso del programma ( 19 ).

35. Intendo dunque la constatazione che è stata fatta dalla Corte, nella sentenza SAS Institute ( 20 ), secondo la quale, in base al diciassettesimo considerando della direttiva 91/250, le operazioni di caricamento e di svolgimento di un programma per elaboratore necessarie per l’utilizzazione non possono essere vietate dal contratto, nel senso che una licenza d’uso che vietasse completamente gli atti necessari per tale uso sarebbe una contraddizione in termini ( 21 ). Invece, a mio avviso, tale constatazione non può essere interpretata nel senso che conferisca valore normativo autonomo al citato considerando.

36. Per quanto concerne, più precisamente, la correzione degli errori, un’interpretazione secondo la quale non fosse possibile escludere contrattualmente la facoltà per l’acquirente del programma di procedervi creerebbe uno squilibrio a scapito dei titolari dei diritti d’autore. Tale squilibrio sarebbe ancor più rilevante se la Corte seguisse la mia proposta di risposta nella presente causa e considerasse che occorre riconoscere all’acquirente la facoltà di decompilare il programma ai fini di detta correzione senza chiederne previamente il permesso al titolare. Ciò priverebbe infatti quest’ultimo di qualsiasi possibilità di opporsi a tale decompilazione ( 22 ).

37. Tale questione non sembra tuttavia rivestire importanza in circostanze come quelle di cui al procedimento principale. Dagli atti di causa risulta infatti che il contratto tra la Top System ed il Selor non contiene alcuna clausola che vieti al Selor la correzione degli errori nei programmi per elaboratore della Top System o, in ogni caso, tale società non si avvale di simili clausole dinanzi al giudice del rinvio. Il Selor è dunque autorizzato, in forza dell’articolo 5, paragrafo 1, della direttiva 91/250, a correggere gli errori nei programmi di cui trattasi.

38. Occorre ora valutare se la disposizione in esame consenta all’acquirente di un programma per elaboratore di procedere alla decompilazione di tale programma allo scopo di correggerne gli errori. Inizierò tale analisi fornendo alcuni chiarimenti riguardo alla nozione di «decompilazione».

Sulla nozione di «decompilazione»

39. Come ho già spiegato ( 23 ), un programma per elaboratore, scritto dal programmatore in un linguaggio di programmazione comprensibile dall’uomo, dev’essere successivamente trasformato in una forma comprensibile dall’elaboratore, vale a dire nel linguaggio macchina. Tale operazione è effettuata mediante uno speciale programma, il compilatore, ed è denominata «compilazione». La versione del programma nel linguaggio di programmazione è denominata «codice sorgente» e la versione nel linguaggio macchina, «codice oggetto». Non si tratta di una semplice trascrizione del programma in codice binario, ma di una «traduzione» delle istruzioni formulate in maniera funzionale e astratta nel codice sorgente in istruzioni concrete per i componenti del processore di un elaboratore avente una data architettura. Alcuni programmi scritti in linguaggi di programmazione più vicini al linguaggio macchina (cosiddetti linguaggi «di basso livello») non sono compilati, bensì assemblati. È un procedimento analogo a quello della compilazione e, poiché la direttiva 91/250 non fa distinzioni tra questi due procedimenti, occorre ritenere che i programmi compilati ed i programmi assemblati debbano essere trattati allo stesso modo dal punto di vista giuridico.

40. I programmi per elaboratore sono di norma distribuiti unicamente sotto forma di codice oggetto. Orbene, il codice oggetto non è comprensibile dall’uomo. Pertanto, il legittimo acquirente di un programma per elaboratore, nella misura in cui intende prendere conoscenza del contenuto del programma ed apportarvi modifiche, in particolare per correggere errori, deve procedere alla modifica del codice oggetto di cui dispone in una forma di programma comprensibile dall’uomo, vale a dire formulata in un linguaggio di programmazione. Tale operazione, chiamata «decompilazione», consiste nel riprodurre, a partire da istruzioni per il processore iscritte nel codice oggetto, istruzioni funzionali del programma. La decompilazione è dunque una sorta di «ingegneria inversa» (reverse engineering), vale a dire un’operazione con la quale si perviene a scoprire la costruzione di uno strumento complesso partendo dal prodotto finito, applicata ai programmi per elaboratore.

41. La decompilazione, tuttavia, non permette di riprodurre il codice sorgente originale del programma per elaboratore in questione. Infatti, in occasione del processo di compilazione, alcune informazioni contenute nel codice sorgente, non essenziali per il funzionamento del processore dell’elaboratore, vengono perse ed il processo di decompilazione non permette di recuperarle. Peraltro, lo stesso codice sorgente può fornire differenti risultati successivamente alla compilazione, in base alle impostazioni del compilatore. Il prodotto della decompilazione costituisce dunque una terza versione del programma, spesso chiamata «quasi‑codice sorgente». Resta nondimeno il fatto che il programma così decompilato può essere nuovamente ricompilato in un codice oggetto funzionante.

Sulla decompilazione quale elemento del monopolio dell’autore

42. Interpellati sulla questione se alla decompilazione di un programma per elaboratore si applichino i diritti esclusivi dell’autore, come definiti all’articolo 4, lettere a) e b), della direttiva 91/250, gli interessati che hanno presentato osservazioni nella presente causa hanno risposto unanimemente in senso affermativo. La Commissione ha presentato una risposta dettagliata in proposito. A suo avviso, in sostanza, sebbene la decompilazione in quanto tale non sia direttamente presa in considerazione dalle citate disposizioni, un certo numero di atti che insieme costituiscono il processo di decompilazione, quali la riproduzione e la modifica del programma per elaboratore, sono chiaramente soggetti al monopolio dell’autore.

43. Condivido tale punto di vista.

44. Ai sensi dell’articolo 1, paragrafo 2, prima frase, della direttiva 91/250, infatti, la tutela ai sensi di tale direttiva si applica a qualsiasi forma di espressione di un programma per elaboratore. Orbene, come già dichiarato dalla Corte, tanto il codice sorgente quanto il codice oggetto costituiscono due forme di espressione di un medesimo programma per elaboratore, entrambe protette ( 24 ). Il passaggio da una forma all’altra richiede dunque una riproduzione e una modifica del programma.

45. Per quanto concerne la decompilazione, essa consiste in una modifica del programma sotto forma di codice oggetto (tutelata) nel «quasi‑codice sorgente». Quest’ultimo costituisce una riproduzione del programma risultante dalla sua modifica, modifica consistente nella traduzione del linguaggio macchina in un linguaggio di programmazione. Una simile riproduzione è espressamente soggetta al diritto esclusivo dell’autore del programma in forza dell’articolo 4, lettera b), della direttiva 91/250.

46. Ciò è del resto confermato dal diciannovesimo considerando di tale direttiva, secondo il quale «la riproduzione, la traduzione, l’adattamento o la trasformazione non autorizzati della forma del codice in cui è stata messa a disposizione una copia di un programma per elaboratore costituiscono una violazione dei diritti esclusivi dell’autore».

47. Infine, un’ultima conferma del fatto che la decompilazione rientra nell’ambito di applicazione dell’articolo 4, lettere a) e b), della direttiva 91/250 può essere individuata nell’articolo 6, paragrafo 1, di quest’ultima. Infatti, l’articolo 6 di tale direttiva, intitolato «Decompilazione», fa riferimento alla «riproduzione del codice e [alla] traduzione della sua forma ai sensi dell’articolo 4, lettere a) e b)» ( 25 ) di detta direttiva. Si tratta dunque di una definizione indiretta della nozione di «decompilazione», ai sensi della direttiva 91/250, definizione che rinvia esplicitamente ai diritti esclusivi dell’autore di un programma per elaboratore elencati all’articolo 4, lettere a) e b) di tale direttiva.

48. Si deve dunque concludere che la decompilazione di un programma per elaboratore rientra nell’ambito di applicazione dei diritti esclusivi dell’autore di un simile programma previsti all’articolo 4, lettere a) e b), della direttiva 91/250.

Sull’inclusione della decompilazione nell’ambito di applicazione dell’articolo 5, paragrafo 1, della direttiva 91/250

49. La constatazione fatta al paragrafo precedente delle presenti conclusioni implica che la risposta alla questione se la decompilazione benefici della deroga (o, per meglio dire, della limitazione) prevista all’articolo 5, paragrafo 1, della direttiva 91/250 dev’essere affermativa. In proposito concordo con la Commissione.

50. Ai sensi di tale disposizione, infatti, il legittimo acquirente di un programma per elaboratore ha diritto di effettuare tutti gli atti elencati all’articolo 4, lettere a) e b), della direttiva 91/250, allorché tali atti sono necessari per l’uso di detto programma, nonché per la correzione di errori. Pertanto, logicamente, se la decompilazione o gli atti che la compongono, come la riproduzione e la modifica del codice, rientrano nell’ambito tutelato in forza dell’articolo 4, lettere a) e b), di tale direttiva, gli atti in questione devono necessariamente rientrare anche nell’ambito disciplinato dall’articolo 5, paragrafo 1, di detta direttiva.

51. L’interpretazione delle citate disposizioni proposta dalla Top System, secondo la quale la decompilazione rientrerebbe nella sfera del monopolio dell’autore ai sensi dell’articolo 4, lettere a) e b), della direttiva 91/250, ma sarebbe esclusa dall’esonero previsto all’articolo 5, paragrafo 1, di quest’ultima, non può essere condivisa. La costruzione e la formulazione di tali disposizioni indicano chiaramente che queste due interpretazioni non sono cumulabili.

Sull’apporto dell’articolo 6 della direttiva 91/250

52. La Top System sostiene tuttavia che l’articolo 6 della direttiva 91/250 dovrebbe imporre un’interpretazione dell’articolo 5, paragrafo 1, di tale direttiva differente da quella che ho precedentemente proposto. Secondo tale società, infatti, l’articolo 6 di detta direttiva costituirebbe una sorta di lex specialis e sarebbe la sola disposizione relativa alla decompilazione. Il carattere di lex specialis della citata disposizione escluderebbe la decompilazione dall’ambito di applicazione dell’articolo 5, paragrafo 1, della direttiva 91/250. Orbene, considerato che l’articolo 6 di tale direttiva autorizzerebbe la decompilazione al solo scopo di garantire l’interoperabilità dei programmi per elaboratore creati autonomamente, la decompilazione allo scopo di correggere errori in un programma per elaboratore, in assenza dell’autorizzazione del titolare dei diritti d’autore, sarebbe vietata.

53. Tale argomento tuttavia non resiste alle critiche.

54. Come ho già spiegato, infatti, l’articolo 5, paragrafo 1, della direttiva 91/250 non elenca i differenti atti da esso disciplinati. Tale disposizione si limita a rinviare all’articolo 4, lettere a) e b), della direttiva in parola, esonerando dall’obbligo di ottenere l’autorizzazione del titolare dei diritti d’autore «gli atti indicati» in detto articolo 4, lettere a) e b), allorché essi sono necessari per l’uso di un programma per elaboratore. Inoltre, tale disposizione non contiene alcuna riserva per quanto concerne l’articolo 6 di detta direttiva.

55. Invece, l’articolo 6, paragrafo 1, della direttiva 91/250 riguarda due categorie specifiche tra gli atti disciplinati dall’articolo 4, lettere a) e b), di tale direttiva, ossia la «riproduzione del codice» e la «traduzione della sua forma», qualora tali atti siano indispensabili per ottenere le informazioni necessarie per conseguire l’interoperabilità con altri programmi di un programma per elaboratore creato autonomamente, vale a dire per una finalità differente da quella contemplata all’articolo 5, paragrafo 1, di detta direttiva.

56. Nulla indica dunque che l’articolo 6 della direttiva 91/250 sia una lex specialis rispetto all’articolo 5, paragrafo 1, di tale direttiva. Le due disposizioni in parola hanno un ambito di applicazione differente, in quanto riguardano due ipotesi differenti. L’articolo 5, paragrafo 1, concerne gli atti necessari per l’uso di un programma per elaboratore, nonché per la correzione di errori, mentre l’articolo 6 concerne gli atti necessari per garantire l’interoperabilità dei programmi creati autonomamente. Le due disposizioni in esame sono dunque indipendenti l’una dall’altra e non integrano alcun rapporto tra lex specialis e lex generalis.

57. L’argomento della Top System secondo il quale l’articolo 6 della direttiva 91/250 sarebbe l’unica disposizione che consente la decompilazione di un programma per elaboratore deve dunque essere respinto.

L’implicazione dei lavori preparatori della direttiva 91/250

58. La conclusione secondo la quale l’articolo 5, paragrafo 1, della direttiva 91/250 si applica alla decompilazione di un programma per elaboratore allo scopo di correggerne gli errori non è inficiata, contrariamente a quanto afferma la Top System, dalle indicazioni che discendono dai lavori preparatori di tale direttiva.

59. Non condivido quindi gli argomenti della Top System, svolti in particolare nella sua risposta ai quesiti della Corte, secondo i quali i lavori preparatori della direttiva 91/250 dimostrerebbero che la decompilazione di un programma per elaboratore protetto sarebbe possibile soltanto nelle circostanze e ai fini definiti all’articolo 6 di tale direttiva. I documenti citati dalla Top System indicano infatti che era chiaro fin dall’inizio dei lavori che i diritti esclusivi degli autori, definiti all’articolo 4, lettere a) e b), di detta direttiva sarebbero stati applicati alla decompilazione del programma protetto. Orbene, atteso che l’articolo 5, paragrafo 1, della direttiva 91/250 consente al legittimo acquirente di compiere tutti gli atti elencati all’articolo 4, lettere a) e b), di tale direttiva, qualora ciò sia necessario per l’uso del programma, nonché per la correzione degli errori, ciò include necessariamente la decompilazione. Pertanto, l’intera discussione in occasione del procedimento legislativo della direttiva 91/250, che ha condotto all’aggiunta, al progetto iniziale della Commissione, dell’attuale articolo 6 di tale direttiva, verteva sulla decompilazione effettuata al di fuori dell’uso normale di un programma per elaboratore e, dunque, al di fuori del contesto dell’articolo 5, paragrafo 1, di detta direttiva. Si trattava infatti della decompilazione ai fini dell’interoperabilità dei programmi creati da autori indipendenti.

60. È dunque errato affermare, come fa la Top System, che la questione della decompilazione è definitivamente esclusa dall’articolo 5 della direttiva 91/250. Infatti, la decompilazione, per essere sottratta all’articolo 5, paragrafo 1, di tale direttiva, dovrebbe esserlo anche all’articolo 4, lettere a) e b), di quest’ultima, il che l’escluderebbe totalmente dalla sfera esclusiva del titolare dei diritti d’autore, in assenza di un’altra disposizione che possa garantirgli una protezione contro la decompilazione. Orbene, una simile conclusione sarebbe assurda.

61. Tutto ciò che i lavori preparatori della direttiva 91/250 dimostrano è infatti che l’idea iniziale di includere la deroga relativa alla decompilazione ai fini dell’interoperabilità in uno specifico paragrafo dell’articolo 5 di tale direttiva (distinto dal suo paragrafo 1) è stata abbandonata in favore della creazione di un nuovo articolo, più elaborato, dedicato a tale deroga. Ciò, tuttavia, non incide affatto sulla portata dell’articolo 5, paragrafo 1, di detta direttiva.

62. Vero è che il Consiglio ha fortemente limitato la portata di tale nuova deroga. In particolare, è stata abbandonata l’idea, inizialmente presentata dalla Commissione, di permettere la decompilazione ai fini della manutenzione del programma di nuova creazione, interoperabile con il programma decompilato. A mio avviso, ciò si spiega col fatto che, ai sensi dell’articolo 9, paragrafo 1, seconda frase, della direttiva 91/250, non è possibile derogare a tale eccezione in via contrattuale, contrariamente a quanto avviene per l’articolo 5, paragrafo 1. Lo scopo era dunque tutelare i titolari dei diritti d’autore da abusi. Resta nondimeno il fatto che, in tale ipotesi, la decompilazione è effettuata per scopi estranei alla normale utilizzazione del programma ( 26 ).

63. Condivido quindi l’opinione della Commissione secondo cui i lavori preparatori della direttiva 91/250 non consentono di pervenire a conclusioni differenti da quelle che discendono dall’interpretazione letterale e sistematica dell’articolo 5, paragrafo 1, di tale direttiva.

Proposta di risposta

64. Propongo dunque di rispondere alla prima questione pregiudiziale dichiarando che l’articolo 5, paragrafo 1, della direttiva 91/250 dev’essere interpretato nel senso che consente al legittimo acquirente di un programma per elaboratore di procedere alla decompilazione di tale programma qualora sia necessaria per correggere errori che incidono sul suo funzionamento.

Sulla seconda questione pregiudiziale

65. Con la seconda questione pregiudiziale, il giudice del rinvio chiede se, nel caso in cui l’articolo 5, paragrafo 1, della direttiva 91/250 dovesse essere interpretato nel senso di consentire al legittimo acquirente di un programma per elaboratore di procedere alla decompilazione di tale programma qualora sia necessaria per correggere errori, tale decompilazione debba soddisfare i requisiti sanciti all’articolo 6 di tale direttiva o altri requisiti.

Sull’applicabilità dei requisiti che discendono dall’articolo 6 della direttiva 91/250

66. L’articolo 6 della direttiva 91/250 introduce una deroga ai diritti esclusivi del titolare dei diritti d’autore su un programma per elaboratore consentendo la decompilazione di quest’ultimo qualora sia necessaria per garantire la compatibilità con detto programma di un altro programma creato autonomamente. Tale eccezione è accompagnata da un certo numero di condizioni e divieti, elencati nella citata disposizione.

67. Conformemente alla mia analisi ( 27 ), l’articolo 6 della direttiva 91/250 è autonomo rispetto all’articolo 5 di tale direttiva, in particolare rispetto al paragrafo 1 di quest’ultimo articolo. La deroga sancita dall’articolo 6 di detta direttiva ha un ambito di applicazione e finalità differenti da quella prevista all’articolo 5, paragrafo 1, della medesima direttiva e definisce altresì in maniera differente gli atti da essa autorizzati.

68. I requisiti sanciti all’articolo 6 della direttiva 91/250 non possono dunque essere applicati né direttamente né per analogia alla deroga prevista all’articolo 5, paragrafo 1, di tale direttiva.

69. Ciò non significa tuttavia che l’applicazione di quest’ultima deroga non debba soddisfare alcun requisito.

Sugli altri requisiti applicabili

70. Alla luce della formulazione dell’articolo 5, paragrafo 1, della direttiva 91/250, infatti, talune condizioni e limitazioni sono inerenti alla deroga ai diritti esclusivi sancita in tale disposizione ( 28 ).

71. Anzitutto, la deroga in esame va unicamente a beneficio del legittimo acquirente di un programma per elaboratore. Tale punto non sembra sollevare problemi nel procedimento principale e dunque non necessita di essere ulteriormente sviluppato.

72. Inoltre, gli atti compiuti, nel caso di specie gli atti che insieme costituiscono la decompilazione di un programma per elaboratore ( 29 ), devono essere necessari per permettere un uso di tale programma conforme alla sua destinazione e, più precisamente, per correggere errori. Tale condizione impone le seguenti osservazioni.

73. In primo luogo, occorre definire la nozione di «errore». Infatti, l’esistenza stessa di un errore in un programma per elaboratore può essere oggetto di discordia tra l’autore e l’utente di tale programma ( 30 ). Ciò che, dal punto di vista di quest’ultimo, può costituire un errore può essere una funzionalità o una caratteristica voluta dal punto di vista dell’autore di detto programma. Sebbene la direttiva 91/250 non contenga una definizione di tale termine, essa è tuttavia deducibile dalla formulazione e dalla finalità dell’articolo 5, paragrafo 1, di tale direttiva.

74. Ai sensi della summenzionata disposizione, gli atti realizzati dal legittimo acquirente di un programma per elaboratore devono permettergli «un uso [di tale programma] conforme alla sua destinazione, (...) nonché [la] correzione di errori». La correzione degli errori rientra dunque nell’ambito di un uso del programma conforme alla sua destinazione.

75. La destinazione del programma per elaboratore è quella definita dal suo autore o, a seconda dei casi, quella pattuita dal fornitore e dall’acquirente del programma al momento del suo acquisto. Un errore è dunque un malfunzionamento che impedisce l’uso del programma conforme a tale destinazione. Soltanto la correzione di simili errori può giustificare gli atti dell’utente, inclusa la decompilazione, effettuati senza il consenso del titolare dei diritti d’autore.

76. Invece, nessuna modifica o miglioramento del programma rispetto alla sua destinazione iniziale costituisce una correzione degli errori che giustifichi simili atti. Si tratta in particolare dell’aggiornamento del programma connesso al progresso tecnologico. In altre parole, l’obsolescenza tecnica del programma per elaboratore non costituisce un errore ai sensi dell’articolo 5, paragrafo 1, della direttiva 91/250.

77. Poiché infatti i programmi per elaboratore non soltanto costituiscono una categoria di opere utilitarie, ma, inoltre fanno parte di un settore caratterizzato dallo sviluppo tecnologico particolarmente rapido, è normale che diventino obsoleti con il tempo. Orbene, rimediare a tale obsolescenza con l’aggiornamento dei programmi per elaboratore, o addirittura mediante la loro sostituzione con nuovi programmi, rientra nel normale sfruttamento di detti programmi quali oggetti protetti dal diritto d’autore e, di conseguenza, tra le prerogative dei titolari di tale diritto.

78. In secondo luogo, l’intervento dell’utente del programma per elaboratore dev’essere necessario dal punto di vista dell’obiettivo perseguito. Nel caso di specie, si tratta di sapere se ed in quale misura la decompilazione di un programma per elaboratore sia necessaria per la correzione di errori.

79. Certamente esistono errori che possono essere corretti senza accesso al codice sorgente del programma, «manualmente» dall’utente, oppure mediante un apposito software. Le parti che hanno presentato osservazioni nella presente causa sembrano tuttavia concordare sul fatto che tale correzione generalmente richiede l’introduzione delle modifiche nel codice del programma. Poiché il codice oggetto non è comprensibile dall’uomo, una simile correzione richiede l’accesso al codice sorgente originario o la traduzione del codice oggetto in codice sorgente («quasi‑codice sorgente» ( 31 )). Si pone dunque la seguente questione: in quali circostanze tale esigenza giustifica la decompilazione del programma da parte del suo legittimo acquirente?

80. La Top System sostiene che simili casi sono assai rari ed eccezionali. Secondo tale società, nella maggior parte delle situazioni, il legittimo acquirente di un programma per elaboratore dispone già del codice sorgente, o il titolare dei diritti d’autore può consentirgli l’accesso a quest’ultimo, oppure il titolare è incaricato della correzione degli errori in forza di un contratto di manutenzione.

81. Lascio da parte l’ipotesi in cui il legittimo acquirente disponga della versione non compilata o già compilata del programma, vale a dire dell’accesso al codice sorgente. È evidente che, in tale situazione, non è necessaria una decompilazione. L’aspetto più problematico è il rapporto fra tale acquirente ed il titolare dei diritti d’autore sul programma per elaboratore e i loro obblighi reciproci. Tuttavia, non viene qui in rilievo la necessità della decompilazione del programma per la correzione di errori, ma la condizione per l’applicazione dell’articolo 5, paragrafo 1, della direttiva 91/250, ossia l’assenza di disposizioni contrattuali che vi si oppongano.

82. Ricordo che l’articolo 5, paragrafo 1, della direttiva 91/250 si applica «[s]alvo disposizioni contrattuali specifiche». In altre parole, il contratto di acquisto del programma può organizzare l’utilizzazione del programma, inclusa la correzione degli errori, limitando la possibilità per l’acquirente di realizzare atti soggetti al monopolio del titolare ai fini di tale correzione. Detta limitazione può spingersi fino al divieto assoluto della correzione di errori da parte dell’acquirente ( 32 ). In una simile ipotesi, la deroga prevista dalla citata disposizione non trova applicazione e gli atti dell’acquirente sono limitati a quelli autorizzati in forza del contratto.

83. Se invece il contratto tra le parti non contiene una siffatta limitazione, il legittimo acquirente di un programma per elaboratore, a mio avviso, è libero di realizzare gli atti elencati all’articolo 4, lettere a) e b), della direttiva 91/250, inclusa la decompilazione del programma, se ciò risulti necessario, in particolare, per la correzione di errori. Tale acquirente non ha altri obblighi nei confronti del titolare dei diritti d’autore sul programma. Egli non è dunque tenuto a chiedere al titolare di correggere gli errori, né a chiedere l’accesso al codice sorgente del programma, né ad adire le vie legali affinché sia ingiunto al titolare di compiere tale o talaltro atto. Invece, se è vero che simili obblighi non discendono dall’articolo 5, paragrafo 1, di detta direttiva, si deve ricordare che la decompilazione è un processo laborioso, costoso e dagli effetti aleatori. Nella pratica, gli utenti faranno dunque ricorso a tale tecnica soltanto in ultima istanza ( 33 ).

84. In caso di controversia, spetterà beninteso al giudice competente determinare l’esatto contenuto dei diritti e degli obblighi contrattuali delle parti del contratto di acquisto di un programma per elaboratore.

85. Se è vero che la correzione di un errore spesso richiede la modifica di un minuscolo frammento del codice di un programma per elaboratore, ritrovare tale frammento può richiedere la decompilazione di una parte sostanziale del programma o addirittura della sua totalità. Pertanto, non si può ritenere che una siffatta decompilazione non sia necessaria per la correzione dell’errore, in quanto ciò renderebbe la correzione impossibile e priverebbe di effetto utile la deroga prevista all’articolo 5, paragrafo 1, della direttiva 91/250. Il legittimo acquirente del programma per elaboratore ha dunque diritto, in forza di tale disposizione, di decompilare il programma nella misura necessaria non soltanto per la correzione di un errore stricto sensu, ma anche per la ricerca di tale errore e della parte del programma che deve essere modificata.

86. Si deve infine constatare che l’articolo 5, paragrafo 1, della direttiva 91/250 non menziona affatto restrizioni all’uso delle informazioni ottenute grazie alla decompilazione di un programma per elaboratore, come quelle contenute all’articolo 6, paragrafo 2, di tale direttiva. Tuttavia, non ne discende che il legittimo acquirente di un programma per elaboratore che abbia proceduto alla decompilazione di tale programma allo scopo di correggerne errori sia libero di utilizzare successivamente il prodotto di tale decompilazione per altri scopi.

87. L’articolo 4, lettera b), della direttiva 91/250 sottopone infatti al monopolio dell’autore non soltanto «la traduzione, l’adattamento, l’adeguamento e ogni altra modifica di un programma per elaboratore», ma anche «la riproduzione del programma che ne risulti», vale a dire, nel caso della decompilazione, il codice sorgente risultante da quest’ultima. Quindi, qualsiasi riproduzione di detto codice sorgente per uno scopo diverso dalla correzione di errori è subordinata all’autorizzazione del titolare dei diritti d’autore. Peraltro, l’articolo 4, lettera c), di tale direttiva vieta la distribuzione al pubblico di una copia di un programma per elaboratore senza il consenso del titolare dei diritti d’autore su tale programma, previsione che si applica anche alle copie del codice sorgente risultanti dalla decompilazione.

88. Invece, conformemente all’articolo 1, paragrafo 2, della direttiva 91/250, le informazioni che non costituiscono il programma propriamente detto, vale a dire una forma della sua espressione, non sono tutelate ( 34 ).

89. Propongo dunque di rispondere alla seconda questione pregiudiziale dichiarando che l’articolo 5, paragrafo 1, della direttiva 91/250 dev’essere interpretato nel senso che la decompilazione di un programma per elaboratore, in forza di tale disposizione, da parte del legittimo acquirente, per correggerne gli errori, non è subordinata ai requisiti di cui all’articolo 6 di tale direttiva. Una siffatta decompilazione può invece essere effettuata soltanto nella misura necessaria per tale correzione ed entro i limiti degli obblighi contrattuali dell’acquirente.

Conclusione

90. Alla luce delle precedenti considerazioni, propongo dunque alla Corte di fornire le seguenti risposte alle questioni pregiudiziali sollevate dalla cour d’appel de Bruxelles (Corte d’appello di Bruxelles, Belgio): 1) L’articolo 5, paragrafo 1, della direttiva 91/250/CEE del Consiglio, del 14 maggio 1991, relativa alla tutela giuridica dei programmi per elaboratore, dev’essere interpretato nel senso che consente al legittimo acquirente di un programma per elaboratore di procedere alla decompilazione di tale programma qualora sia necessaria per correggere errori che incidono sul suo funzionamento. 2) L’articolo 5, paragrafo 1, della direttiva 91/250 dev’essere interpretato nel senso che la decompilazione di un programma per elaboratore, in forza di tale disposizione, da parte del legittimo acquirente, per correggerne gli errori, non è subordinata ai requisiti di cui all’articolo 6 di tale direttiva. Una siffatta decompilazione può essere invece effettuata soltanto nella misura necessaria per tale correzione ed entro i limiti degli obblighi contrattuali dell’acquirente.

( 1 ) Lingua originale: il francese.

( 2 ) V. paragrafo 9 delle presenti conclusioni.

( 3 ) V. articolo 4 del Trattato dell’OMPI sul diritto d’autore, adottato a Ginevra il 20 dicembre 1996.

( 4 ) V., in particolare, Markiewicz, R., Ilustrowane prawo autorskie, Wolters Kluwer, Varsavia, 2018, pag. 463. Altri autori qualificano i programmi per elaboratore come «scritti per determinazione della legge», v. Vivant, M., Bruguière, J.‑M., Droit d’auteur et droits voisins, Dalloz, Parigi, 2015, pag. 183.

( 5 ) Janssens, M.‑Ch., «The Software directive», in Stamatoudi, I., e Torremans, P., EU Copyright Law. A Commentary, Edward Elgar Publishing, Cheltenham, 2014, pagg. da 89 a 148, in particolare pag. 93.

( 6 ) Bing, J., «Copyright Protection of Computer Programs», in Derclaye, E., (a cura di), Research Handbook on the Future of EU Copyright, Edward Elgar Publishing, Cheltenham, 2009, pagg. da 401 a 425, in particolare pag. 401.

( 7 ) O, più precisamente, dal processore avente una certa architettura, in quanto le istruzioni del codice oggetto sono specifiche per ciascun tipo di processore e non saranno eseguite da un processore di tipo differente.

( 8 ) V., in particolare, Karjala, D.S., «Copyright Protection of Computer Documents, Reverse Engineering and Professor Miller», University of Dayton Law Review, 1994, vol. 19, pagg. da 975 a 1020.

( 9 ) Shemtov, N., Beyond the Code. Protection of Non‑Textual Features of Software, Oxford University Press, Oxford, 2017, pag. 28. Per più ampie considerazioni sulla dicotomia idea/espressione nel diritto d’autore e sulla sua applicazione ai programmi per elaboratore, v., in particolare, pagg. da 102 a 127 di tale opera.

( 10 ) GU 1991, L 122, pag. 42.

( 11 ) Direttiva del Parlamento europeo e del Consiglio, del 23 aprile 2009, relativa alla tutela giuridica dei programmi per elaboratore (GU 2009, L 111, pag. 16).

( 12 ) Moniteur belge del 27 luglio 1994, pagg. da 19315.

( 13 ) Ossia per garantire l’interoperabilità di un programma per elaboratore creato autonomamente dal programma decompilato.

( 14 ) Il titolare ha diritto «di effettuare o autorizzare».

( 15 ) Direttiva del Parlamento europeo e del Consiglio, del 22 maggio 2001, sull’armonizzazione di taluni aspetti del diritto d’autore e dei diritti connessi nella società dell’informazione (GU 2001, L 167, pag. 10).

( 16 ) L’articolo 5 della direttiva 91/250 è intitolato «Deroghe relative alle attività riservate».

( 17 ) V. proposta di direttiva del Consiglio relativa alla tutela giuridica dei programmi per elaboratore [COM(88) 816 def.], presentata dalla Commissione il 5 gennaio 1989.

( 18 ) Contrariamente all’articolo 5, paragrafo 3, della direttiva 91/250, l’articolo 5, paragrafo 1, di tale direttiva non menziona l’utente di una copia del programma, ma l’acquirente del programma, indipendentemente dal numero di copie acquistate.

( 19 ) Peraltro, i contratti d’uso dei programmi per elaboratore saranno soggetti ad altre norme giuridiche, quali le disposizioni del diritto dei contratti, della tutela dei consumatori o della concorrenza. Tali norme limiteranno la libertà contrattuale delle parti, proteggendo gli acquirenti dei programmi per elaboratore dagli abusi da parte dei titolari dei diritti d’autore su tali programmi.

( 20 ) Sentenza del 2 maggio 2012 (C‑406/10, EU:C:2012:259, punto 58).

( 21 ) In quanto contraria all’obiettivo stesso di un contratto d’uso di un programma per elaboratore.

( 22 ) Orbene, non si può escludere che la decompilazione sia effettuata per uno scopo illecito che non sia collegato alla correzione degli errori.

( 23 ) V. paragrafo 5 delle presenti conclusioni.

( 24 ) Sentenza del 2 maggio 2012, SAS Institute (C‑406/10, EU:C:2012:259, punti 37 e 38).

( 25 ) Il corsivo è mio.

( 26 ) Peraltro, come spiegherò nel prosieguo, a mio avviso l’articolo 5, paragrafo 1, della direttiva 91/250 non consente la decompilazione di un programma per elaboratore ai fini della manutenzione del programma decompilato, salvo per la correzione degli errori in senso stretto (v. paragrafi 75 e 76 delle presenti conclusioni).

( 27 ) V., in particolare, paragrafi da 52 a 56 delle presenti conclusioni.

( 28 ) V., in particolare, Janssens, M.‑Ch., op. cit., pag. 127.

( 29 ) V. paragrafi da 45 a 47 delle presenti conclusioni.

( 30 ) Nel procedimento principale, la Top System nega l’esistenza di un errore nel programma in questione, benché il giudice del rinvio menzioni una perizia che constata l’esistenza di un simile errore.

( 31 ) V. paragrafo 41 delle presenti conclusioni.

( 32 ) A mio avviso, una simile possibilità sussiste nonostante la formulazione del diciassettesimo considerando della direttiva 91/250 (v. paragrafi da 31 a 34 delle presenti conclusioni).

( 33 ) Tale caratteristica della decompilazione è sottolineata da numerosi autori. V., in particolare, Bing, J., op. cit., pagg. 423 e 424.

( 34 ) Devo segnalare che, a mio avviso, tale interpretazione non conferisce al titolare dei diritti d’autore su un programma per elaboratore una tutela inferiore a quella conferita dall’articolo 6, paragrafo 2, della direttiva 91/250 nell’ipotesi di una decompilazione ai fini dell’interoperabilità dei programmi creati autonomamente. Infatti, letto alla luce dell’articolo 1, paragrafo 2, di tale direttiva, l’articolo 6, paragrafo 2, di quest’ultima può essere interpretato soltanto nel senso che il termine «informazioni» designa unicamente gli elementi di un programma per elaboratore tutelati in forza di detta direttiva, vale a dire le forme della sua espressione, e non già le «idee e i principi alla base» di tali elementi. Peraltro, ricordo che, in forza dell’articolo 9, paragrafo 1, seconda frase, della direttiva 91/250, la decompilazione fondata sull’articolo 6 di tale direttiva non può essere esclusa in via contrattuale, contrariamente alla decompilazione effettuata per la correzione di errori.