Extension:CommonsMetadata

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:CommonsMetadata and the translation is 14% complete.
Outdated translations are marked like this.
Other languages:
English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎português do Brasil • ‎sicilianu • ‎தமிழ் • ‎中文 • ‎日本語
Manuel des extensions MediaWiki
OOjs UI icon advanced.svg
CommonsMetadata
État de la version : stable
Implémentation API
Description Tentatives d'extraction de métadonnées à partir de pages communes
Auteur(s) Brian Wolff (bawolffdiscussion)
Politique de compatibilité Snapshots releases along with MediaWiki. Master is not backwards compatible.
MediaWiki 1.25+
PHP 5.4+
Modifications de
la base de données
Non
Licence Licence publique générale GNU v2.0 ou supérieur
Téléchargement
  • $wgCommonsMetadataForceRecalculate
  • $wgCommonsMetadataPublicDomainPageUrl
  • $wgCommonsMetadataSetTrackingCategories
Traduire l’extension CommonsMetadata sur translatewiki.net

Vérifier la matrice des utilisations et des versions.

Problèmes Tâches ouvertes · Signaler un bogue

L'extension CommonsMetadata est une tentative d'extraction de métadonnées à partir des pages Wikimedia Commons, mais est également disponible dans tous les autres projets Wikimedia. Il ajoute des informations supplémentaires à l'API imageinfo, en fonction des modèles et des catégories dans la description de l'image. Il est utilisé par un certain nombre d'extensions / outils (tels que MediaViewer, VisualEditor, MobileFrontend, Mobile-Content-Service (MCS)) pour fournir de meilleures visionneuses ou boîtes de dialogue de sélection d'images. It adds some extra information to the imageinfo API, based on templates and categories in the image description. It is used by a number of extensions / tools (such as Extension:MultimediaViewer/fr , Extension:VisualEditor , Extension:MobileFrontend , Mobile-Content-Service (MCS)) to provide better lightboxes or image selection dialogs.

The extension in its current form is intended to be a temporary solution, eventually replaced by Wikidata on Commons.

Voir https://lists.wikimedia.org/pipermail/wikitech-l/2013-August/071593.html

The assumptions of this extension are the following.

  • At some point in the future, wikidata will take over handling metadata at commons. In order to avoid disruptive changes, which will soon need to be changed again, the extension should work with commons metadata as it currently is (so not introducing new parser functions). Hence screen scraping.
  • The content of many of the fields on a commons description page include rich formatting (In particular: Links, italics, bold. In some cases more complex things like embedded images)
    • As a result, extension outputs parsed html (wikitext sucks, plain text doesn't capture the data)
    • Futhermore, the data tends to be formatted for human display, rather than (for example) machine formatted dates. When the date field says something like "circa 1600s", its hard to convert that to a precise date (otoh, many examples can be).
    • To carry that forward, also apply formatting to exif metadata, which is controlled on wiki (For example, commons links the camera name to a wikipedia article)
  • If we can't extract info from the description page, but the file has the author tagged in exif/XMP/iptc metadata, we should use that as a fallback.
  • Ideally such a system would be as commons-inspecific as possible, with the commons and non-commons part separated.
  • Commons description pages have multilingual descriptions. Lots of users probably just want one language.
    • In this implementation, it applies per language conventions to dates and things. Additionally for explicitly multi-lingual fields (description), there is an option to return all, or just a single language. Even in single language mode, some things are still language specific (like the thousands seperator on numbers)

Installation

  • Téléchargez et placez le(s) fichiers (s) dans un répertoire appelé CommonsMetadata dans votre dossier extensions/.
  • Ajoutez le code suivant à la fin de votre fichier LocalSettings.php :
    wfLoadExtension( 'CommonsMetadata' );
    
  • Yes Fait – Accédez à Special:Version sur votre wiki pour vérifier que l'extension a bien été installée.

Pour les utilisateurs de MediaWiki 1.24 ou précédents :

Les instructions ci-dessus décrivent la nouvelle procédure pour installer cette extension en utilisant wfLoadExtension(). Si vous avez besoin d'installer cette extension sur les précédentes versions de MediaWiki (1.24 ou antérieur), à la place de wfLoadExtension( 'CommonsMetadata' );, vous devez utiliser :

require_once "$IP/extensions/CommonsMetadata/CommonsMetadata.php";

Testing

Avertissement Avertissement : If you're developing or testing this extension, we do NOT suggest you copy the Commons templates for image metadata, as they take extremely long to compile and have complicated dependencies like Scribunto. Instead, get an expanded version that has only wikitext/HTML and put in the various parameter references (or don't) manually. You can find an example (to be used with Special:Import) here. Or use Vagrant which includes certain templates by default.


