Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Persistent uniform resource locator
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Types== The most common types of PURLs are named to coincide with the HTTP response code that they return. Not all HTTP response codes have equivalent PURL types and not all PURL servers implement all PURL types. Some HTTP response codes (e.g. 401, Unauthorized) have clear meanings in the context of an HTTP conversation but do not apply to the process of HTTP redirection. Three additional types of PURLs ("chain", "partial' and "clone") are given mnemonic names related to their functions. {| class="wikitable" |+ PURL types ! Type ! PURL meaning ! HTTP meaning |- | 200 | Content created or aggregated | OK |- | 301 | Moved permanently to a target URL | Moved permanently |- | 302 | Simple redirection to a target URL | Found |- | Chain | Redirect to another PURL within the same server | Found |- | Partial | Redirect to a target URL with trailing path information appended | Found |- | 303 | See other URL | See Other |- | 307 | Temporary redirect to a target URL | Temporary Redirect |- | 404 | Temporarily gone | Not Found |- | 410 | Permanently gone | Gone |- | Clone | Copy the attributes of an existing PURL | N/A |} Most PURLs are so-called "simple PURLs", which provide a redirection to the desired resource. The HTTP status code, and hence of the PURL type, of a simple PURL is 302. The intent of a 302 PURL is to inform the Web client and [[End-user (computer science)#End user|end user]] that the PURL should always be used to address the requested resource, not the final URI resolved. This is to allow continued resolution of the resource if the PURL changes. Some operators prefer to use PURLs of type 301 (indicating that the final URI should be addressed in future requests). A PURL of type "chain" allows a PURL to redirect to another PURL in a manner identical to a 301 or 302 redirection, with the difference that a PURL server will handle the redirection internally for greater efficiency. This efficiency is useful when many redirections are possible; since some Web browsers will stop following redirections once a set limit is encountered (in an attempt to avoid loops). A PURL of type "200" is an "Active PURL", in which the PURL actively participates in the creation or aggregation of the metadata returned. An Active PURL includes some arbitrary computation to produce its output. Active PURLs have been implemented in PURLz 2.0 and The [[Callimachus Project]]. They may be used to gather runtime status reports, perform distributed queries or any other type of data collection where a persistent identifier is desired. Active PURLs act similar to a [[stored procedure]] in relational databases.<ref>{{Cite web |first=David|last=Hyland-Wood|url=http://espace.library.uq.edu.au/view/UQ:159852 |title=Metadata Foundations for the Life Cycle Management of Software Systems |date=2008-07-01 |access-date=2011-01-05 |publisher=School of Information Technology and Electrical Engineering, [[University of Queensland|The University of Queensland]]}}</ref> A PURL of type "303" is used to direct a Web client to a resource that provides additional information regarding the resource they requested, without returning the resource itself. This subtlety is useful when the HTTP URI requested is used as an identifier for a physical or conceptual object that cannot be represented as an information resource. PURLs of type 303 are used most often to redirect to metadata in a serialization format of the [[Resource Description Framework]] (RDF) and have relevance for [[Semantic Web]] and [[linked data]] content. This use of the 303 HTTP status code is conformant with the http-range-14 finding of the Technical Architecture Group of the [[World Wide Web Consortium]].<ref>See [http://www.w3.org/2001/tag/group/track/issues/14 http-range-14] and [http://www.w3.org/2001/tag/ Technical Architecture Group] for further information.</ref> A PURL of type "307" informs a user that the resource temporarily resides at a different URL from the norm. PURLs of types 404 and 410 note that the requested resource could not be found and suggests some information for why that was so. Support for the HTTP 307 (Temporary Redirect), 404 (Not Found) and 410 (Gone) response codes are provided for completeness. PURLs of types "404" and "410" are provided to assist administrators in marking PURLs that require repair. PURLs of these types allow for more efficient indications of resource identification failure when target resources have moved and a suitable replacement has not been identified. PURLs of type "clone" are used solely during PURL administration as a convenient method of copying an existing PURL record into a new PURL.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)