#6 - Aug. 22, 2011, 10:22 p.m.
Imagine what exactly the Battle.net server does to display character/guild/arena information. [Warning: assumptions follow] It reads data or caches from the WoW realm servers, which are primarily IDs, and then processes the IDs into human-readable formats.
The enchants and gems for items are stored as enchantIDs, not itemIDs, but the original armory did a data conversion from enchantIDs to itemIDs so it could use item inventory icons in displaying information. The localized text itself for gem/enchants effects is pulled directly from the DBCs by the enchantID. The text on the gem items themselves are the same text, in general.
Never in this system is the intermediary of stat values for gems or enchants calculated by the battle.net system--stat values are directly from the realm servers. Getting those stats out would be a matter of linking the enchantID to a DND buff that has the appropriate spell effects, then parsing those spell effects. As far as parsing spell effects, that is still NYI in battle.net as far as I can tell, and I don't see that happening either.
Well, kind of. When we have a piece of data, either in the form of a character or an item, it is in a raw form similar to how we expose it through the API. It would be accurate to say that most framework and infrastructure (read as: complexity) of our website is making sense of the data and presenting it in a human readable form.
All of the stats and aggregates presented on and through this site are calculated by the Wow community site application from the raw values given to us from various data sources.