Lors du test avec des images distantes (par exemple des images Commons si vous avez activé $wgUseInstantCommons ), vous pouvez définir $wgCommonsMetadataForceRecalculate = true; pour forcer CommonsMetadata à analyser la page de description de l'image et à extraire les métadonnées (normalement, si le référentiel distant avait également CommonsMetadata installé, il copierait simplement la sortie de l'API à partir de là).

Utilisation

Use the imageinfo API, and include extmetadata as an image info property specified via iiprop.

Example usage:

https://commons.wikimedia.org/w/api.php?action=query&prop=imageinfo&format=json&iiprop=extmetadata&iilimit=10&titles=File%3ACommon%20Kingfisher%20Alcedo%20atthis.jpg

View this example in the API sandbox:

https://www.mediawiki.org/wiki/Special:ApiSandbox#action=query&prop=imageinfo&format=json&iiprop=extmetadata&iilimit=10&titles=File%3ACommon%20Kingfisher%20Alcedo%20atthis.jpg

Données renvoyées

The extension currently provides the following items in the extmetadata field of the response (the field names were chosen, where possible, to follow the IPTC-IIM format used in EXIF headers):

  • ImageDescription - image description
  • Artist - author name (might contain complex HTML, multiple authors etc)
  • Credit - source
  • DateTimeOriginal - time of creation (space-separated ISO 8601 timestamp whenever possible, but can be any other textual description of a date, possibly with HTML mixed in)
  • ObjectName - title (for a book/painting; otherwise just the file name)
  • Permission - contents of the Permission field of the template. Can be a lot of things (license template, OTRS id, details on how to attribute...)
  • AuthorCount - the number of templates with authors (e.g. Book, Photograph...). The number of actual authors might be higher if a template describes multiple authors in a single string.
  • GPSLatitude - latitude
  • GPSLongitude - longitude
  • GPSMapDatum - coordinate type (only WGS-84 supported for now)
  • LicenseShortName - short human-readable license name
  • LicenseUrl
  • UsageTerms
  • Copyrighted - True or False (for public domain images)

For multi-licensed images these values are currently unreliable.

  • Attribution - custom attribution that should replace Artist + Credit (can also originate from the Information template)
  • AttributionRequired - booleanish (phab:T86726), tells whether there is a legal requirement to attribute
  • NonFree - booleanish, true means the image is not under a free license. (Used for non-Commons images only.)

Other data:

  • CommonsMedadataExtension - contains the metadata parser version number; mostly for internal use
  • License - a best guess at the license of the image (mostly for internal use by MediaViewer, might change; LicenseShortName is probably more reliable)
  • Categories - a |-separated list of the categories of the image.

Based on parsing category names, probably won't work for images not hosted on Commons.

  • Restrictions - reuse restrictions such as trademarks or personality rights; an array of keywords (the class names from this table, without the restriction- prefix). See also the restrict-* icons in MediaViewer.
  • DeletionReason - if set, the template is being considered for deletion.

(Based on the nuke template, probably not reliable outside Commons.) It contains a deletion reason, but it is phrased to be applicable for a log entry, so it might be misleading (e.g. past tense when actually it is not yet decided whether the image will be deleted).

Voir aussi