XBUP - eXtensible Binary Universal Protocol - Documentation
[Up]

# Simple Text

This document is part of eXtensible Binary Universal Protocol project documentation. It contains description of format for storing simple unformatted text

## Description

Text is one of the very widely used data formats. Also sequence of characters in the ASCII and the other became the foundation of many advanced formats.

## Text File

As an initial example, consider a simple file with only one element in the box and through the transformation from an extended area. This will define the general head of any classical text file.

Expected structure of the document

Specification's Block

- Link to Catalog
- Multiline Text
  - Used Encoding
  - Language (non-mandatory)
  - Link to Extended Area

The following simplified version is used in a test version of xbteditor. It is more simple, because the proposal did not include the transformation blocks.

Text file format variant used in xbteditor-0.0.2

Specification's Block

- Used Encoding
  - Link to Extended Area

### Multiline Text

In the case that we intend to store multiple lines of text, we have to face following problem: In theory, it is an array of text items. Yet we would like to use the classic solution to tagging line breaks using CR + LF combination (depending on your operating system). This can be reasonably addressed by the transformation block, data-into-tree type, which converts the text to the required form.

The used variant encapsulates data using array-type block and also each single block of text is generated by the extraction of the data block.

Notes:

- It would be possible to merge blocks for multiline text and transform it into single one. Does such operation make sense and would it be appropriate at all? (What should be wrapped by the functional blocks)
- It might be appropriate to consider various kinds of encoding using similar approach like CSS
- For multiline text, should be given the encoding globally or for single lines?

Homepage: http://xbup.org
License: GNU Free Documentation License (FDL)