Uniform Resource Identifiers (URIs) define a standard system for identifying resources on the Web, including HTML pages, XML documents, images, multimedia files, and more. Get to know how URIs, Uniform Resource Names (URNs), and URLs are related, discover the difference between absolute and relative URIs, and learn about Internationalized Resource Identifiers (IRIs), an enhanced version of URIs with better support for non-English speakers.
Uniform Resource Identifiers (URIs) are the standard mechanism for identifying resources on the Web, governed by RFC 3986: Uniform Resource Identifier Generic Syntax [IETF RFC]. A URI is an extension of the familiar URLs used in Web browsers and the like. All URLs are also URIs, but URIs also include URNs, governed by RFC 2141: Uniform Resource Names [IETF RFC]. URNs are a way to identify Web resources by name rather than location. URIs are generally used in XML core specifications as system identifiers, which specify a concrete resource, such as a file, referenced from an XML document. In XML, the concept of absolute and relative URIs is extremely important. If you imagine browsing the Web and that the current Web page is the starting point for a request for the next page, an absolute URI identifies the same new resource regardless of the starting point, while a relative URI identifies a new resource that depends on the starting point.
RFC 3987: Internationalized Resource Identifiers (IRIs) [IETF RFC] are just like URIs except that they can use the whole range of Unicode characters. URIs are limited to the ASCII subset of characters -- only 127 characters based on the needs of English-speaking users -- and this causes much difficulty for non-English users. An IRI has a standard encoding as a URI, in case you need to use it in a protocol (such as HTTP) that accepts only URIs.
- Dan Connolly gives a readable introduction to URIs in Untangle URIs, URLs, and URNs (developerWorks, June 2005).
- See the W3C's overview page on IRIs.
- Read about other XML standards: Index of XML standards.
- Participate in any of several XML-centered forums: XML zone discussion forums.
- Get involved in the developerWorks community: developerWorks blogs
- Find out how you can become an IBM-Certified Developer in XML and related technologies at IBM XML certification.
- See the developerWorks XML Zone for a wide range of technical articles and tips, tutorials, standards, and IBM Redbooks at XML technical library.
- Stay current with technology in these sessions: developerWorks technical events and webcasts.
- Build your next development project with trial software available for download directly from developerWorks: IBM trial software