Spécification OPML 1.0

Outline Processor Markup Language

Par Dave Winer pour UserLand. 9/15/00 DW


Traduction française par Denis Sureau pour Scriptol.fr de la Spécification en anglais.

Cette spécification décrit le format OPML 1.0 qui est maintenant remplacé par OPML 2.0, mais vous pouvez rencontrer le présent format dans des documents OPML.


Au sujet de ce document 

Ce document décrit un format pour stocker des plans en XML 1.0 nommé Outline Processor Markup Language ou OPML (en français Langage à Balises de Processeur de Plan).

Pour les besoins de ce document, un plan est une arborescence, où chaque noeud contient un ensemble d'attributs nommés avec pour valeurs des chaînes de caractères.

Historique 

L'outline (ou plan) a été un moyen courant pour organiser l'information sur ordinateurs depuis longtemps. Même si l'histoire des logiciels de plans n'est pas claire, une ébauche d'historique est possible.

Le premier logiciel de plan a été développé par Doug Engelbart, en tant que partie de son système Augment dans les années 60.

Living Videotext, en 1981-87, a développé plusieurs logiciels de plan pour ordinateurs personnels. Ils sont archivés sur un site web d'UserLand, outliners.

Frontier, dont la distribution a démarré en 1992, est construit sur la création de plan. Les éditeurs de texte, menus et scripts chez Frontier sont des logiciels de plan, de même que le navigateur de base de données à objets.

XML 1.0, le format sur lequel OPML est basé, est une recommandation du W3C.

Radio UserLand, dont la distribution a démarré en March 2001, est un logiciel de plan dont le format de fichier natif est en OPML.

OPML est utilisé pour les répertoires chez Manila.

Exemples 

Les plans peuvent servir aux spécifications, comptes-rendus légaux, planifications de produits, présentations, scénarios, répertoires, journaux personnels, groupes de discussion, systèmes de chat et romans.

Les logiciels de plan sont des programmes qui permettent de lire, éditer et réorganiser les plans.

A titre d'exemples de documents OPML: play list, spécification, présentation.

Buts du format OPML 

La finalité de ce format est de fournir un moyen d'échanger l'information entre logiciels de plans et les services Internet sur lesquels on peut naviguer et que l'on peut contrôler par un logiciel de plan.

L'idée de sa conception est d'avoir un un format simple et transparent, auto-documenté, extensible et lisible par l'homme qui soit capable de représenter un large panel de données, que l'on puisse parcourir et éditer. Dans les évolutions futures du format, on maintiendra ce but. Il devrait être possible pour quelqu'un qui ait un bagage technique minimal de comprendre parfaitement le format par la lecture rapide d'une seule page Web.

C'est un format ouvert, ce qui veut dire que les autres vendeurs de logiciels de plan et développeur de services peuvent librement utiliser le format afin d'être compatible avec Radio UserLand ou pour toute autre raison.

Qu'est-ce qu'un <opml>? 

<opml> est un élément XML, avec un seul attribut requis, version; un élément <head> et un élément <body>, tous deux étant requis.

L'attribut version est une chaîne de caractère de version de la forme x.y, où x et y sont des chaînes numériques.

Qu'est-ce qu'un <head>? 

Un <head> contient zéro ou plus éléments optionnels, décrits ci-dessous.

<title> est le titre du document.

<dateCreated> est une date-heure, indiquant quand le document a été créé.

<dateModified> est une date-heure, indiquant quand le document a été modifié pour la dernière fois.

<ownerName> est une chaîne de caractères, le propriétaire du document.

<ownerEmail> est une chaîne de caractères, l'adresse du propriétaire du document.

<expansionState> est une liste séparée par des virgules des numéros des lignes qui sont développées. Le numéro de ligne dans la liste vous dit quels titres développer. L'ordre est important. Pour chaque élément dans la liste, X, démarrant au premier sommet, on se déplace X fois et on développe. On repète pour chaque élément dans la liste.

<vertScrollState> est un nombre, disant quelle ligne du plan est affichée sur la première ligne de la fenêtre. Ce nombre est calculé en prenant en compte l'état de développement déjà appliqué.

<windowTop> est un nombre, la position du pixel du bord supérieur de la fenêtre.

<windowLeft> est un nombre, la position du pixel du bord gauche de la fenêtre.

<windowBottom> est un nombre, la position du pixel du bord inférieur de la fenêtre.

<windowRight> est un nombre, la position du pixel du bord droit de la fenêtre.

Notes sur <head> 

Tous les sous élément de <head> peuvent être ignorés par le processeur. Si un plan est ouvert à l'intérieur d'un autre plan, le processeur doit ignorer les éléments windowXxx, lesquels éléments contrôlent seulement la taille et la position des plans qui sont ouverts dans leurs propres fenêtres.

Toutes les date-heures se conforment à la Spécification Date et Heure de RFC 822.

