URL Homonym Problem: A Topic Map Solution

You may have heard about the URL homonym problem.

The term “URL” is spelled and pronounced the same way but can mean:

URL as defined by Uniform Resource Identifier (URI): Generic Syntax, RFC 3986, or

URL as defined by HTML5 (Draft, December 17, 2012)

To refresh your memory:

URL in RFC 3986 is defined as:

The term “Uniform Resource Locator” (URL) refers to the subset of URIs that, in addition to identifying a resource, provide a means of locating the resource by describing its primary access mechanism (e.g., its network “location”).

A URL in RFC 3986 is a subtype of URI.

URL in HTML5 is defined as:

A URL is a string used to identify a resource.

A URL in HTML5 is a supertype of URI and IRI.

I would say that going from being a subtype of URI to being a supertype of URI + IRI is a “…willful violation of RFC 3986….”

In LTM syntax, I would solve the URL homonym problem as follows:

#VERSION "1.3"

/* association types */

[supertype-subtype = "Supertype-subtype";

[supertype = "Supertype";

[subtype = "Subtype";

/* topics */

[uri = "URI";

[url-rfc3986 = "URL";;"URL-RFC 3986"

supertype-subtype(uri : supertype,url-rfc3986 : subtype)

[url-html5 = "URL";;"URL-HTML5"

supertype-subtype(url-html5 : supertype,uri : subtype)

A solution to the URL homonym problem only in the sense of distinguishing which definition is in use.

2 Responses to “URL Homonym Problem: A Topic Map Solution”

  1. […] Another example? HTML5 violates prior definitions of URL in order to widen the reach of HTML5. (URL Homonym Problem: A Topic Map Solution) […]

  2. […] knows what definition “Linked Data” may have in some future vision of the W3C? (URL Homonym Problem: A Topic Map Solution, a tale of how the W3C decided to redefine […]