Get a value in the HL7 dictionary. The terser can be fully qualified or not.
            Fully qualified : OBR[1]-10-01
            Simpliest form  : OBR-10-1 (in this case, 1 uniq segment OBR is present in the HL7 message)

            :return : the value or a list of values. Otherwise None.

def get(self, terser):
        """
            Get a value in the HL7 dictionary. The terser can be fully qualified or not.
            Fully qualified : OBR[1]-10-01
            Simpliest form  : OBR-10-1 (in this case, 1 uniq segment OBR is present in the HL7 message)

            :return : the value or a list of values. Otherwise None.
        """
        key = terser
        # if the expression in not found n the qualified names
        # find the alias
        if terser not in self.data and terser in self.aliasKeys:
            key = self.aliasKeys[terser]

        value = self.data.get(key, None)

        # if the value is not found, it can be a partial terser
        if value:
            return value
        else:
            # find the values : simple startswith : should it be a regexp ? (more powerful, more slower)
            values = list(filter(lambda k: k.startswith(key), self.aliasKeys))
            if len(values) > 0:
                return values
            else:
                return None