[Diritto] Zope Products e software proprietario

Francesco Potorti` pot at potorti.it
Sat Feb 17 10:21:08 CET 2007


>> Siccome non so come funzioni Zope, chiedo:
>> 1. qual è il meccanismo di interazione fra OpenFlow e Zope?
>
>Zope definisce un database ad oggetti (ZODB) all'interno del quale
>possono essere create istanze di oggetti predefiniti oppure definiti
>da Products di terze parti. OpenFlow è un Product di Zope, che
>permette di creare nuove classi di oggetti all'interno dello ZODB.
>Quindi, per rispondere alle tua domanda:
>
>Zope trasforma le richieste Web dirette ad istanze della classe
>OpenFlow in invocazioni di metodi sulle istanze della classe.

Detta così sembra che l'interazione fra Zope e i suoi Product (fra cui
Openflow) sia piuttosto lasca, per quanto riguarda quel che hai
descritto.  Poi forse ci sono altre interazioni perché Openflow utilizza
altri servizi di Zope.  In ogni caso questo commento è solo per
inquadrare il problema, ma non c'entra direttamente con la tua questione.

>> 2. più importante: qual è il meccanismo di interazione fra OpenFlow e le
>>    applicazioni che lo usano?
>
>Una volta istanziato un oggetto OpenFlow all'interno di Zope, è
>possibile istanziare al suo interno uno o più processi (altri oggetti
>Zope).La creazione di tali oggetti può avvenire attraverso
>l'interfaccia web di gestione di OpenFlow (che è inglobata all'interno
>di Zope) oppure direttamente da codice python (per esempio, quello di
>un altro Product).

Qui hai dato meno dettagli.  Non capisco se si tratta di un'interazione
lasca simile alla precedente (chiamata e creazione di un processo che poi
vive per conto suo) o di qualcosa di più stretto per cui ci sono altre
interazioni dopo la nascita del processo e magari chiamate reciproche.

>> >basato. In particolare, in questo momento, io non so se:
>> >
>> >1) il prodotto sviluppato da questa azienda è un'applicazione
>> >sviluppata al di sopra di Zope e OpenFlow, oppure anche una ulteriore
>> >estensione di Zope che sfrutta i servizi che OpenFlow mette a
>> >disposizione;
>>
>> Specificamente, la risposta alla seconda domanda che ho fatto sopra di
>> sopra dovrebbe indicare che differenza c'è fra i due casi che citi qui.
>>
>> >Il concetto, più o meno, dovrebbe essere quello di un'applicazione
>> >sviluppata usando una libreria GPL; in questo caso, la libreria è
>> >OpenFlow.

Sì, è quello il problema.  Il guaio è che se la licenza di una libreria
GPL si estenda o meno all'applicazione che la chiama dipende dal tipo di
chiamata.

>> Con le solite avvertenze che riguardano il tipo di interazione.  Se non
>> c'è un link statico o condiviso (shared library) e non c'è interazione
>> intima di strutture dati o memoria condivisa, si cade in una zona grigia.
>
>Se per link intendiamo "risoluzione dinamica dei nomi", il linking ci
>potrebbe essere nel momento in cui vengono importati uno o più classi
>o moduli all'interno del codice.

Quindi esistono moduli Openflow che vengono chiamati dall'applicazione
che istanzia i processi, giusto?  Se ho capito, quindi un'applicazione
che usa Openflow istanzia dei processi all'interno di Openflow, e questi
processi quindi caricano dei moduli Openflow durante la loro vita.
Detta così mi pare abbastanza stretta.  Se poi durante la loro vita
comunicano anche con Openflow e si scambiano dati o segnalazioni allora
direi proprio che l'interazione è stretta.

Se quanto ho detto sopra è giusto, allora la licenza GPl di Openflow
penso proprio che si debba estendere alle applicazioni che usano
Openflow, a meno che non esista un sistema che comprenda Zope e Openflow
fra le librerie presenti in un'installazione standard.


More information about the Diritto mailing list