and fills out a PDF based form system
The GeneralFormRequestManager is an ATL COM module that manages a PDF based form system. The module provides all the necessary methods to produce a filled out PDF form or a generalFormRequest_430.xsd type XML infoset that includes the PDF form itself as Base64 octet stream.
Empty PDF form templates from the medForms OID space or previously processed PDF form can be loaded into the module.
To produce e.g. an XML infoset, firstly load the appropriate PDF form template with the LoadPDF method. By using the returned IGeneralFormRequest interface all semantically well-known addresses and structured are queried by the iterator pairs GetFirstAddressRole / GetNextAddressRole and GetFirstStructRole / GetNextStructRole. The data returned from these iterators allows to define the corresponding addresses and structure by using the AddAddress and the various structure methods e.g. AddDiagnosis.
The generalFormRequest system does not endorse a paradigm of "completeness" or "100% preset capability". Therefore, after all semantically well-known information is set the PDF form is finalized by a user-driven review process whereas Acrobat Reader using a preset PDF form does the visualization. This is done automatically when calling the GetPDF or GetXML methods. These methods deliver the final PDF form or XML infoset.
To get a staring point with the generalFormRequest module there is a Visual Basic code snippet provided that can be used for generating and PDF form.