Portatext
Portatext soll es erlauben, Texte genau und doch unabhängig von einer bestimmten Darstellung zu notieren. Diese Texte können alsdann in speziellere Darstellungen gewandelt werden. Zunächst werden insbesondere zwei Zielformate angestrebt: Textdateien und HTML.
Eine Information könnte statt dessen auch in diesen beiden Formaten dargestellt werden, indem ein HTML -Text in eine Textdatei gewandelt wird. Portatext bietet demgegenüber den Vorteil von mehr Kontrollmöglichkeiten bei der Erstellung der Textdatei und einer detaillierteren Möglichkeit der Auszeichnung bei Erstellung der Portatext -Quelldatei.
Richtlinien
Ein Portatext -Dokument soll von möglichen Darstellungen in anderen Sprachen weitgehend entkoppelt werden. Deshalb enthält es keine Spezifikationen zur Darstellung als Textdatei oder als HTML -Datei.
Ein Anwender, der beispielsweise ein HTML -Dokument aus einem Portatext -Dokument erzeugt, möchte aber möglicherweise festlegen, ob die Seite von Suchsystemen gespeichert werden soll (Angabe zu “robots-archive ”). Diese Angabe sollte aber nicht im Portatext -Dokument stehen, da sie nur speziell auf HTML -Dokumente bezogen ist, aber für Textdateien derzeit bedeutungslos wäre.
Deswegen kann bei der Wandlung von Portatext in ein anderes Format im allgemeinen eine weitere Datei herangezogen werden, die solche Festlegungen enthält, die Richtliniendatei. Diese Datei enthält die Richtlinien zur Seitenspeicherung genauso wie andere Spezifikationen, beispielsweise zur Umwandlung nach HTML. Damit kann ein Anwender einmal eine Richtliniendatei erstellen und dann auch für mehrere Portatext -Dokument dieselbe Richtliniendatei verwenden, wenn diese sich hinsichtlich der Richtlinien nicht unterscheiden. Eine Richtliniendatei für die Umwandlung in eine Textdatei könnte wiederum beispielsweise eine Zeilenbreite enthalten (z.B. „65 Zeichen“), wie sie für HTML -Dokumente keinen Sinn ergeben würde.
- Von Portatext nach HTML
_____ _____
.-' '-. .-' '-.
.' '. .' '.
/ \ / \
; Portatext- ; ; HTML- ;
| Dokument | | Richtlinie |
; ; ; ;
\ / \ /
'. .' '. .'
'-._____.-' '-._____.-'
| |
'-----------. .-----------'
| |
| |
V V
.-------------------.
| |
| HTML-Darsteller |
| |
'-------------------'
|
__V__
.-' '-.
.' '.
/ \
; HTML- ;
| Dokument- |
; beschreibung ;
\ /
'. .'
'-._____.-'- Von Portatext in Textdatei
_____ _____
.-' '-. .-' '-.
.' '. .' '.
/ \ / \
; Portatext- ; ; Text- ;
| Dokument | | Richtlinie |
; ; ; ;
\ / \ /
'. .' '. .'
'-._____.-' '-._____.-'
| |
'-----------. .-----------'
| |
| |
V V
.-------------------.
| |
| Textdarsteller |
| |
'-------------------'
|
__V__
.-' '-.
.' '.
/ \
; Text- ;
| Dokument- |
; beschreibung ;
\ /
'. .'
'-._____.-'
Die derzeitige Implementation von Portatext erzeugt allerdings zunächst nicht direkt HTML -Dokumente und Textdokumente, sondern verallgemeinerte HTML -Dokumentbeschreibungen und Textdateibeschreibungen, die dann in einem weiteren Schritt in ein XHTML-1.1 -Dokument oder eine Textdatei gewandelt werden. Die HTML -Dokumentbeschreibung ist noch so universell, daß sie auch in andere HTML - oder XHTML -Versionen gewandelt werden kann. Die Textdateibeschreibung wird sich zur Entlastung des Textdarstellungsvorgang von Formatierungsaufgaben noch einer speziellen ROFF -artigen Textdateiformatierungssprache bedienen.
Die Sprache
Da die Eingabesprache derzeit noch laufend verändert wird, wäre eine Dokumentation zum jetzigen Zeitpunkt verfrüht. Die folgende Quelldatei zeigt die Eingabe einer Portatext -Implementation, gefolgt von der von dieser Implementation erzeugten XHTML -Darstellung.
- source.uno
< !portatext &document
id=722062
name=[Portatext]
title=[Portatext]
< &par [This page was written using Portatext and then ]
[converted to XHTML 1.1 using Java 1.5]>
< §ion
heading = < &par [Dies ist die Überschrift für diesen Abschnitt] >
< &script < &par [This is contents of this section.] >>>>- hypertext-policy.uno
< !portatext:hypertext &policy
robots = noarchive >- output.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Portatext</title>
<meta
name="robots"
content="noarchive" /></head>
<body>
<h1
class="syxheading0">Portatext</h1>
<p>This page was written using Portatext and then converted to XHTML 1.1 using Java 1.5</p>
<div
class="syxsection">
<h2
class="syxheading1">Dies ist die Überschrift für diesen Abschnitt</h2>
<p>This is contents of this section.</p></div></body>
</html>