[Formati] YAP - Yet Another Proposal :)
Francesco Potorti`
pot at potorti.it
Sat Feb 19 17:04:49 UTC 2005
Roberto Galoppini:
>Cosa sono formati e protocolli e a cosa servono
>-----------------------------------------------
>
><<La modalità con cui i dati vengono rappresentati elettronicamente in
>modo che i programmi possano elaborarli [..] per elaborare un file, un
>programma deve sapere come i dati vi sono "memorizzati". Il formato
>specifica la corrispondenza fra la rappresentazione binaria
>e i dati rappresentati>>[1]
Qui concordo con le osservazioni di Stefano Maffulli. Nel documento
attuale esiste un'introduzione che spiega il concetto di formato e
perché questo sia importante, che va mantuenuta, ed eventualmente
aggiornata.
>Conoscere le specifiche, ovvero le modalità di rappresentazione binaria
>di un dato, sia esso un testo, un'immagine o un file musicale, non è una
>curiosità tecnologica, ma è l'unico modo per potersi riservare, nel
>tempo, il diritto di poter fruire dei propri dati.
>
>Il protocollo è una descrizione formale del formato dei messaggi e delle
>regole che devono essere rispettate per inviare/ricevere tali messaggi.
Il protocollo --> Un \em{protocollo di comunicazione}
>L'utilizzo di un "linguaggio" comune garantisce la possibilitè di
>rendere interoperabili sistemi ed applicazioni informatiche eterogenee,
>ed è un prerequisito per poter inviare e ricevere dati.
>
>
>Aperto e libero
>---------------
>
><<[..]una tecnologia si dice "aperta" quando è resa pubblica ed è
>documentata esaustivamente. "Aperta" si oppone a "proprietaria", che
>indica una tecnologia posseduta in esclusiva da un soggetto che ne
>mantiene segreto il funzionamento e può modificarla a proprio
>piacimento. Al requisito della pubblicità per alcuni si aggiunge anche
>quello relativo alla proprietà>>[1]
Non sposerei la terminologia della commissione, perché oppone aperto a
proprietario, mentre a noi interessa opporre libero a proprietario. Ad
aperto potremmo opporre chiuso.
Se il testo sopra riportato serve solo a definire lo stato dell'arte
nelle definizioni, è bene dirlo esplicitamente, citando la fonte in
chiaro come è fatto nel seguito.
>Parallelamente altri studi commissionati dalla commissione europea[2],
>hanno riportato, nell'ambito delle attività svolte presso la commissione
>TAC (Telematics between Administrations Committee) sotto l'egida del
>progetto europeo IDA (Interchange of Data between Administrations), la
>seguente definizione: <<Open Standard protocols are defined as those
>which are free from patents and with an OSS implementation>>.
>
>Come mostrano queste differenti definizioni non vi è unanimità su cosa
>significhi formato aperto, ed è altresì importante sottolineare che
>alcune importanti realtà dell'industria del software non abbiano un
>comune punto di vista, come risulta ad esempio dalle lettere aperte
>inoltrate alla commissione TAC dalle varie aziende.
>
>Una possibile definizione di formato/protocollo libero si basa su una
>trasposizione della definizione di software libero [3], ovvero:
>
>0) Libertà di studiare le specifiche del formato/protocollo ed
> adattarlo alle proprie necessità;
>1) Libertà di utilizzare le specifiche del formato/protocollo
> per qualunque scopo;
>2) Libertà di redistribuire le specifiche del formato/protocollo;
>3) Libertà di modificare le specifiche del formato/protocollo e
> redistriburne le versioni modificate.
La 0 e la 1 sono scambiate. Se è una svista, va corretta; se è
intenzionale non può essere passata sotto silenzio e va giustificata.
>La specifica di un formato, o di un protocollo, costituisce il
>"linguaggio" con il quale è possibile esprimere e trasmettere dati,
>quindi diversamente da un programma, definisce uno standard di
>memorizzazione o comunicazione di dati.
Qui, come sopra, linguaggio secondo me non va messo fra virgolette.
Inoltre: nei mesi passati abbiamo spesso parlato di protocolli e
specifiche di protocolli. Nel capoverso precedente si parla di
specifica di un formato, e non di formato. È intenzionale o casuale?
Nel secondo caso vorrebbe dire che formato e specifica di formato sono
usati indifferentemente, il che non va bene. Nel primo caso, vorrei
capire perché si usa specifica di formato piuttosto che formato.
>In merito alle suddette libertà occorre esprimere le seguenti tutele:
>- tra gli scopi garantiti dalla libertà 1) deve essere garantito il
>diritto di poter implementare un programma che si basi, parzialmente o
>totalmente, sulle specifiche di tale formato/protocollo.
>In particolare deve esser garantita la libertà di poter distribuire tale
>programma con qualunque tipo di licenza software; formati/protocolli che
>pongano restrizioni sulle licenze d'uso utilizzabili per la
>distribuzione di programmi sono da ritenersi non liberi;
Un punto notevole qui è il seguente: secondo le specifiche RAND del w3c,
per quanto ho capito, è ammissibile un protocollo che necessiti di un
algoritmo coperto da brevetto, purché il brevetto sia licenziato
gratuitamente a tutti coloro che lo implementino al fine di utilizzare
il protocollo. Quali sono i problemi di una tale politica con le
licenze libere? Non è una tale politica incompatibile con la GPL? Come
ne possiamo tenere conto in una definizione?
>- la libertà di redistribuzione delle specifiche di un
>formato/protocollo richiede che tali specifiche siano royalty-free; non
>deve quindi essere possibile consentire all'autore delle specifiche di
>porre alcuna restrizione sulla redistribuzione, ad esempio richiedendo
>obbligatoriamente la sottoiscrizione di un NDA (Non Disclosure
>Agreement);
Vanno fatti altri esempi.
>- il formato protocollo deve poter essere esteso, ma la licenza con cui
>le specifiche sono distribuite devono tutelare il "permesso d'autore"
>(copyleft), in modo che chiunque utilizzi tali formati/protocolli
>modificati possa avere accesso alle relative specifiche con gli stessi
>diritti con cui è stato distribuito il formato/protocollo originale.
Questo è eccessivamente restrittivo. Così come la definizione di
software libero non implica il permesso d'autore, così non dovrebbe
implicarlo una definizione di formato aperto.
>Processo di definizione delle specifiche
>----------------------------------------
>
>Il gruppo di lavoro che elabora un determinato formato o protocollo
>standard, deve essere aperto ai contributi di terzi, indipendentemente
>dall'appartenza a determinate aziende e/o alla corresponsione di costose
>fee; garantire l'accesso agli organismi di standardizzazione,
>esattamente come accaduto per i protocolli su cui si è sviluppata la
>rete (IETF - Internet Engeneering Task Force), è una garanzia per lo
>sviluppo di standard efficaci e ampiamente condivisi.
Non mi convince. Secondo me nulla va detto sui meccanismi di creazione
di uno standard.
>Benché la modificabilità dei formati/protocolli deve essere garantita
>poiché potrebbe essere utile estendere le specifiche originali per poter
>aggiungere caratteristiche inizialmente non previste, i corpi di
>standardizzazione devono poter garantire la conformità, eventualmente a
>pagamento, delle implementazioni ad un dato formato/protocollo,
>permettendo a singoli utenti, aziende ed enti pubblici di operare scelte
>consapevoli nell'adozione di programmi la cui aderenza a standard liberi
>e pubblici possa essere certificata.
Questa suppongo che stia lì per spiegare che cos'è un controllo di
conformità e a cosa serve.
>I corpi di standardizzazione dovranno porre particolare attenzione nel
>formalizzare i processi di certificazione in modo da ridurre il rischio
>di tecniche predatorie del tipo "abbraccia ed estendi", in cui gli
>standard vengono modificati per essere resi incompatibili con quelli
>originali, allo scopo di indurre l'utenza ad usare il prodotto che li
>implementa poiché è l'unico, godendo dell'esternalità positiva che
>deriva dalla sua progressiva diffusione favorita dall'esternalità positiva.
Va spiegato che cos'è un'esternalità positiva (io non lo so, ad
esempio). In ogni caso, suppongo che questa sia ancora un'introduzione,
che continua a spiegare cos'è la certificazione.
>Si osservi che allo stato dell'arte nessuno dei più noti gruppi di
>standardizzazione (IETF, W3C, OASIS) adotta politiche di gestione delle
>proprietà intellettuale che garantiscano esplicitamente tutte le
>suddette tutele.
Quali sono le suddette tutele?
>Si consiglia la lettura di due documenti introduttivi sulla materia,
>riportati nelle note [4]e [5] successive.
Non capisco. Se quelle di sopra dovevano essere introduzioni, manca il
seguito. Cosa si discetta a fare della certificazione?
>Copyright (C) 2004 Roberto Galoppini |<galoppini at acmesolutions.it>|.
>
>La copia letterale o la distribuzione di questa mail, il cui contenuto è
>provvisorio e soggetto a modifiche parziali o radicali, è permessa con
>qualsiasi mezzo, a condizione che questa nota sia riprodotta.
Questa nota va bene per lavori scritti da te, e di cui chiedi revisioni
e pareri in privato, personalmente. Non va bene per la bozza di un
documento che debba diventare collettivo. Qual è la finalità della
bozza che hai inviato in lista?
>[1] Indagine conoscitiva sul software a codice sorgente aperto nella
> Pubblicazione Amministrazione -- Rapporto della Commissione
>
>[2] The IDA Open Source Migration Guidelines
>
>[3] Free Software Definition
>
>[4] Open Standards - Principles and Practice - An Open Standard is
> more than just a specification - di Bruce Perens
> http://perens.com/OpenStandards/Definition.html
>
>[5] The Principles of Open Standards di Ken Krechmer
> http://www.csrstds.com/openstds.html
More information about the formati
mailing list