Extension:FileAnnotations/Design

This extension lets you add annotations to files. It currently only supports images but can later be used to add annotations to audio and video files too. It is an improvement on the ImageAnnotator gadget and currently has a similar feature set.

Goal
"Text and photos and videos are great, but today we don't have the same kind of pervasive hyperlinking in media that makes disappearing down a Wikipedia clicking journey both fun and educational. - From T133526"To achieve this FileAnnotations might benefit by being more structured than ImageAnnotator. Commons has guidelines on what kind of annotations are considered good and what format makes sense given a particular context. Encouraging these guidelines through the user interface, and making it easier to do the right thing, while still keeping the contribution process simple is important.

Users and use cases
Personas are we targeting and what their use cases might be.

Active reader

 * Discover the feature and figure out how to use it.
 * Use the annotations for a visual learning experience for her students.
 * Get encouraged to add annotations of her own as the contribution doesn't require much time or effort.

New editor

 * Be able to contribute without learning about too many policies.
 * Share his know about modern design without the hassle of creating new articles.
 * Get guidance on what annotations work best.
 * See his annotations on an article, without having to edit the article. This might be motivate him to get deeper into editing.

Active editor

 * Quickly tag event photos with relevant bands as links.
 * Monitor and revert any vandalism on annotations.
 * Improve annotations by others, by turning text annotations to links, for example.

What is a good annotation?
The guidelines on Commons on what makes a good annotation are helpful for users, but we need to find guidelines on what is helpful for the entire system. I feel that in some cases a link to Wikidata item would serve better than a Wikipedia article or a commons category. The way we display the link to the Wikidata item can make us reach closer to our goal too (I am thinking something like Popups and not just a plain link).

Annotation types
Given the current use cases we can roughly divide the types into the following: These types need not be explicitly chosen by the editor but can be inferred and then displayed accordingly. The interface however could however encourage links over text.

Discovery
How will a reader find out that there are annotations on a particular file?
 * Current state (gadget/extension): Text note at the bottom of the file.
 * Current state (gadget): Icon on top the thumbnail indicating the file has annotations.
 * Flash the annotation rectangles for a short period of time after the page is done loading.
 * Flash the annotation rectangles as the image thumbnail scrolls into view in an article.
 * Load the annotations and keep showing them till the user doesn't mouse-in-out once.
 * Show a list of annotations on the page, separate from the image.

Viewing annotations

 * TextExtracts and PageImages for Wikipedia articles (like Hovercards).
 * Title, Image and Description for Wikidata items.
 * See more images link, where applicable.
 * See on map link, where applicable.
 * Read more on Wikipedia.
 * Image from commons with a frame.
 * If its a text with a link like, "Foot from " then the Wikipedia page hovercard can be embedded below (similar to link embedding in chat applications.
 * An embedded map if the annotation has a geo template.

Encourage Annotating
How can we encourage annotating files, both readers and editors?
 * Show notification to add annotations based on the category of the image. Eg- people, map etc.
 * Are we running any face recognition or focal point recognition services? If yes, show a notification with a rectangle already around the face/focal point.

Annotating
How should the actual annotating process work?
 * Current state: Lets you add wikitext annotations.
 * Should we allow for structured annotations? A tab for each annotation type? It could save in wikitext like it already does, and infer the type later again based on the type of the link.
 * Don't allow anonymous users to add plain-text annotations?

En:Monty Python

Editing

 * Be able to see diffs and watchlist annotation pages (maybe automatically when you watchlist the File page).
 * Have links to quickly convert plain wikitext annotations into links.
 * Have links to quickly convert Wikipedia or Commons links to Wikidata links.