Problem With Conditional Syntax In General Link Properties

Sorry to bother the forum community again, but I seem to have missed another fundamental point regarding conditional syntax in general link properties.

I want to map an input value with path /Specialized850/ST/PO1/SLN/PID/PID05, which is of type String. I want to map it to a custom flat file schema.

My first pass at doing this the straightforward way resulted in a NullPointerException. When I look at my data, I see the following two records in the input EDI:

PID~FSHEAR TIE*
PID~F
*************** COMPLETE PER DRAWING ***

The first PID record maps just fine to “SHEAR TIE”. The problem with the second one is obvious: those stupid stars that make up part of the comment mess things up, because ‘*’ is the end of record character here. (The string ends up as “unDefData” when wM parses it.)

I thought I could get past this by putting a check into the link properties, like this:

!%Specialized850/ST/PO1/SLN/PID/PID05%

But this doesn’t appear to be correct. When I leave off the leading and trailing ‘%’ char, Developer complains: “No closing delimiter found”. Adding the ‘%’ chars fixes that problem, but the check isn’t saving me.

What is the correct syntax? What is the correct idiom for avoiding this problem?

Thanks - %

Hello,
If you use automatic translation of the EDI document, then you have to tell the sender to change the delimiters to characters not found elsewhere in the document like (_ or ^).
If you are manually translating, then you could pass the data through a “polishing” routine to remove possibly invalid chars. Something like removing mulitple occurances of an end-of-record character. Another would be removing an end-of-record if the following ID is more than 3 chars, and this is not a perfect routine but may buy you some time. I use such a service to handle non-printable characters (like linefeed) being used as delimiters.

Good day.