Tag URI scheme

The tag URI scheme is a uniform resource identifier (URI) scheme for unique identifiers called tags, defined by RFC 4151 in October 2005.[1][2]

The RFC identifies four requirements for tags:[1]

* Identifiers are likely to be unique across space and time, and come from a practically inexhaustible supply.
* Identifiers are relatively convenient for humans to mint (create), read, type, remember etc.
* No central registration is necessary, at least for holders of domain names or email addresses; and there is negligible cost to mint each new identifier.
* The identifiers are independent of any particular resolution scheme.

Tags are used extensively in YAML.[3]

## Format

The general syntax of a tag URI is:[1]

"tag:" authorityName "," YYYY-MM-DD-date ":" specific [ "#" fragment ]

In this syntax, the `authorityName` is either a domain name or an email address, and the date is in the YYYY-MM-DD format, such as `2017-01-01`. Thus, a specific tag is tied to a specific domain name or email address at a specific point of time. It is required that the "tagging entity" creating the tag be in control of the specified domain or email address as of 00:00 UTC on the specified date. This requirement makes each tag globally and persistently unique. The authority name alone would not suffice for global uniqueness, since the ownership of domains and email addresses is subject to change.

The date used in a tag may be a past date, provided the tagging entity controlled the authority name on that past date. An entity which acquires control of an authority name immediately after a period when it was unassigned is allowed to mint tags as if it controlled the authority name during the unassigned period, provided the entity has evidence that the name was unassigned. The date used in a newly-minted tag may not be a date in the future.

The date may be abbreviated; the month and day default to `01`, but tags which have defaulted month and day values are reckoned as different from tags where the `01` value is specified. Thus,

* `tag:example.com,2004:1234`
* `tag:example.com,2004-01:1234`
* `tag:example.com,2004-01-01:1234`

are all different tags and might have different referents. They all should have been minted by the same tagging entity (specifically, whoever controlled example.com on January 1, 2004 00:00 UTC). If a different entity gained control of example.com at 00:05 UTC on that date, it would not be allowed to mint tags until the following date, and it would not ever be able to use the abbreviated forms, `2004` or `2004-01`.

Examples of tag URIs are:

* `tag:timothy@hpl.hp.com,2001:web/externalHome`
* `tag:sandro@w3.org,2004-05:Sandro`
* `tag:my-ids.com,2001-09-15:TimKindberg:presentations:UBath2004-05-19`
* `tag:blogger.com,1999:blog-555`
* `tag:yaml.org,2002:int#section1`

## See also

* Universally unique identifier (UUID)
* Uniform resource name (URN)

## References

1. ↑ 1.0 1.1 1.2 "The 'tag' URI Scheme". Internet Engineering Task Force. October 2005. http://tools.ietf.org/html/rfc4151. Retrieved 1 September 2015.
2. ↑ "Tag URI". http://www.taguri.org/. Retrieved 2007-11-02.
3. ↑ "YAML specification". http://www.yaml.org/spec/current.html. Retrieved 2007-11-02.

* v
* t
* e

Uniform Resource Identifier (URI) schemes

Official|

* about
* acct
* crid
* data
* file
* ftp
* geo
* gopher
* http
* https
* info
* ldap
* mailto
* nfs
* nntp
* sip / sips
* tag
* telnet
* urn
* view-source
* ws / wss
* xmpp

Unofficial|

* coffee
* ed2k
* feed
* finger
* irc / irc6 / ircs
* ldaps
* magnet
* rsync
* ymsgr

Protocol list

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Tag URI scheme. Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Tag_URI_scheme&oldid=213985"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template