Magnus Manske wrote:
Can do. How about img_metadata, with XML? We could add more EXIF data or other metadata about the image there. Or would that be too slow to parse?
I lean towards serialized PHP objects or arrays for this kind of storage, but you can suit yourself. XML is good for exchanging data across a variety of systems, an application which has never excited me very much.
Another way would be to keep it as it is, and add a special mode to ImagePage.php, which would return the EXIF table in plain text; that could be read in by the "calling" wikipedia.
Now that I think of it: Why not include the EXIF data in the Special:Export XML for the image description page? That way, we could display EXIF data, image comment, (last) author of the description page etc. in the "calling" wikipedia, which is a wanted feature anyway.
The problem with using Special:Export or action=raw for this purpose is that the wikitext in the description page must be parsed in the context of the commons wiki. Templates must be available and namespaces must be correct. My idea for addressing this is to introduce an action=render which outputs an HTML fragment suitable for incorporation into the parser output. This would also be handy for interwiki transclusion, although it would restrict the feature to trusted sites for security reasons.
The current plan for transmitting commons metadata is to use MySQL to replicate the data to a local slave DB. This allows the apache to serve requests without waiting for a 100-200ms propagation delay.
-- Tim Starling