Difference between revisions of "Serialization"
Jump to navigation
Jump to search
Line 139: | Line 139: | ||
| | | | ||
| <code>2</code> | | <code>2</code> | ||
− | | <code>tabulator=yes | + | | <code>indentation=1, tabulator=yes</code> |
|- valign="top" | |- valign="top" | ||
| <code>wrap-prefix</code>,<br /><code>wrap-uri</code> | | <code>wrap-prefix</code>,<br /><code>wrap-uri</code> |
Revision as of 02:35, 6 February 2011
Serialization parameters define how XQuery items and XML nodes are textually output, i.e., serialized. They have been formalized in the W3C XQuery Serialization 3.0 document. In BaseX, they can be specified in several ways:
- by using the
-s
flag of the BaseX command-line clients, - by setting the SERIALIZER option before running a query,
- by setting the EXPORTER option before exporting a database,
- by setting them via the Output Parameter of the JAX-RX API,
- by including them in the prolog of the XQuery expression (since XQuery 3.0), or
- by specifying them in the XQuery function file:write().
Parameters
The following table gives a brief summary of all serialization parameters recognized by BaseX. For details, please refer to official specification.
Parameter | Description | Allowed | Default | Examples |
---|---|---|---|---|
version
|
Specifies the XML version. | 1.0,1.1
|
1.0
|
version=1.0
|
encoding
|
Encoding to be used for outputting the data. | UTF-8
|
encoding=US-ASCII
| |
indent
|
Adjusts whitespaces to make the output better readable. | yes,no
|
yes
|
indent=no
|
cdata-section-elements
|
List of elements to be output as CDATA, separated by whitespaces (e.g.: <text><![CDATA[ <> ]]></text> ).
|
cdata-section-elements=text
| ||
omit-xml-declaration
|
Omits the XML declaration, which is serialized before the actual query result. | yes,no
|
yes
|
omit-xml-declaration=no
|
standalone
|
Prints or omits the "standalone" attribute in the XML declaration, which states if the document has any external markup declarations. | yes,no,omit
|
omit
|
standalone=yes
|
doctype-system
|
Introduces the output with a document type declaration and the given system identifier. | doctype-system=entities.dtd
| ||
doctype-public
|
If doctype-system is specified, adds a public identifier.
|
doctype-public=-//W3C//DTD HTML 4.01//EN,
| ||
undeclare-prefixes
|
Undeclares prefixes in XML 1.1. | yes,no
|
no
|
undeclare-prefixes=yes
|
normalization-form
|
Specifies a normalization form. BaseX supports Form C (NFC ).
|
NFC,none
|
NFC
|
normalization-form=none
|
media-type
|
Specifies the media type. | application/xml
|
media-type=text/plain
| |
use-character-maps
|
Defines character mappings (not supported). | |||
byte-order-mark
|
Prints a byte-order-mark before starting serialization. | yes,no
|
no
|
byte-order-mark=yes
|
escape-uri-attributes
|
Escapes URI information in certain HTML attributes (e.g.: <a href="%C3%A4%C3%B6%C3%BC">äöü<a>) .
|
yes,no
|
no
|
escape-uri-attributes=yes, method=html
|
include-content-type
|
Includes a meta content-type element if the result is output as HTML (e.g.: <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head>).
|
yes,no
|
no
|
include-content-type=yes, method=html
|
BaseX provides some additional, implementation-defined serialization parameters (Version 6.5.1):
Parameter | Description | Allowed | Default | Examples |
---|---|---|---|---|
format
|
Turns output formatting on/off. This is helpful for suppressing unwanted indentation of plain text. | yes,no
|
yes
|
format=no
|
tabulator
|
Uses tab characters (\t ) for indenting elements.
|
no
|
tabulator=yes
| |
indentation
|
Specifies the number of indentation characters used for indenting elements. | 2
|
indentation=1, tabulator=yes
| |
wrap-prefix ,wrap-uri
|
Specifies a prefix and/or URI for wrapping the query results. | wrap-prefix=jax-rx, wrap-uri=http://jax-rx.sourceforge.net
|