.. _escape-html-uri:
===============
escape-html-uri
===============
Escapes all characters except printable ASCII characters
Description
~~~~~~~~~~~
The fn:escape-html-uri function escapes all characters except printable ASCII
characters. HTML agents require that some URI characters be escaped with their
hexadecimal Unicode code point preceded by the % character. This includes
non-ASCII characters and some ASCII characters, namely control characters,
spaces, and several others.
This function replaces each of these special characters with an escape sequence
in the form %xx, where xx is two hexadecimal digits (in uppercase) that
represent the character in UTF-8. For example, édition.html is changed to
%C3%A9dition.html, with the é escaped as %C3%A9. Specifically, it escapes
everything except those characters whose decimal code point is between 32 and
126 inclusive. This allows these URIs to be appropriately handled by HTML agents
such as web browsers, for example in HTML href attributes.
.. list-table::
:widths: 40 60
:header-rows: 1
* - **Parameters**
- **Description**
* - uri:string()
-
Examples
~~~~~~~~
.. list-table::
:widths: 50 50
:header-rows: 1
* - **XPath**
- **Results**
* - escape-html-uri('http://datypic.com/édition 2.html')
- http://datypic.com/%C3%A9dition%202.html
* - escape-html-uri('http://datypic.com/a%20URI#frag')
- http://datypic.com/a%20URI#frag
* - escape-html-uri('http://datypic.com')
- http://datypic.com
See Also
~~~~~~~~
.. toctree::
:titlesonly:
:glob:
* :ref:`encode-for-uri`.
* :ref:`iri-to-uri`.