Author Topic: BeerXML to BeerXML2 Conversion  (Read 6497 times)

tharkaway

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #15 on: June 26, 2010, 03:58:15 PM »
Anton,

I haven't seen any responses to the proposed elimination of mL and L. Let me know when/if you will be making this change the the XSDs. I assume you will create a v2.07. I will modify my conversion program to handle the change.

I did find some code for the ProMash format. That is down the list on my things to be done.

Let me know if you want to play with the converison program and where I can send it.

Tom

AntonW

  • Global Moderator
  • Full Member
  • *****
  • Posts: 111
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #16 on: June 27, 2010, 09:44:51 PM »
Hi Tom,

I've updated the latest drop of the BeerXML zip located at http://www.speakeasy.org/~antonw/beer_xml/BeerXML_v2_07.zip with the mL and L removed.

You can send me the conversion program and I'll try it with some of the recipes I have on file and see what happens.  You can either post it to this list as an attachment, or send it to antonw at speakeasy dot net.  Unfortunately I can't promise to make this a high priority since the day job will be keeping me quite busy for the immediate future.

Thanks,

-Anton

tharkaway

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #17 on: August 11, 2010, 03:41:11 PM »
Anton,

I have made quite a lot of progress on the project I am working on. I got sidetracked on the main project and did not get back to the converter project until recently. It works, but the UI is not very attractive. I may send it to you in a day or two if you want to try it against some of your recipe files.

I did have a question on the schema. I am finding it necessary to encode some miscellaneous information related to the brewing controller. I know that recipe data should stand alone, but it would be nice to include data specific to a particular hardware setup, including something that identifies the actually controller. I believe the BeerXML v1 spec. had an equipment category. The BrewTroller, which I am using, has a couple of idiosyncrasies that do not directly fit in the recipe schema.

I could encode this information in the recipe notes field, but that seems very un-xmlish to me and kind of a kludge. Is there a recommend way to add additional elements or attributes to a BeerXML recipe without breaking the underlying schema compatibility? Would it require an xsd change to support items not defined in the current schema?

Tom

AntonW

  • Global Moderator
  • Full Member
  • *****
  • Posts: 111
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #18 on: August 12, 2010, 11:08:00 AM »
Hi Tom,

It's great to hear that your project is progressing!  The UI for the converter really doesn't matter, even a simple command line utility would be perfectly fine.

Can you go into more detail about the extra information that you want to encode into the recipe?  For v2, the equipment section was removed because it was more closely related to a brewing session rather than the idealized information found in a brewing recipe. 

Perhaps it's time to revisit the data that must be captured from a brewing session and start on a rough draft of a sessions schema addition to BeerXML?

-Anton

tharkaway

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #19 on: August 12, 2010, 01:55:46 PM »
Anton,

A field just identifying the recipe as a BrewTroller recipe would be useful. If the user tries to import a non-BT compatible recipe, there may be some additional choices that the user needs to make to help the import process. This can be encoded in the recipe description, but again that seems like a kludge.

The two specific BrewTroller (BT) recipe items for which I found no BeerXml equivalents are Mash Ratio and HLT SetPoint. The BrewTroller has the ability to measure volumes in the HLT and Mash Tun. Given the desired BatchSize it will calculate the required HLT and Mash volume based on several factors, one of which is Mash Ratio. I am not sure exactly how the HLT SetPoint is used - it may be specific to one of the various hardware setups they support.

The BT recipe provides information on up to 6 Mash steps - Mash In, Acid Rest, Protein Rest, Sacch1 Rest, Sacch2 Rest, and Mash Out. It also specifies a Pitch Temperature, which I maped to the temperature of the primary fermentation stage. Other than this field, the BrewTroller does not support the fermentation process. They have a separate product called the FermTroller – same hardware different software. As I am writing this however, I think it may make more sense to map Pitch Temperature to an additional mash step beyond Mash Out.

I am not a brewer, so my understanding of some of these brewing terms is limited.

Tom

AntonW

  • Global Moderator
  • Full Member
  • *****
  • Posts: 111
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #20 on: August 12, 2010, 03:42:18 PM »
Hi Tom,

For identifying the recipe as originating from BrewTroller, an XML comment node could be placed at the very beginning of XML recipe output (right after the <?xml?> declaration).  Altova's XMLSpy product does something similar when generating XML from a given XSD.

Mash Ratio sounds suspiciously like the water_grain_ratio element of a MashStep, so you may want to go back and check if those two pieces of data match up.

For the BT Mash steps adding pitch temperature as the last step would be fine, since I think that the primary fermentation temperature is defined as the average temperature over the duration of the primary fermentation.

Hope that helps,

-Anton

tharkaway

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #21 on: August 17, 2010, 08:12:34 PM »
Anton,

I think the MashRatio and water_grain_ratio fields match up, but it only seems to make sense on the first mash step, which the BrewTroller calls DoughIn.

I am still playing with the comment in the xml file idea. I like it, but I believe it will have to be written and read separate from the .net serialization functions, which appear to ignore comments.

I sent version 0.1.0 of the BeerRecipeExplorer via email for you to look at if you get time.

Tom

AntonW

  • Global Moderator
  • Full Member
  • *****
  • Posts: 111
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #22 on: August 20, 2010, 10:38:21 AM »
Hi Tom,

I haven't received your converter program via email, did you get a response from my ISP saying the message was undeliverable?  Also, things are pretty hectic at work right now so it will probably have to wait until later next week.  My email address is antonw at speakeasy dot net, with at = @ and dot = .

Thanks,
-Anton

tharkaway

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #23 on: August 20, 2010, 04:41:43 PM »
I just resent it. Whenever you can get to it your feedback will be appreciated.

tharkaway

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #24 on: August 26, 2010, 05:05:51 PM »
Anton,

Just checking to make sure you got the re-send of the conversion program.

Tom

AntonW

  • Global Moderator
  • Full Member
  • *****
  • Posts: 111
    • View Profile
Re: BeerXML to BeerXML2 Conversion
« Reply #25 on: August 31, 2010, 10:41:32 AM »
Hi Tom,

Sorry I didn't receive your conversion program at the speakeasy address.  I'm not sure where it's being dropped but have set up a new email account just for beerxml files.  Please send your converter to the following address:

beerxml@coldfusionbrewery.com

I'll be sure to send a positive reply to the originating address when I receive the converter program.  Sorry for any inconvenience this has caused.

-AntonW

 

register