Changes

Jump to navigation Jump to search
725 bytes added ,  09:51, 25 June 2020
* Only the first 8 bits of the supplied integers will be considered.
* Conversion of byte sequences is very efficient, as items of binary type are internally represented as byte arrays.
|-
| '''Examples'''
|
* <code>convert:integers-to-base64(Q{java:java.lang.String}get-bytes('abc'))</code> converts a byte sequence to a {{Code|xs:base64Binary}} item.
|}
|-
| '''Summary'''
|Encodes the specified {{Code|$key}} (with the optional {{Code|$lax}} conversion method) to a valid NCName representation, which can be used to create an element node:* An empty string is converted to a single underscore ({{Code|_}}).* Existing underscores are rewritten to two underscores ({{Code|__}}).* Characters that are no valid NCName characters are rewritten to an underscore and the character’s four-digit Unicode. For example, the exclamation mark {{Code|?}} is transformed to {{Code|_003f}}.* If lax conversion is chosen, invalid characters are replaced with underscores or (when invalid as first character of an element name) prefixed with an underscore.<br />The resulting string may be better readable, but it cannot necessarily be converted back to the original form.This encoding is employed by the same that is used {{Code|direct}} conversion format in the [[JSON Module]] and the [[CSV Module]] and the {{Code|direct}} conversion format.
|-
| '''Examples'''
|
* <code>element { convert:encode-key("!") } { 'text' }</code> creates a new element with an encoded name key: <code><_0021/></code>.
|}
|-
| '''Summary'''
|Decodes the specified {{Code|$key}} (with the optional {{Code|$lax}} conversion method) to the original string representation.<br />Keys supplied to this function are usually element names from documents that have been created with the [[JSON Module]] and the or [[CSV Module]] and the {{Code|direct}} conversion format.
|-
| '''Examples'''
|
* <code>convert:decode-key('name(<_0021'/>))</code> yields <code>!</code>.
* <code>json:doc("doc.json")//* ! convert:decode-key(name())</code> yields the original string representation of all names of a JSON document.
|-
| '''Errors'''
|{{Error|key|#Errors}} The specified key cannot be decoded to its original string representation.
|}
;Version 9.4
* Added: [[#convert:name-toencode-key|convert:name-toencode-key]], [[#convert:decode-key-to-name|convert:decode-key-to-name]].
;Version 9.0
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu