OPML

Z Wikipedii, wolnej encyklopedii

OPML (ang. Outline Processor Markup Language) – format XML, opracowany pierwotnie przez Radio Userland, format pliku dla hierarchicznych drzew danych, wykorzystywany obecnie powszechnie w czytnikach kanałów informacyjnych RSS. OPML pozwala zapisać listę wielu kanałów informacyjnych i przenieść je z jednego czytnika do drugiego. W internecie dostępne są także gotowe pliki OPML, które można wczytać do swojego czytnika.

Wersje OPML[edytuj | edytuj kod]

  • OPML 1.0
  • OPML 1.1
  • OPML 2.0

Podstawowe elementy[edytuj | edytuj kod]

<opml version="1.0">
Element główny, który musi zawierać atrybut oznaczający wersję oraz jeden element head i jeden element body.
<head>
Zawiera metadane. Może zawierać dowolne z opcjonalnych elementów: title, dateCreated, dateModified, ownerName, ownerEmail, expansionState, vertScrollState, windowTop, windowLeft, windowBottom, windowRight. Każdy element jest prostym elementem tekstowym. dateCreated i dateModified odpowiadają formatowi danych wyspecyfikowanemu w RFC 822 ↓. expansionState zawiera listę rozdzielanych przecinkami numerów wierszy, które powinny być rozwijane w trakcie wyświetlania. Elementy windowXXX definiują pozycję i wielkość okien wyświetlania. Procesor OPML może ignorować wszystkie podelementy <head>. Jeśli drzewo jest otwarte w innym drzewie, procesor musi zignorować elementy okien.
<body>
Zawiera treść drzewa. Musi zawierać jeden lub wiele elementów drzewa.
<outline>
Reprezentuje wiersz w drzewie. Może zawierać dowolną liczbę arbitralnych atrybutów. Typowe atrybuty obejmują text i type. Element drzewa może zawierać dowolną liczbę podelementów.

Wersja OPML 1.1 pojawiła się w grudniu 2001 roku i jest rozszerzeniem w stosunku do wersji OPML 1.0. Może posiadać dodatkowo opcjonalny element <cloud> w sekcji <head> dokumentu. W uproszczeniu element <cloud>...</cloud> został dodany, aby wysyłać XML-owe komunikaty w standardzie XML-RPC lub SOAP 1.1. Więcej informacji na temat OPML 1.1 można przeczytać po angielsku tu

Alternatywne specyfikacje[edytuj | edytuj kod]

Zaproponowano także alternatywne specyfikacje, jak OML (Outline Markup Language), która jest bardzo podobna do OPML, ale wymusza rozdział treści od prezentacji danych.

Linki zewnętrzne[edytuj | edytuj kod]