HL7 Variant quirk….

Clovertech Forums Read Only Archives Cloverleaf Cloverleaf HL7 Variant quirk….

  • Creator
    Topic
  • #50571
    Tom Rioux
    Participant

      Maybe I’ve just never encountered this before or never realized that syntax is everything but here is an issue I just ran into.   I have a variant built with an AL1, ZAL repeating group.  I needed to do some translations on the AL1.3 field based on allergy type in AL1.2.  Simple enough.  However, in some of my test messages only the first AL1 segment was showing up.  It would never hit the others.  I searched long and hard in my code making sure I had all of my iterate variables in place and made sure I had no typos.  Everything looked good.

      Then I noticed that the A08’s were working fine but the A04’s and A31’s weren’t.  The layout up to those segments are pretty much the same in this variant for all 3 messages.  So, if I use an A08 as my message format for my xlate, I was safe to assume that it should be working properly.  However, finally I went to take a look at the structure defined in the variant for each type of message.  Here is what I found:

      The A08 group was set up as below with the corresponding layout in the xlate:

      [                     Layout in xlate:  1(0).0(0)….

      {                                            1(0).0(1)…and so on

        AL1

        [ZAL]

       }

      ]

      The A04 group was set up as below with the corresponding layout in the xlate:

      {                     Layout in xlate:  1(0).0(0)….

       [                                            1(1).0(0)…and so on

        AL1

        [ZAL]

       ]

      }

      Can someone explain to me why whether the curly brace or the bracket came first made such a difference in the way the xlate translated the message?

      Thanks…

      Tom Rioux

      Baylor Health Care System

    Viewing 3 reply threads
    • Author
      Replies
      • #66654
        Jim Kosloskey
        Participant

          Tom,

          I don’t think it should matter.

          Try changing the variant so that the indicators are reversed and retry your Xlate. If it still fails, then it must be the Xlate.

          email: jim.kosloskey@jim-kosloskey.com 29+ years Cloverleaf, 59 years IT - old fart.

        • #66655
          Tom Rioux
          Participant

            Thanks Jim.  I made the A08, the A04, and the A31 look all the same when it applies to that particular grouping.  All messages started working.  Is this some sort of HL7 bug?  A Cloverleaf translation bug?  Or am I just buggy?  (no comments from the peanut gallery John Hamilton!)

            Thanks…

            Tom Rioux

            Baylor Health Care Systems

          • #66656
            Jim Kosloskey
            Participant

              Tom,

              I do not think that is an HL/7 restriction. To be sure I did some research and I cannot find anything that specifies whether the brace or bracket needs to come first.

              So if the order does cause an issue, my suspicion would be sensitivity of the parser.

              If the parser is pickey, the the configuration tool shoulld not allow invalid configuration.

              However, I note that message structures as delivered have both constructs.

              Thus I am unsure if this is true whether it is by design (restricted order) or a bug.

              If it is true and by design than the HL/7 Configurator Gui has a bug and should not allow invalid notation.

              Those are my thoughts anyway.

              email: jim.kosloskey@jim-kosloskey.com 29+ years Cloverleaf, 59 years IT - old fart.

            • #66657
              Jennifer Hardesty
              Participant

                Well, they are quite different actually.

                One reads that the repeating group is optional and the other reads that the optional group is repeating.  It’s a very subtle difference but the latter is likely invalid, especially if the message the parser encounters has no AL1 or ZAL — you can’t repeat nothing; it’d be like dividing 0 by something.

            Viewing 3 reply threads
            • The forum ‘Cloverleaf’ is closed to new topics and replies.