Since the BJCP owns the information contained within the BJCP styleguide, it probably doesn't make sense for BeerXML styles to be perfectly compliant with the BJCP information.
Agreed. But some extra similarities here and there will make it a little easier to work with both. ;-)
But it would be nice if the BJCP group would allow BeerXML consumer programs to allow their users to download, install and utilize the most recent BJCP XML styleguide information for free (like eclipse-plugins work with eclipse).
I think this is currently allowed, as long as you don't edit the files, and give BJCP credit when credit is due.
Why does the BJCP XSD encode html list items and hyperlinks when they can be generated from normalized data via XSL?I don't know. I've tried contacting the original author of the BJCP XML but to no avail. He only give a domain name as a contact and it's an expired domain. I've asked around but no one has his contact info. But I wouldn't mind changing this...though it wasn't on my priority list as it wasn't bugging me too much - so far. ;-)
* Why are beer, mead and cider structures defined within the same class?Very good question. I'm planning on asking them if this can be changed. This has been bugging me too.
*Why do <category> and <subcategory> store their values as attributes instead of within elements?This is one that I don't have a problem with. The attributes are supplying meta-data in a way. But I don't feel strongly about it either way.
* For flexible stats, doesn't it make more sense to include flexible as an attribute for <low> and <high> instead of the root <stat-type> element?This one has vexed me ever since I took this on. I can't for the life of me figure out where he pulled this "attribute" from. It's not it the style guidelines as far as I can tell. I "think" I understand what it's implying, but where he got the true vs. false for each value is beyond me. I'd like to find out.
* Why don't the stats have units?Oh, HOW I agree! The original author implied the units (for the most part) in the tag names though.
<srm> <ibu> ... I would've done it differently... The way it's implemented you're stuck with those units (in a sense).
However, when looking through the text of the style guide, it's quite obvious that the whole thing is very American-centric. For example, whenever a temperature is mentioned in the text (e.g. "...single rest at 149°F. Fermented at cool ale temperatures (59-65°F)...") it's always in ˚F. I think they should always list the ˚F with the ˚C, like 68˚F/20˚C or in parenthesis 68˚F (20˚C). And it'd be nice if the XML used <temp unit="f"> or something similar as well.
Unfortunately, since I'm not supposed to be changing the text of the styles, I feel a bit locked in, but I'd like to put in a recommendation to them to internationalize the guidelines a bit. And in turn internationalize the XML, by adding units. Maybe they'd let me change the temp text in the XML at least. ;-) Though I kinda doubt it.
* Why doesn't the revision have major and minor segments?I think this was the first odd thing I noticed. The version/revision scheme doesn't make much sense at all. Seems like there should be a BJCP version number and a version/revision number for the XML file itself. Then when you look at the notes in the header, the XML "looks" to be on v3, but the tags say v1 (

). Again, I tried contacting the original author about this, and also one of the guys tat did some of the updates. I did get a hold of the guy that did some updates on it, but he didn't remember messing with the revision #s, and said my guess was as god as his.
I also don't understand why the revision tags are where they are in the XML...given that the BJCP doesn't revise individual categories at various times, but the whole document at once. I'm sure the original author had a reason for doing it the way he did, but I can't figure out his logic.
I'll have to run all changes by the BJCP staff. What might make this changes less painful is if not many people are using the BJCP XML as of yet. This may be the case. I'm hoping someone at the BJCP might have some idea if it's currently being utilized by anyone...