Chứa thông tin về cách lấy tài nguyên từ vị trí của nó. Ví dụ:
http://example.com/mypage.html
ftp://example.com/download.zip
mailto:user@example.com
file:///home/user/file.txt
tel:1-888-555-5555
http://example.com/resource?foo=bar#fragment
/other/link.html
(Một URL tương đối, chỉ hữu ích trong ngữ cảnh của một URL khác)
Các URL luôn bắt đầu bằng một giao thức ( http
) và thường chứa thông tin như tên máy chủ mạng ( example.com
) và thường là đường dẫn tài liệu ( /foo/mypage.html
). URL có thể có các tham số truy vấn và định danh phân đoạn.
Xác định một tài nguyên bằng một tên duy nhất và liên tục. Nó thường bắt đầu bằng tiền tố urn:
Ví dụ:
urn:isbn:0451450523
để xác định một cuốn sách bằng số ISBN của nó.
urn:uuid:6e8bc430-9c3a-11d9-9669-0800200c9a66
một định danh duy nhất trên toàn cầu
urn:publishing:book
- Một không gian tên XML xác định tài liệu là một loại sách.
URN có thể xác định ý tưởng và khái niệm. Họ không bị hạn chế để xác định tài liệu. Khi URN đại diện cho một tài liệu, nó có thể được dịch thành một URL bởi một "bộ giải". Tài liệu sau đó có thể được tải xuống từ URL.
Các URI bao gồm URL, URN và các cách khác để xác định tài nguyên.
Một ví dụ về URI không phải là URL cũng không phải URN sẽ là URI dữ liệu, chẳng hạn như data:,Hello%20World
. Nó không phải là URL cũng không phải là URN vì URI chứa dữ liệu. Nó không đặt tên cho nó, cũng không cho bạn biết cách xác định vị trí của nó qua mạng.
Ngoài ra còn có các trích dẫn tài nguyên thống nhất (URC) trỏ đến dữ liệu meta về một tài liệu thay vì chính tài liệu đó. Một ví dụ về URC sẽ là một định danh để xem mã nguồn của trang web : view-source:http://example.com/
. URC là một loại URI khác không phải là URL cũng không phải URN.
Các câu hỏi thường gặp
Tôi đã nghe nói rằng tôi không nên nói URL nữa, tại sao?
Thông số W3 cho HTML nói rằng href
thẻ neo có thể chứa URI, không chỉ là URL. Bạn sẽ có thể đặt URN như <a href="urn:isbn:0451450523">
. Trình duyệt của bạn sau đó sẽ giải quyết URN đó thành một URL và tải xuống sách cho bạn.
Có trình duyệt nào thực sự biết cách tìm nạp tài liệu bằng URN không?
Không phải tôi biết, nhưng trình duyệt web hiện đại thực hiện lược đồ URI dữ liệu.
Sự khác biệt giữa URL và URI có liên quan gì đến việc nó tương đối hay tuyệt đối không?
Không. Cả URL tương đối và tuyệt đối đều là URL (và URI.)
Sự khác biệt giữa URL và URI có liên quan gì đến việc nó có tham số truy vấn không?
Không. Cả hai URL có và không có tham số truy vấn đều là URL (và URI.)
Sự khác biệt giữa URL và URI có liên quan gì đến việc liệu nó có một mã định danh phân đoạn không?
Không. Cả hai URL có và không có số nhận dạng phân đoạn là URL (và URI.)
Nhưng không phải W3C bây giờ nói rằng URL và URI là giống nhau sao?
Đúng. W3C nhận ra rằng có rất nhiều nhầm lẫn về điều này. Họ đã ban hành một tài liệu làm rõ URI nói rằng bây giờ bạn có thể sử dụng các thuật ngữ URL và URI thay thế cho nhau (có nghĩa là URI). Không còn hữu ích khi phân đoạn nghiêm ngặt các URI thành các loại khác nhau như URL, URN và URC.
URI có thể vừa là URL vừa là URN không?
Định nghĩa của URN bây giờ lỏng lẻo hơn những gì tôi đã nêu ở trên. Các RFC mới nhất về URI nói rằng bây giờ bất kỳ URI có thể là một URN (bất kể nó bắt đầu với urn:
) miễn là nó có "tính chất của một tên." Đó là: Nó là duy nhất trên toàn cầu và tồn tại ngay cả khi tài nguyên không còn tồn tại hoặc không có sẵn. Một ví dụ: Các URI được sử dụng trong các loại tài liệu HTML như http://www.w3.org/TR/html4/strict.dtd
. URI đó sẽ tiếp tục đặt tên cho loại tài liệu chuyển tiếp HTML4 ngay cả khi trang trên trang web w3.org bị xóa.