Si vous chargez un document OPML dans votre poste client, vous pouvez choisir de respecter expansionState, ou non. Nous n'essayons en aucun cas de diriger ce que fait l'utilisateur. L'information expansionState est ici parce qu'on en a besoin dans certains contextes. Il est facile d'imaginer des contextes où il serait pertinent de l'ignorer complètement.

Qu'est-ce qu'un <body>? 

Un <body> contient un élément <outline> ou plus.

Qu'est-ce qu'un <outline>? 

Un <outline> est un élément XML, contenant éventuellement un ou plusieurs attributs, et contenant tout nombre de sous éléments <outline>.

Attributs communs 

text est la chaîne de caractères qui est affichée quand le plan est parcouru ou édité. Il n'y a pas de limite propre à la longueur de l'attribut text.

type est une chaîne de caractères, il dit comment les autres attributs du <outline> sont interprétés.

isComment est une chaîne de caractères, soit "true" ou "false" (vrai ou faux), indiquant si le plan est commenté ou non. Par convention si un plan est commenté, tous les plans subordonnés sont considérés également comme commentés. S'il n'est pas présent, la valeur est faux.

isBreakpoint est une chaîne de caractères, soit "true" ou "false", indiquant si un point d'arrêt est placé sur le plan. Cet attribut est surtout nécessaire pour les plans utilisés pour éditer des scripts que l'on execute. S'il n'est pas présent la valeur est faux.

Compatibilité 

Avant que le format 1.0 n'ait été figé, les éléments de premier niveau du format s'appellaient outlineDocument. Radio UserLand continue toujours de lire ces documents.

Limites 

Il n'y a pas de limites spécifiées pour les nombres des attributs qu'un élément <outline> peut avoir, ou le nombre d'éléments <outline> qu'il peut contenir.

Notes 

OPML est un format de fichier, non un protocole. Quand vous cliquez sur un lien dans un document HTML cela ne change en aucune façon le document stocké sur le serveur. OPML est utilisé de la même façon.

Wayne Steele a fait une DTD pour OPML 1.0. Merci.

En général, le type mime d'un document OPML, quand on y accède par HTTP, est text/xml. Cela permet aux navigateurs Web d'utiliser les formats XML conventionnels pour afficher un document OPML. Le serveur HTTP de Radio UserLand regarde l'en-tête Accept de la requête pour déterminer comment il traite un document OPML. Si l'en-tête Accept dit que le poste client comprend text/x-opml, on renvoie le text XML sans traitement. S'il n'est pas présent, on renvoie le texte du plan avec le type mime text/html.

Copyright et autorisation 

© Copyright 2000 UserLand Software, Inc. Tous Droits Réservés.

Ce document et ses traductions peuvent être copiées et fournies à autrui, et les oeuvres dérivées pour le commenter ou pour l'expliquer ou assister à sont implémentation peuvent être rédigées, copiées, publiées et distribuées, entièrement ou en partie, sans restriction d'aucune sorte, pourvu que la notice de copyright ci-dessus et ces paragraphes soient inclus dans ces copies ou oeuvres dérivées.

Ce document ne peut en aucune façon être modifié par la suppression de la notice de copyright ou les références à UserLand ou autres organisations. Par ailleurs, puisque ces restrictions de copyright s'appliquent à l'écrit de la spécification de OPML , aucune revendication de propriété n'est faite par UserLand quand au format qu'il décrit. N'importe qui peut, pour des motifs commerciaux ou non commerciaux, implémenter ce protocole sans droits de licence ou royalties dûs à UserLand. Les permissions limitées garanties ci-dessus sont perpétuelles et ne seront pas révoquées par UserLand ou ses successeurs ou représentants.

Le document et les informations ci-dessus sont fournies sur une base "tel quel" et USERLAND DECLINE TOUTES GARANTIES, EXPRESSES OU IMPLIQUEES, INCLUANT SANS S'Y LIMITER A TOUTE GARANTIE QUE L'UTILISATION DE L'INFORMATION CI-DESSUS N'ENFREINDRA AUCUN DROIT OU TOUTE GARANTIE IMPLIQUEE DE COMMERCIALISATION OU D'APPLICABILITE POUR UNE UTILISATION QUELCONQUE.


© Copyright 2000-2007, Scripting News, Inc.
OPML is a trademark of Scripting News, Inc.
Last update: Thursday, January 3, 2002 at 3:56:54 PM.


© Copyright 2007 Denis Sureau et Scriptol.fr pour la traduction française.
Licence de la traduction française: Les conditions d'utilisation de ce document sont celles du document original avec cette précision que la notice incluant le nom du traducteur, Denis Sureau, et l'URL du site où est hébergée la traduction, scriptol.fr, doit être conservé sur tout document dérivé du présent document.
Création de la traduction: 24 Mars 2007.