# XBUP - Dokumentace: Prostý text

### Úvod

Tento dokument je součástí dokumentace projektu eXtensible Binary Universal Protocol. Obsahuje popis popis aktuálního stavu, dalšího vývoje a směřování projektu.

O úroveň výše

### Obsah

1. Popis
2. Textový soubor
2.1. Víceřádkový text

### 1. Popis

Text je jeden z nejdéle používaných datových formátů. Posloupnost znaků v kódování ASCII a dalších se staly základem mnoha i pokročilejších formátů.

### 2. Textový soubor

Jako výchozí příklad uvažujme prostý soubor s jedinou položkou textového pole a to pomocí transformace z rozšířené oblasti. To umožní definovat obecnou hlavičku pro libovolný klasický textový soubor.

Předpokládaná struktura dokumentu

Specifikační blok
- Odkaz do katalogu
- Víceřádkový text
- Použité kódování
- Jazyk (nepovinné)
- Odkaz na rozšířenou část

Následující zjednodušená varianta je použita v testovací verzi programu xbteditor. Je jednodušší, protože návrh nezahrnoval transformační bloky.

Varianta textového souboru pro program xbteditor-0.0.2

Specifikační blok
- Použité kódování
- - Odkaz na rozšířenou oblast

### 2.1. Víceřádkový text

V případě, že máme v úmyslu ukládat více řádků textu, narážíme na problém. Z abstraktního hlediska se jedná o pole jednotlivých textových položek. Přesto bychom rádi použili klasické řešení se značkováním zalomení řádků kombinací CR+LF (záleží na operačním systému). Toto je možné rozumně řešit pomocí transformačního bloku, typu data na strom, který text převádí na potřebný tvar.

Výše použitá varianta obaluje data jak typovým blokem pro pole, tak jednotlivé bloky textu generuje extrakcí z datového bloku.

Poznámky:

- Šlo by sloučit bloky pro víceřádkový text a transformaci do jediného a měla by tato operace smysl a byla by vůbec vhodná? (Co třeba funkcionální obalení blokem)
- Pro kódování bude stát za úvahu realizace varianty s obdobou CSS
- U víceřádkového textu dávat kódování globálně nebo pro jednolivé řádky?

Homepage: http://xbup.sf.net
License: GNU Free Documentation License (FDL)
Latest update: 2006-11-11