Permanent Identifiers for the Web
This repository holds the website source code for https://w3id.org/.
Content
- Purpose
- Management
- System Operations
- Creating a New Identifier
- Naming Policy
- W3ID Community
- Disclaimer
Purpose
The purpose of this website is to provide a secure, permanent URL re-direction service for Web applications. This service is run by the W3C Permanent Identifier Community Group.
Web applications that deal with Linked Data often need to specify and use URLs that are very stable. They utilize services such as this one to ensure that applications using their URLs will always be re-directed to a working website. This website operates like a switchboard, connecting requests for information with the true location of the information on the Web. The switchboard can be reconfigured to point to a new location if the old location stops working.
Management
There is a growing group of organizations in a consortium that have pledged responsibility to ensure the operation of this website. These organizations are:
- Digital Bazaar
- 3 Round Stones
- OpenLink Software
- Applied Testing and Technology
- Openspring
- Bosatsu Consulting
- SURROUND Australia
They are responsible for all administrative tasks associated with operating the service. The social contract between these organizations gives each of them full access to all information required to maintain and operate the website. The agreement is setup such that a number of these companies could fail, lose interest, or become unavailable for long periods of time without negatively affecting the operation of the site.
Joining the Management consortium
To join the management consortium, please make yourself known to the W3ID community via participation in the mailing list (see the W3ID Community section below) and then, if you are still keen to join, please submit an Issue to the GitHub Issue Tracker with the title Seeking to join the W3ID Consortium and include your details.
System Operations
This website operates in HTTPS-only mode to ensure end-to-end security. This means that it may be used for Linked Data applications that require high levels of security such as those found in the financial, medical, and public infrastructure sectors.
All identifiers associated with this website are intended to be around for as long as the Web is around. This means decades, if not centuries. If the final destination for popular identifiers used by this service fail in such a way as to be a major inconvenience or danger to the Web, the community will mirror the information for the popular identifier and setup a working redirect to restore service to the rest of the Web.
Creating a New Identifier
If you would like to add or update a permanent identifier of the form
https://w3id.org/...
, the preferred procedure is to perform the
following steps:
- Fork the Repository for this system on Github.
- Add or update a new redirect entry and commit your changes.
- Submit a Pull Request for your changes.
The maintainers of this system will then act on that Pull Request and merge it into this system's content. You will then be able to see your changes in the repository and via resolution of the identifier you created or edited.
If the terms Fork and Pull Request are new to you, you need to familiarize yourself with the Git version control system and GitHub, the platform used to host this system. Please see this documentation:
Suitable PR content
Please help out the maintainers of the service with the following in your Pull Requests:
- contact info in a README.md or .htaccess comment.
- See this example of a good README file: w3id.org/dggs/ README
- test your changes with a local checkout of the site.
- Squash multiple commits into one commit before a pull request
if appropriate.
- here is information on squashing commits: How to Squash Commits in Git
- use descriptive commit messages. In particular, include your project
name in the commit message. For those using the GitHub interface, please
modify the default "Create/Update/Delete
.htaccess
" message.
You can also send a request to add a redirect to the [email protected] mailing list. Make sure to include the URL that you want on w3id.org, the URL that you want to redirect to, and the HTTP code that you want to use when redirecting. An administrator will then create the redirect for you.
Link checking
A simple Travis-CI job
(see .travis.yml
) will extract all https://w3id.org/
URIs from */README.md
and check them with
linkchecker
.
In theory, this will catch two kinds of errors:
- Following a redirection gives a
404 Not Found
- An error in
.htaccess
causes a500 Server Error
.
Note that this only checks URIs that are listed in the README.md
files.
Travis might comment on your Pull Request if this test reveals an error. Check its output logs to ensure the errors are not caused by your modification.
Naming Policy
There is no official policy on identifier names. The current practice
is to claim a top-level directory name and add project specific second
level identifiers. For instance, https://w3id.org/PROJECT-ID/SUB-ID...
.
Shared top-levels are also available such as
https://w3id.org/people/PERSON-ID
. There is no official list or policy
for reserved identifiers. However, the administrators may deny requests
for identifiers that are too generic, could cause confusion, are
inappropriate or offensive, or otherwise may be needed for future
service expansion.
W3ID Community
If you wish to engage the community in discussion about this service for your Web application, please send an e-mail to the [email protected] mailing list.
Disclaimer
The letters 'w3' in the domain name for this site stand for "World Wide Web". Other than hosting the software for the Permanent Identifier Community Group, the "World Wide Web Consortium" (W3C) is not involved in the support or management of this website in any way.