URI format

Preface – used terms

GlobalName

A globally unique identifier derived from an Internet domain. GlobalNames are used as identifiers of browsers, its engines and possibly other objects.

If you own e.g. example.com, you can define GlobalNames in this context. GlobalNames look like sub-domains – e.g. my-browser.example.com or super-engine.web-division.example.com.

Definition of GlobalNames in this namespace is completely up to the domain owner – the names do not have to be registered anywhere and the corresponding subdomains even do not have to exist in DNS. As the base domain for GlobalNames should be used such one, which will be in long term maintained and owned by the same person/subject, which owns the named object.

In place of a GlobalName can be used also a ShortName, if defined.

ShortName

Works as an alias for a GlobalName. ShortNames are defined only for some GlobalNames, typically the frequently used ones. Defined ShortNames are listed in this specification.

TheName

An umbrella term for GlobalNames and ShortNames.

VersionString

A string that specifies version of an object (browser, engine etc.). Consists of one or more parts separated by a single dot. Most significant part is the left one – this is usually major version. Examples:

  • 26
  • 1.2.3
  • 3.2

Protocol part

There are two possible protocols to be used in User-Agent URI:

  • user-agent://
  • https:// or http://

The user-agent:// pseudo protocol means that all information is contained in the URI itself – the URI is only a global identifier and a data container – not a link to any other source.

The URI with https:// (or http://) protocol can carry the same information but beside that it works also as a link to the XML document which contains more details about the user agent.

Domain part – the browser name

The domain part of the URI carry the GlobalName (or its ShortName) which identifies the browser. Example:

user-agent://cool-browser.example.com/?some=other&parts=etc

Globally identifies the browser with GlobalName cool-browser.example.com.

Parameters

In the URI following codes can be used to specify particular attributes:

code name type description
b browser name TheName name of the browser; if this parameter is missing, the value is taken from the domain part (see above)
bv browser version VersionString version of the browser
e browser's engine TheName name of the engine used in this browser
ev engine version VersionString version of the engine
d device class enum class of the device, possible values are:
  • d – desktop computer
  • l – laptop computer (notebook)
  • s – server computer
  • p – mobile phone
  • t – mobile tablet
  • k – Internet kiosk
x X-resolution integer horizontal resolution of the screen in pixels
y Y-resolution integer vertical resolution of the screen in pixels
dpi DPI integer number of dots/pixels of the screen (display) where the web page is viewed

Browser name

Following ShortNames of browsers are defined.

ShortName GlobalName description
ff firefox.ua.mozilla.org Mozilla Firefox

User-Agent URI, open standard and free software © 2014-2022 GlobalCode