343 lines
18 KiB
TeX
343 lines
18 KiB
TeX
%% $Id$
|
||
|
||
% bon, au lieu d'utiliser \og et \fg qui sont visiblement un peu
|
||
% capricieux, j'ai utilisé « et » avec ~ pour faire des espaces
|
||
% insécables. Visiblement ça fait pareil, c'est plus lisible et c'est
|
||
% également plus facile à taper pour le Jeff.
|
||
|
||
\section{Formats ouverts}
|
||
\subsection{Format}
|
||
|
||
Un \emph{format de données} est un ensemble de règles servant à
|
||
représenter sous forme informatique, c'est-à-dire sous forme d'une
|
||
suite de nombres, un certain type de données, qu'il s'agisse de pages
|
||
de texte, d'images, de vidéos ou autres.
|
||
|
||
Posséder un format de données commun permet à des programmes distincts
|
||
de s'échanger des données, en passant par des fichiers respectant ce
|
||
format commun.
|
||
|
||
|
||
%% dhag: je laisse l'original pour l'instant; à supprimer dès qu'un
|
||
%% consensus sera atteint.
|
||
\begin{comment}
|
||
Selon Wikipédia:
|
||
\begin{quote}
|
||
|
||
«~Le format des données est la manière utilisée en informatique
|
||
pour représenter des données sous forme de nombres binaires. C'est
|
||
une convention (éventuellement normalisée) utilisée pour
|
||
représenter des données, soit des informations représentant un
|
||
texte, une page, une image, un son, un fichier exécutable,
|
||
etc. Lorsque ces données sont stockées dans un fichier, on parle
|
||
de format de fichier. Une telle convention permet d'échanger des
|
||
données entre divers programmes informatiques ou logiciels, soit
|
||
par une connexion directe soit par l'intermédiaire d'un
|
||
fichier. On appelle interopérabilité cette possibilité d'échanger
|
||
des données entre différents logiciels.~»~\cite{WIK_format}
|
||
|
||
\end{quote}
|
||
|
||
En d'autres mots, un format est une \emph{façon d'agencer
|
||
l'information} de manière spécifique, afin qu'un ou plusieurs
|
||
logiciels puissent lire cette information et la modifier.
|
||
|
||
\end{comment}
|
||
|
||
|
||
\subsection{Qu'est-ce qu'un format ouvert ?}
|
||
|
||
Un format \emph{ouvert} se distingue par le fait que ses
|
||
particularités sont entièrement documentées, disponibles au grand
|
||
public, et sans limitation d'utilisation.
|
||
|
||
La liberté qu'apportent les formats ouverts ne touche pas que les
|
||
programmeurs: elle permet à plus de logiciels d'être compatibles entre
|
||
eux, augmentant les possibilités de communication entre utilisateurs
|
||
de logiciels différents. Utiliser des formats ouverts évite également
|
||
qu'un utilisateur voie sa liberté de choix de logiciel réduite par des
|
||
craintes d'incompatibilité entre un nouveau programme et ses fichiers
|
||
existants.
|
||
|
||
Quiconque peut librement étudier le format, et bâtir des programmes
|
||
entièrement conformes, étant donné que toute l'information nécessaire
|
||
sur le format est disponible. Par exemple, une entreprise qui
|
||
choisirait d'intégrer le format {OASIS OpenDocument Text}
|
||
(\fileext{.odt}) à son logiciel de traitement de texte peut s'assurer
|
||
de le supporter au meilleur de ses capacités. Ceci \textbf{remet le
|
||
choix entre les mains du consommateur}. % Nous y reviendrons.
|
||
|
||
|
||
|
||
% Pourquoi c'est bien et pourquoi un format fermé c'est l'incarnation
|
||
% numérique du mal
|
||
%
|
||
% Définir format fermé ? -- Pascal
|
||
|
||
\subsection{Pourquoi utiliser les formats ouverts ?}
|
||
|
||
L'usage des formats propriétaires (ou «~fermés~») s'accompagne
|
||
généralement d'une volonté, de la part des concepteurs de logiciels
|
||
propriétaires, de se livrer à une «~guerre de secrets~»: il s'agit
|
||
d'assurer que seuls leurs logiciels seront capables de relire les
|
||
fichiers qu'ils ont créés, de manière à augmenter, pour le
|
||
consommateur, le coût de transition vers un logiciel concurrent.
|
||
|
||
Les formats ouverts empêchent évitent la création d'une clientèle
|
||
captive et doivent à la place encourager l'innovation, en replaçant la
|
||
concurrence sur la qualité des programmes eux-mêmes plutôt que sur
|
||
leur capacité à lire le format de données dominant.
|
||
|
||
|
||
\subsubsection{Choix contre \en{vendor lock-in}}
|
||
|
||
Lorsque des formats ouverts sont employés, les utilisateurs sont
|
||
libérés de l'obligation d'acheter les mêmes logiciels que ceux
|
||
qu'utilisent leurs collègues de travail, leurs professeurs ou leur
|
||
famille: ils peuvent communiquer tout aussi bien avec un autre
|
||
logiciel capable d'utiliser les mêmes formats.
|
||
Au contraire, chacun choisira le logiciel qui est le plus
|
||
\textbf{adapté à ses besoins}, en termes de coût, de fonctionnalités,
|
||
etc.
|
||
|
||
Les formats de fichiers utilisés par la suite \mso\ illustrent bien
|
||
une situation d'enfermement propriétaire. Les formats de traitement de
|
||
texte, de chiffrier et de présentation \fileext{.doc}, \fileext{.xls}
|
||
et \fileext{.ppt} sont propriétaires, ce qui empêche l'écriture de
|
||
programmes compatibles.
|
||
|
||
En pratique, il existe des suites bureautiques compatibles, mais elles
|
||
ont opéré par \emph{rétro-ingénierie}~\cite{WIK_retroing},
|
||
c'est-à-dire en essayant de «~deviner~» la structure du format par
|
||
essais et erreurs. C'est hélas un procédé lent, coûteux, et qui ne
|
||
peut assurer une compatibilité complète et correcte.
|
||
C'est néanmoins ce que sont forcés de faire la grande majorité des
|
||
logiciels, qu'ils soient libres ou propriétaires, pour pouvoir
|
||
manipuler des formats fermés.
|
||
|
||
Ainsi, une entreprise qui déterminerait qu'une alternative convient
|
||
mieux à ses besoins devrait faire face à la crainte d'être incapable
|
||
de lire tous les documents fournis par d'autres entreprises, voire ses
|
||
propres documents archivés.
|
||
|
||
% Largement étudié -> citation ?
|
||
|
||
Au contraire, si des formats ouverts étaient utilisés par tous, chacun
|
||
serait libre de choisir le logiciel qu'il préfère (\mso\ ou autre) à
|
||
cause de ses qualités propres, et non par peur de ne pouvoir lire des
|
||
formats secrets.
|
||
|
||
|
||
\subsubsection{Indépendance et longévité}
|
||
|
||
Comme n'importe qui est en mesure de concevoir des logiciels conformes
|
||
à un format ouvert, \textbf{l'utilisation de ce formats ouverts à des
|
||
fins d'archivage est un choix judicieux.} Il est implicitement garanti
|
||
qu'il y aura toujours des logiciels en mesure de le manipuler
|
||
adéquatement, même si le format a été lancé par une compagnie défunte.
|
||
|
||
% Ceci est valable est vrai à condition que le support sur lequel les
|
||
% archives sont mises soit toujours lisible.
|
||
%>>> je pense pas qu'on ait à mentionner ça, on parle de formats, pas
|
||
%>>> de support, c'est implicite et ça serait pareil pour un format
|
||
%>>> proprio
|
||
|
||
\subsubsection{Formats ouverts pour le secteur public}
|
||
|
||
\emph{Transparence} et \emph{intégrité} sont des mots qui devraient
|
||
fondamentalement être associés au secteur de l'éducation, et au
|
||
gouvernement en général. Transparence dans le sens où l'information
|
||
devrait être disponible au grand public sans discrimination ;
|
||
intégrité dans le sens où l'information devrait être accessible en
|
||
tout temps et à toute époque (tant que le support physique des
|
||
archives existe).
|
||
|
||
Parmi les nombreuses raisons pour lesquelles les formats ouverts
|
||
devraient être promus et utilisés par ces derniers, il y a:
|
||
|
||
\begin{itemize}
|
||
|
||
\item la nécessité des organisations gouvernementales d'être
|
||
indépendantes d'une compagnie particulière pour à la
|
||
création et à l'échange de documents;
|
||
|
||
\item l'assurance de pouvoir accéder aisément à ces données, même
|
||
dans 100~ans (c'est impossible à assurer avec un format
|
||
propriétaire, qui change régulièrement selon le bon vouloir
|
||
de son créateur);
|
||
|
||
\item garantir aux citoyens l'accès éternel à ces documents;
|
||
|
||
\item ne pas exercer de discrimination monétaire: par exemple,
|
||
publier des documents dans le format d'une suite bureautique
|
||
propriétaire restreint leur lecture aux personnes qui sont
|
||
en mesure de payer le logiciel correspondant.
|
||
|
||
\end{itemize}
|
||
|
||
|
||
|
||
|
||
% Exemples de formats pouvant être qualifiés comme « ouverts », site
|
||
% web les répertoriant ?
|
||
\subsection{Quelques exemples}
|
||
\label{sec:ofmtex}
|
||
|
||
Voici une liste non exhaustive de formats ouverts populaires.
|
||
\begin{description}
|
||
|
||
\item \soft{OASIS OpenDocument}~\cite{SPEC_opendocument}
|
||
(\fileext{.odt}, \fileext{.ods}, \fileext{.odp}, etc.) : formats
|
||
de documents de bureautique pouvant remplacer \fileext{.doc},
|
||
\fileext{.xls}, \fileext{.ppt}, etc. Ces formats sont supportés par
|
||
\soft{OpenOffice, Google Docs \& Spreadsheets, KWord, Abiword, Gnumeric,
|
||
ajaxWrite, Ichitaro, TextEdit, Zoho Writer}, etc.
|
||
|
||
\item \soft{OGG Vorbis}~\cite{SPEC_vorbis} (\fileext{.ogg}) :
|
||
format de compression audio libre de brevets. La compression audio
|
||
«~avec pertes~» permet d'éliminer une partie de l'information audio
|
||
que l'oreille humaine ne peut (généralement) pas entendre, afin
|
||
d'obtenir un échantillon nécessitant moins d'espace de stockage. OGG
|
||
Vorbis offre une qualité sonore supérieure au MP3 à des niveaux de
|
||
compression équivalents.
|
||
|
||
\item \soft{OGG Theora}~\cite{SPEC_theora} (\fileext{.ogg},
|
||
\fileext{.ogm}) : codec vidéo comparable au MPEG-4, mais libre de
|
||
brevets. Sert à compresser et décompresser les images d'une vidéo.
|
||
|
||
\item \soft{Free Lossless Audio Codec} (\fileext{.flac}) : codec audio
|
||
sans perte de qualité sonore permettant de stocker des enregistrements
|
||
en utilisant moins d'espace qu'un format non compressé. À savoir que
|
||
la compression \soft{FLAC} est «~sans pertes~», c'est-à-dire qu'il
|
||
n'y a aucune dégradation de la qualité sonore (comparativement aux
|
||
codecs «~avec pertes~» comme le \soft{OGG Vorbis}).
|
||
|
||
\item \soft{Scalable Vector Graphics}~\cite{SPEC_svg} (\fileext{.svg})
|
||
: un format d'images vectorielles, principalement utilisé par
|
||
\soft{Inkscape}, et supporté par les navigateurs Web récents, à
|
||
l'exception d'Internet Explorer 7 qui ne prend pas en charge SVG. Les
|
||
images vectorielles sont des images interprétées par des calculs
|
||
mathématiques. Elles possèdent l'avantage d'une qualité optimale, peu
|
||
importe la taille, mais peuvent nécessiter une puissance de calcul plus
|
||
grande dans le cas d'images photoréalistes.
|
||
|
||
\item \soft{Portable Network Graphics}~\cite{SPEC_png}
|
||
(\fileext{.png}) : un format d'images matricielles «~non destructeur~»
|
||
(sans perte de qualité). Supporte également les palettes de couleurs
|
||
fixes et la transparence avec canaux alphas. Contrairement à SVG, PNG,
|
||
étant un format d'images matricielles, est à taille fixe et dépend de
|
||
la résolution d'écran ou d'impression.
|
||
|
||
\item \soft{Portable Document Format}~\cite{SPEC_pdf} (\fileext{.pdf})
|
||
: format ayant l'avantage de préserver la mise en forme d'un document
|
||
(images, polices de texte, objets graphiques, espaces, etc), peu importe
|
||
l'application ou la plateforme utilisée pour le lire. Un désavantage
|
||
de cette préservation rigide de la mise en page est qu'il est difficile
|
||
pour l'utilisateur de modifier des documents PDF.
|
||
|
||
% note de jeff : wikipédia a des infos inquiétantes, mais c'est
|
||
% seulement mentionné sur la page francophone, et je sais plus si c'est
|
||
% d'actualité en 2007 alors qu'Adobe a annoncé qu'ils allaient se
|
||
% faire standardiser à fond par ISO ou un truc du genre.
|
||
|
||
%% PDF est un format ouvert, c’est-à-dire que son créateur Adobe
|
||
%% Systems autorise des programmes tiers à réutiliser son format.
|
||
%%
|
||
%% Il se réserve cependant la propriété de nombreux brevets
|
||
%% déposés, et donc le droit de demander des redevances. Il reste
|
||
%% très tolérant à ce sujet : en effet, les spécifications sont
|
||
%% publiques et utilisables librement (certains éléments sont à
|
||
%% disposition sur le site Adobe[1]) et gratuitement (à l'exception de
|
||
%% quelques très importantes sociétés commerciales auxquelles Adobe
|
||
%% demande alors une participation financière).
|
||
|
||
\end{description}
|
||
|
||
Voir aussi : % Sous forme de références ? -- Pascal
|
||
\begin{itemize}
|
||
\item \url{http://fr.wikipedia.org/wiki/Format_ouvert}
|
||
\item \url{http://www.openformats.org/fr6}
|
||
\item \url{http://fr.wikipedia.org/wiki/Alternatives_ouvertes_aux_formats_fermés}
|
||
\end{itemize}
|
||
|
||
|
||
% Je trouve cette section bien trop longue, elle s'adresse à des gens qui s'en foutent et n'en ont jamais entendu parler ! -- Pascal
|
||
|
||
%On pourrait aussi parler de XPS (XML Paper Specification) qui est encore une autre copie corrompue par Microsoft du vénérable format PDF.
|
||
%Sauf que j'ai l'impression que ça commencerait à être long. À voir. Dans ce cas faudrait renommer tout ça en "attention aux faux formats ouverts qui en sont pas vraiment, isatrap!" --Jeff
|
||
|
||
\subsection{Pourquoi pas «~XPS~» ou «~Office OpenXML~» de \mso{} 2007 ?}
|
||
|
||
Dans un contexte de formats ouverts, il faut toutefois se mettre en
|
||
garde contre les \textbf{«~faux~» formats ouverts}. \soft{XPS (XML
|
||
Paper Specification)} et \soft{Office OpenXML} sont des formats mis en
|
||
avant par Microsoft dans le but de raffermir son emprise sur les
|
||
formats que nous utilisons dans la vie courante.
|
||
|
||
Les raisons de fuir le nouveau format \soft{OOXML} (\soft{Office Open XML}, à ne pas confondre avec \soft{OpenDocument} ou \soft{OpenOffice}) sont nombreuses, au point où elles pourraient faire l'objet d'un argumentaire entier. Pour des raisons de simplicité et de concision, nous ne mentionnerons que quelques points saillants sous forme simplifiée, et nous nous attarderons uniquement sur le format \soft{OOXML}.
|
||
|
||
\subsubsection{\soft{OOXML} n'est pas réellement ouvert}
|
||
Contrairement au format OpenDocument (qui a été ratifié comme le
|
||
standard ISO/IEC 26300\string:2006), le format Office OpenXML semble
|
||
n'être qu'une tactique publicitaire de \ms{} pour tenter de conserver
|
||
ses contrats gouvernementaux en se proclamant «~ouvert~» tout en
|
||
s'assurant d'être les seuls à être réellement en mesure d'utiliser
|
||
le format à sa pleine capacité.
|
||
|
||
Notamment, de nombreuses «~fonctions~» ne sont que des références
|
||
non documentées vers des produits \ms{} antérieurs. Dans le quatrième
|
||
volume de la documentation d'OOXML~\cite{SPEC_ooxml}, on retrouve :
|
||
|
||
\begin{itemize}
|
||
\item autoSpaceLikeWord95 (spécifier les espaces «~comme Word 95~», section 2.15.3.6) ;
|
||
\item lineWrapLikeWord6 (retours à la ligne «~comme Word 6~», section 2.15.3.31) ;
|
||
\item useWord2002TableStyleRules (tableaux «~comme Word 2002~», section 2.15.3.6) ;
|
||
\item useWord97LineBreakRules («~retours à la ligne de Word 97~», section 2.15.3.6).
|
||
\end{itemize}
|
||
Ces fonctions ne font donc que dire au lecteur «~vous saurez ce que ça fait si vous détenez la clé du fonctionnement de \ms{} \soft{Word} 6/95/97/2002/etc.~». Évidemment, personne sauf \ms{} ne sait comment ça marche ! Ce genre de «~fausse documentation~» est un exemple flagrant du type d'«~ouverture~» dont \ms{} fait preuve.
|
||
|
||
Ainsi, certaines fonctionnalités, au lieu d'être expliquées comme les autres dans la documentation du format OOXML, ont une mention «~définie par l'application~», ce qui veut dire que leur fonctionnement est entièrement dépendant du logiciel qui lit le format. En d'autre mots, c'est comme dire à quelqu'un «~c'est très simple de fabriquer une station spatiale, regarde, tu prends une station, et de l'espace~»~!
|
||
|
||
%j'ai commenté le paragraphe ci-dessous, il est redondant et tout à fait incompréhensible pour les mortels.
|
||
%Par exemple, la section 6.1.2.19 du quatrième volume de la spécification du format \soft{OOXML} définit le fonctionnement de l'attribut «~equationxml~» des éléments «~shape~» en tant que «~le format du contenu de cet attribut est en fait défini par l'application~» : «~\en{actual format of the contents of this attribute are application-defined}~». \cite{EOOXML_objections}%Si vous n'avez pas compris le paragraphe précédent, rassurez-vous : c'est écrit aussi clairement dans la documentation OOXML!
|
||
|
||
|
||
\subsubsection{6039 pages}
|
||
La «~spécification~» (description du fonctionnement du format) d'\soft{OOXML} est répartie sur plusieurs livres, totalisant plus de six mille pages, ce qui est inutilement complexe pour un simple format de documents de bureautique.
|
||
|
||
Pour comparer, la spécification entière du format OASIS OpenDocument
|
||
(ISO/IEC 26300\string:2006) tient en 722 pages.
|
||
|
||
\begin{figure}
|
||
\begin{center}
|
||
\includegraphics[height=5cm]{images/word2007spec}
|
||
\caption{Pour implanter correctement la spécification Office Open XML dans son logiciel, il faut passer au travers de 6039 pages de documentation.}
|
||
\end{center}
|
||
\end{figure}
|
||
|
||
%\subsubsection{\soft{OOXML} réinvente la roue au lieu d'utiliser des standards existants}
|
||
|
||
% Typiquement, cette partie me semble inutile pour des néophytes. -- Pascal
|
||
\subsubsection{Autres critiques et références additionnelles}
|
||
\begin{itemize}
|
||
\item \soft{OOXML} a été conçu pour le passé, et non l'avenir~\cite{BRA07}
|
||
\item Les 6039 pages de la spécification sont impossibles à évaluer dans un délai raisonnable~\cite{GOO07}
|
||
\item Le format de dates décimal est utilisé et ignore le standard ISO~8601~\cite{SPO06}
|
||
\item Omissions et contradictions dans la spécification \soft{OOXML}~\cite{EOOXML_objections}
|
||
\item Format de numérotation ignorant les standards \soft{ISO 10646} et \soft{W3C XSLT}~\cite{EOOXML_objections}
|
||
\item Microsoft réinvente la roue au lieu d'utiliser des standards existants (comme MathML, SVG, les formats de numérotation ISO 10646 et les dates ISO 8601 mentionnés ci-haut)
|
||
\item Objections diverses au format \soft{OOXML}~\cite{EOOXML_objections}
|
||
\item When is a standard not a standard?~\cite{MAC07}
|
||
\item Critiques du format \soft{OOXML} sur Wikipédia~\cite{WIK_OOXMLcriticism}
|
||
\end{itemize}
|
||
|
||
|
||
|
||
\subsection{Propositions pour l'usage de formats ouverts}
|
||
%par pitié, quelqu'un, révisez que ce que je dis ci-dessous, j'ai l'impression de dire un gros tas de conneries !
|
||
\proposition{Que l'Université de Montréal et la FAÉCUM offrent en format ouvert tous les documents destinés au public, étudiants, professeurs et autres personnes affiliées à l'université. Dans les cas où des formats propriétaires doivent tout de même être distribués pour des raisons de transition, qu'elles s'assurent d'offrir également les documents en format ouvert (si applicable) sur un pied d'égalité.}
|
||
\proposition{Que l'Université de Montréal et la FAÉCUM informent les destinataires de la raison pour laquelle des formats ouverts sont utilisés pour la distribution de documents.}
|
||
\proposition{Que l'Université de Montréal et la FAÉCUM fassent la promotion de l'utilisation de logiciels favorisant les formats ouverts et l'interopérabilité.}
|
||
\proposition{Que l'Université de Montréal encourage les étudiants et professeurs à utiliser des formats ouverts lors de la réalisation de travaux.}
|
||
%autre chose ?
|