Contents -------- 1.0 Description 2.0 History 1.0 Description --------------- This is the Perl HL7 API. It is a very simple, but rather flexible API for use in Perl applications. Development is in full progress, so please bear with me for the moment, while I test the API in real situations, and converge on a basic API that provides the stuff you meet in real HL7-life. The focus of this API is on providing the HL7 wrapping and composing of messages, not providing hundreds of prefab HL7 messages. Please refer to the POD documentation for examples and the API documentation. 2.0 History ----------- version 0.68: * Added more documentation (this is an ongoing effort...) * made setField on segment accept multiple values. These are joined with the component separator. * Added the HL7 NULL variable for the setField operation on a segment. * Fixes in MSH segment due to some reference interference quirks on Solaris. * Added size method to Segment * Made ACK message type copy full MSH when initialized with message, then set it's own specific fields. * Fixed some complaints when running in strict mode on uninitialized values. * Fixed some tests that used undefined values. version 0.67: * Added COMPONENT_SEPARATOR, REPETITION_SEPARATOR, ESCAPE_CHARACTER and SUBCOMPONENT_SEPARATOR to the MSH segment. The setField method on this segment, on index 2 now actually changes the values of these variables. Also checks on setting field 1 on MSH, whether input is just 1 char. * Fixes on ACK, to set the error message. * Check on segment id: it must be exactely three characters long, upper case. * Fixed Makefile.PL, so it now really installs into the Perl lib path. * Added more methods to the Message to manipulate segments. version 0.66: * Implemented the getNextRequest method to actually read new data. The getRequest method only reads data from the socket if there's no request cached. version 0.65: * the getRequest method of the Net::HL7::Daemon::Client has been enabled for multiple incoming messages. This means that the getRequest method now tries to read from the socket every time it is called. * Fixed some documentation version 0.64: * Fixed error in daemon and ack tests * Fixed erroneous setting of MSH fields in Message.pm * set MSH(11) to P and MSH(15) to AL per default * Made new() method of Message also split message string on \n * ACK now takes MSH(11) and MSH(12) from incoming MSH, and sets MSH(15) and MSH(16) to the empty string. * Fixed erroneous sendAck and sendNack methods. The stuff is now sent as a single line, to prevent perl from inserting separators, like end of lines, etc. version 0.63: * fixed some POD errors * added the sendResponse method to Net::HL7::Daemon::Client * Removed NACK module: it doesn't exists in the HL7 world. * The MSH segment now uses index 1 of it's fields for the FIELD_SEPARATOR value; other fields have moved one to the right * added setAckCode method to ACK, to be able to set the error for the acknowledgement. version 0.62: * Fixed erroneous read of input buffer for Client * Added ACK, NACK messages * Added MSH segment * getSegmentByName is removed * Made the Daemon and the Client inherit from IO::Socket, so you can more easy do things with forking and other server operations you would perform on sockets. * Made several constructors set segments and values, like auto-adding the MSH segment to every instance of Message. version 0.61: * Moved the stuff to a new namespace (Net::HL7) * Created a Daemon, resembling the HTTP::Daemon * Created the Request and Response classes * added tests version 0.5: * Added the getField method to HL7::Message * repaired broken message parse for HL7::Message constructor version 0.4: * Removed spurious newline between segments.