Back in February I noted that Photo Gallery can embed metadata — including tags — directly into images. One implication of this “truth in the file” strategy was that photos tagged on the desktop in Photo Gallery would someday be able to carry their tags with them when uploaded to Flickr. Today is that day. The latest beta refresh of Photo Gallery introduces a tag-preserving Flickr upload feature. Excellent!

There is, of course, no absolute truth in this game of tag. From Photo Gallery’s perspective, not all image formats are created equal. Some are friendlier than others to the embedding of metadata. So while you can tag both a JPEG and a PNG image in Photo Gallery, the tags have different relationships to the photos. In the case of the JPEG, the tag lives inside the image file. In the case of the PNG, it lives in an external data store.

It was already the case that a tag assigned to a PNG image would not survive a trip through your local recycle bin. For the same reason, a tag assigned to a PNG image will not survive a trip to Flickr.

What about the reverse trip? If you download a tagged JPEG from Flickr, will Photo Gallery see the tag? So far as I can determine, no. (Update: As per kellan’s comment below, the largest size of your photo — and the one you’re likeliest to want to fetch back — is unmodified and does retain the tag.)

It follows from these observations that there is no straightforward way to synchronize your cloud-based tag vocabulary with your local tag vocabulary. If these evolve, they will diverge.

Mind you, I’m not complaining. There really is no practical solution to this problem. I’m delighted that we’ve taken this first step, not only because it offers real practical benefit but also because it will get more people thinking about how we might want to manage our self-assigned metadata in a decentralized world.

Here’s what I envision. In a hosted lifebits scenario, every chunk of bits I produce — on the desktop or in the cloud — has a canonical, globally-unique, and cloud-accessible name, along with one or more representations and associated pieces of metadata. When I upload a photo to Flickr I don’t transfer the bits that directly represent the photo. Instead I transfer that canonical name. When Flickr or another service needs to materialize a representation of the photo, it sources the image data from one of my hosted representations. These services likewise syndicate my metadata, including tags, so that when my tag vocabulary evolves, it evolves everywhere.

I know, I know, there is a crazy amount of stuff that would need to happen in order to make this possible. But it would be good stuff, for users and for service providers, and I can’t help imagining what it would be like.