|
AntonW
|
 |
« Reply #46 on: May 10, 2009, 10:56:07 PM » |
|
Ok, here are some additional thoughts regarding the 2.0x schema proposal as it stands now.
These I would recommend as changes that should be made:
Each name of the XSD should list the major version number, so BeerXML.xsd would become BeerXML.v2.xsd, this would allow multiple major versions to be in the same directory.
course_grind should be added back (as an optional element) to FermentableType, since it isn't always the case that Fine - Course = Fine_Course_Diff. Most likely there is a supplier-specific correction factor that is being added.
These changes require more investigation:
In FermentableBase, should the <type> element containing 'extract' choice be changed to 'liquid extract', in similar fashion to the 'dry extract' choice value?
In FermentableType, should inventory amount be changed to allow amount_as_volume (only mass units are supported currently)?
In MiscellaneousBase (use_for) and YeastType (best_for), should we change these element names to <recommended_use> for greater consistency?
And a more general question:
Should we split the FermentableType record into three separate record categories, specifically grain (with most of the current elements in FermentableType), extract (with only a subset of FermentableType elements), and adjuncts (also supporting a FermentableType subset). As the schema stands now, the majority of elements are optional to allow for flexibility for extract and fermentable adjuncts. But if we break those out into separate record types, overall we should have more consistency between categories.
I was thinking grain has already been well-specified. Extract should cover all aspects of both dry and liquid malt extracts. And adjunct would cover sugar, fruit, honey, molasses, and anything else (other) than can make a meaningful contribution to the overall gravity of the beer.
Any thoughts?
-Anton
|