Extension:Wikibase EDTF

The Wikibase EDTF extension adds support for the Extended Date/Time Format (EDTF) Specification to via a new data type.

This extension has been created and is maintained by [ https://professional.wiki/ Professional.Wiki ]. The [ https://mc.gouvernement.lu/en.html Luxembourg Ministry of Culture ] funded initial development.

You can find a demo of this extension at https://edtf.wikibase.wiki.

See the documentation for detailed installation and usage instructions or the demo video for a short introduction.

Extended Date/Time Format (EDTF)
EDTF is part of ISO 8601-2:2019, which defines various extensions to ISO 8601 standard, such as uncertainties. For the implementation of the project the development team followed the publicly available concise description of the standard on the specification site of the U.S. Library of Congress.

The implementation supports:
 * Dates
 * Date and time
 * Time Intervals
 * Letter-prefixed calendar year
 * Seasons
 * Qualification of a date
 * Unspecified digit(s) from the right
 * Negative calendar years
 * Exponential years
 * Significant digits
 * Sub-year groupings
 * Set representations
 * Qualifications
 * Unspecified Digits
 * Intervals

Structure
The extension is divided into two libraries. One Library is a standalone PHP EDTF interpretation and humanisation library. It can be found at ProfessionalWiki/EDTF. Note that the library can be used independently from this extension.

This library is wrapped by this extension that interacts with the library and provides further functionality, e.g. GUI and export to RDF.

Functionality
The extension provides the user with an open text field where they can put in any text. Upon saving this text is validated against proper formatting of EDTF. If the string is not properly formatted the string is not saved. The users will be presented with an error message.

When the string is a valid EDTF-date it is saved. In the GUI a 'humanised' string is generated that transforms the string to a short sentences that is human readable.


 * Example humanisation

becomes

One of these:
 * February 15th, 2021
 * February 16th, 2021
 * Winter (Southern Hemisphere) 2021
 * 11th of unknown month, 2020

Interface translations
The extension is being translated via translatewiki.net. Its project can be found here.