From AlphaWiki

Development: Persistent Urls (purls)

Introduction

Ever since the Alpha Cabal began taking over the maintenance of Alpha, the user community has benefitted from a variety of different internet sites that provided sites to download archived versions of the program, maintain the cvs repository, manage the "bugzilla" database of reported bugs, etc.

At present there is no single comprehensive web site devoted to the Alpha shareware software, nor are there any plans to create one. While several AlphaTcl projects are currently housed at [http://www.sourceforge.net/], even the specific Alpha urls associated with this site are subject to change.

Alpha "Purls"

Fortunately, the Online Computer Library Center has been supporting the "PURL" service for "persistent urls" which simply redirect a web user to a particular address. While the redirected url might change, the "purl" will remain constant. See [http://www.purl.org/] for more information.

The Alpha Cabal maintains a number of different purls that are used throughout AlphaTcl source files and documentation. For example, this purl

    [http://www.purl.org/net/Alpha/Keleher]

will be redirected to Pete Keleher's current web site for Alpha. Here are some additional "home page" purls:

    [http://www.purl.org/net/Alpha/Alpha8]
    [http://www.purl.org/net/Alpha/AlphaX]
    [http://www.purl.org/net/Alpha/AlphaTk]
    [http://www.purl.org/net/Alpha/AlphaTcl]
    [http://www.purl.org/net/Alpha/Bugzilla]

Purls should always be used whenever possible; you never know how long a distributed version of a given distribution will be out in the public, and there are few things more frustrating than a "help" hyperlink that points to a defunct web site. (Well, there are probably a lot of things that are quite a bit more frustrating than this, but it can be rather annoying.)

Purl Address Peculiarities

Note that purls are not case sensitive: all of these

    [http://www.purl.org/net/Alpha/Bugzilla]
    [http://WWW.PURL.ORG/NET/ALPHA/BUGZILLA]
    [http://www.purl.org/net/alpha/bugzilla]

will open the Alpha-Bugzilla web page. The top level domain ".org" can also be ".net" or ".com" although ".org" is generally used in AlphaTcl.

    [http://www.purl.org/net/Alpha/Bugzilla]
    [http://www.purl.com/net/Alpha/Bugzilla]
    [http://www.purl.net/net/Alpha/Bugzilla]

Useful Alpha Purls

Here are some other examples of purls that can have been created:

    [http://www.purl.org/net/Alpha/cvs]
    [http://www.purl.org/net/Alpha/faq]
    [http://www.purl.org/net/Alpha/MacCvsPro]
    [http://www.purl.org/net/Alpha/mail]
    [http://www.purl.org/net/Alpha/mail/dev-archives]
    [http://www.purl.org/net/Alpha/mail/user-archives]
    [http://www.purl.org/net/Alpha/TclTkDevelopers]
    [http://www.purl.org/net/Alpha/TclWiki]

    [http://www.purl.org/net/Alpha/wiki]

Tcl/Tk Releases

These pages provide information about installing Tcl/Tk:

    [http://www.purl.org/net/Alpha/TclTk/Aqua]

AlphaTcl Wiki Purls

Many Wiki pages have their own purls so that they can be easily referenced in menu commands or documentation:

    [http://www.purl.org/net/Alpha/WikiPages/changes]
    [http://www.purl.org/net/Alpha/WikiPages/fonts]
    [http://www.purl.org/net/Alpha/WikiPages/formatting]
    [http://www.purl.org/net/Alpha/WikiPages/mail-lists]
    [http://www.purl.org/net/Alpha/WikiPages/new-packages]
    [http://www.purl.org/net/Alpha/WikiPages/prefs-folder]
    [http://www.purl.org/net/Alpha/WikiPages/purls]
    [http://www.purl.org/net/Alpha/WikiPages/sandbox]
    [http://www.purl.org/net/Alpha/WikiPages/sandbox-edit]
    [http://www.purl.org/net/Alpha/WikiPages/to-do-lists]
    [http://www.purl.org/net/Alpha/WikiPages/typesetting-files]
    [http://www.purl.org/net/Alpha/WikiPages/wiki-menu-default-projects]

Alpha8/X/Tk Releases

We also have purls for Alpha8/X/Tk releases; these can be advertised on sites such as [http://www.versiontracker.com/] and [http://www.macupdate.com/], and if the host of the release archives changes we can just change the purl rather than updating the url that is listed at these sites.

   [http://www.purl.org/net/Alpha/releases/AlphaX/8.0.2-Panther.dmg]
    [http://www.purl.org/net/Alpha/releases/AlphaX/8.0.2-Tiger.dmg]

The ".sit" ".sea.bin" and ".dmg" extensions are not really necessary here, but they will indicate to the user what sort of archive will be downloaded.

Partial Redirecting Purls

While many purls are simple redirections of one url to another, a purl can also be used in partial redirection, to find a particular page in a web site. For example, we not only have

    [http://www.purl.org/net/Alpha/Bugzilla]

for the main Alpha-Bugzilla home page, but these will open specific bugs:

    [http://www.purl.org/net/Alpha/Bugzilla/show_bug.cgi?id=1000]
    [http://www.purl.org/net/Alpha/Bugzilla/show_bug.cgi?id=1974]

The same functionality works for AlphaTcl Wiki pages:

    [http://www.purl.org/net/Alpha/wiki/pmwiki.php/Main/WikiSandbox]

although this is less useful since the "pmwiki.php/Main/WikiSandbox" is quite specific to the "pmWiki" implementation; that is why we have created purls to specific wiki pages.

This feature is more useful for searching e-mail archives:

    [http://www.purl.org/net/Alpha/mail/dev-search/&words=test]
    [http://www.purl.org/net/Alpha/mail/user-search/&words=test]

Creating New Purls

Purls can only be created by members of the Alpha Cabal. If you know of a specific url that should have its own purl, please send a note to one of the AlphaTcl mailing lists:

    [http://www.purl.org/net/Alpha/mail]
Retrieved from http://alphatcl.sourceforge.net/wiki/pmwiki.php/Development/PersistentUrlsPurls
Page last modified on May 19, 2011, at 05:38 AM