# Persistent Page Identifiers

> MediaWiki extension that allows the assignment of permanent identifiers to pages

**Wikidata**: [Q131285971](https://www.wikidata.org/wiki/Q131285971)  
**Source**: https://4ort.xyz/entity/persistent-page-identifiers

## Summary
Persistent Page Identifiers is a free, open-source MediaWiki extension developed by Professional Wiki that assigns permanent identifiers (UUIDs) to pages, ensuring stable references even if page titles change. It is distributed under the GNU General Public License (GPL) and requires MediaWiki 1.39+ and PHP 8.1+.

## Key Facts
- **Type**: MediaWiki extension for assigning permanent page identifiers (UUIDs)
- **License**: GNU General Public License, version 2.0 or later
- **Developed by**: Professional Wiki (Germany-based company founded in 2019)
- **First release**: Version 0.0.0 (2024-11-12)
- **Latest stable version**: 1.1.0 (2025-05-21)
- **Dependencies**: Requires MediaWiki 1.39+ and PHP 8.1+
- **Programming language**: PHP
- **Maintained by**: Professional Wiki (since 2024-11-12)
- **Source code**: Hosted on GitHub ([https://github.com/ProfessionalWiki/PersistentPageIdentifiers](https://github.com/ProfessionalWiki/PersistentPageIdentifiers))
- **Issue tracker**: [https://github.com/ProfessionalWiki/PersistentPageIdentifiers/issues](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/issues)
- **Quality assurance**: Uses GitHub Actions for continuous integration

## FAQs
### Q: What problem does Persistent Page Identifiers solve?
A: It provides stable, permanent identifiers (UUIDs) for MediaWiki pages, ensuring references remain valid even if page titles change. This is useful for citations, APIs, and cross-referencing.

### Q: Who developed Persistent Page Identifiers?
A: The extension was developed by Professional Wiki, a German-based company specializing in enterprise wiki software solutions.

### Q: What are the system requirements for Persistent Page Identifiers?
A: It requires MediaWiki 1.39+ and PHP 8.1+ to function properly.

### Q: How can I contribute to the development of Persistent Page Identifiers?
A: Contributions can be made via the GitHub repository ([https://github.com/ProfessionalWiki/PersistentPageIdentifiers](https://github.com/ProfessionalWiki/PersistentPageIdentifiers)), and translations are managed on TranslateWiki ([https://translatewiki.net](https://translatewiki.net)).

### Q: Is Persistent Page Identifiers free to use?
A: Yes, it is open-source software distributed under the GNU General Public License (GPL).

## Why It Matters
Persistent Page Identifiers addresses a critical need in MediaWiki environments where stable references are essential. Traditional page titles can change, breaking links and citations. By assigning Universally Unique Identifiers (UUIDs) to pages, this extension ensures that references remain persistent and reliable. This is particularly valuable for academic, corporate, and collaborative wikis where long-term document stability is required. The extension’s open-source nature and compatibility with modern MediaWiki versions make it a practical solution for users seeking robust page identification.

## Notable For
- **First release**: Version 0.0.0 (2024-11-12), marking the initial public availability of the extension.
- **Open-source**: Distributed under the GNU GPL, ensuring free access and modification rights.
- **UUID-based**: Uses Universally Unique Identifiers (UUIDs) for permanent page references.
- **GitHub integration**: Hosted on GitHub with continuous integration via GitHub Actions.
- **Multi-language support**: Available in multiple languages via TranslateWiki.

## Body
### Overview
Persistent Page Identifiers is a MediaWiki extension designed to assign permanent identifiers to pages, ensuring stable references even if page titles change. It is developed by Professional Wiki, a German-based company specializing in enterprise wiki software solutions.

### Development and Release
- **First version**: 0.0.0 (2024-11-12)
- **Latest stable version**: 1.1.0 (2025-05-21)
- **Version history**:
  - 0.0.0 (2024-11-12)
  - 1.0.0 (2024-11-20)
  - 1.0.1 (2024-12-20)
  - 1.1.0 (2025-05-21)

### Technical Specifications
- **Dependencies**:
  - MediaWiki 1.39+
  - PHP 8.1+
- **Programming language**: PHP
- **License**: GNU General Public License, version 2.0 or later
- **Maintained by**: Professional Wiki (since 2024-11-12)
- **Source code**: [https://github.com/ProfessionalWiki/PersistentPageIdentifiers](https://github.com/ProfessionalWiki/PersistentPageIdentifiers)
- **Issue tracker**: [https://github.com/ProfessionalWiki/PersistentPageIdentifiers/issues](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/issues)
- **Quality assurance**: Continuous integration via GitHub Actions

### Usage and Integration
- **Purpose**: Assigns UUIDs to MediaWiki pages for stable references.
- **Hooks used**:
  - `PageSaveComplete`
  - `PageMoveComplete`
  - `TitleMoveComplete`
  - `PageDeleteComplete`
  - `PageUndeleteComplete`
- **Translation**: Managed via TranslateWiki ([https://translatewiki.net](https://translatewiki.net)).

### Significance
Persistent Page Identifiers addresses the challenge of maintaining stable references in dynamic MediaWiki environments. By providing UUID-based identifiers, it ensures that citations, APIs, and cross-references remain valid even if page titles change. This is particularly valuable for academic, corporate, and collaborative wikis where long-term document stability is critical. The extension’s open-source nature and compatibility with modern MediaWiki versions make it a practical solution for users seeking robust page identification.

## References

1. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/tree/master?tab=readme-ov-file#persistent-page-identifiers)
2. [Source](https://professional.wiki/en/extension/persistent-page-identifiers)
3. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/0ca3a477cc4ccc02f151cec22ab77b1def57e3a8/COPYING)
4. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/commit/0ca3a477cc4ccc02f151cec22ab77b1def57e3a8)
5. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/0ca3a477cc4ccc02f151cec22ab77b1def57e3a8/README.md)
6. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/graphs/contributors)
7. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/0ca3a477cc4ccc02f151cec22ab77b1def57e3a8/composer.json#L18)
8. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/0ca3a477cc4ccc02f151cec22ab77b1def57e3a8/extension.json#L4)
9. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/1.0.0/README.md#version-100---2024-11-20)
10. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/1.0.1/README.md#version-101---2024-12-20)
11. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/releases/tag/1.1.0)
12. GitHub
13. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/1b4fe9417af3e6d2f8c30728b7f9540cf861fdab/README.md?plain=1#L66)
14. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/c243bc202e91fa6ef4561fc41404e28d6622545b/extension.json#L34C110-L34C120)
15. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/c243bc202e91fa6ef4561fc41404e28d6622545b/extension.json#L35C4-L35C30)
16. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/c243bc202e91fa6ef4561fc41404e28d6622545b/extension.json#L36C4-L36C23)
17. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/c243bc202e91fa6ef4561fc41404e28d6622545b/extension.json#L37C4-L37C20)
18. [Source](https://github.com/ProfessionalWiki/PersistentPageIdentifiers/blob/c243bc202e91fa6ef4561fc41404e28d6622545b/extension.json#L38C4-L38C21)