New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
X12 - incorrect mapping #58
Comments
@nycbauer Is this still an issue after our chat room discussion? |
I've investigated this further, and it's a similar but different issue. In the L1000A loop there are two PER sections, the first is the Payer Business Contact Information, which starts as PERCX, and that is an optional segment, while the next one is the Payer Technical Contact Information which comes in as PERBL, which is required. |
If BusinessContactInformation is present it must have at least ContactFunctionCode. Everything else can be empty. Do you have some data that is not real to show the issue so that I can create tests with? |
Right, but my situation is where there is no BusinessContactInformation. You can try this file |
fixed in 1.0.239 |
Issue85_passing.txt |
If a Layout was defined that has an optional segment of a particular type and the very next property as a required list of segments of the same type the parser gets confused. A good example of this is L1000A_835. It defines a segment BusinessContactInformation that is optional followed by a segment list TechnicalContactInformation that is required. The parser seems to get confused here because if the optional one, BusinessContactInformation, is missing it doesn't understand how to parse the other one. Also, I think this may be a problem moving forward if it confuses these and add BusinessContactInformation into the segment list that is TechnicalContactInformation |
So, you realize there isn't any way to differentiate between the two different segments at this point, given how the parser is mapping segments right now, right? With this:
There needs to be a way in the mapping to specify a condition beyond just |
Now that I think about it, this is similar to the issue in HL7 for orders where you should be able to OR segments (issue #34). This problem is exceptionally difficult for a couple reasons:
Would it be wrong to just represent it as: I am assuming there is something in the segment that separates them apart anyway. |
So, this solves the broker test. |
Dude, you broke the test by putting an invalid character in the time. Look at your diff, that test worked before |
This is fixed in 1.0.241. Waiting confirmation from @nycbauer |
Confirmed! Thank you very much! |
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue phatboyg#65
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue phatboyg#65 added new failing test for issue phatboyg#65
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue phatboyg#65 added new failing test for issue phatboyg#65 updated readme and added tests for issue phatboyg#65
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue phatboyg#65 added new failing test for issue phatboyg#65 updated readme and added tests for issue phatboyg#65 fixed gitter link
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue phatboyg#65 added new failing test for issue phatboyg#65 updated readme and added tests for issue phatboyg#65 fixed gitter link added appveyor badge added nuget version badge added appveyor test status badge added appveyor test status badge added appveyor test status badge modified the readme added license section to readme
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue phatboyg#65 added new failing test for issue phatboyg#65 updated readme and added tests for issue phatboyg#65 fixed gitter link added appveyor badge added nuget version badge added appveyor test status badge added appveyor test status badge added appveyor test status badge modified the readme added license section to readme modified readme added more stuff to readme modified readme modified readme
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue phatboyg#65 added new failing test for issue phatboyg#65 updated readme and added tests for issue phatboyg#65 fixed gitter link added appveyor badge added nuget version badge added appveyor test status badge added appveyor test status badge added appveyor test status badge modified the readme added license section to readme modified readme added more stuff to readme modified readme modified readme modified readme and tests updated tests and readme added tests for X12 added more X12 tests fixed issue phatboyg#68 and added tests fixed issue phatboyg#69 and added more X12 parsing tests added more tests and fixed some X12 schema issues
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue phatboyg#65 added new failing test for issue phatboyg#65 updated readme and added tests for issue phatboyg#65 fixed gitter link added appveyor badge added nuget version badge added appveyor test status badge added appveyor test status badge added appveyor test status badge modified the readme added license section to readme modified readme added more stuff to readme modified readme modified readme modified readme and tests updated tests and readme added tests for X12 added more X12 tests fixed issue phatboyg#68 and added tests fixed issue phatboyg#69 and added more X12 parsing tests added more tests and fixed some X12 schema issues modified X12 schema and added several tests added more X12 tests added more X12 parser tests made some changes to HL7 schema fixed issue phatboyg#70 added X12 tests and fixed issue phatboyg#68 for both HL7 and X12 added more X12 tests made some schema changes and added some tests
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue phatboyg#65 added new failing test for issue phatboyg#65 updated readme and added tests for issue phatboyg#65 fixed gitter link added appveyor badge added nuget version badge added appveyor test status badge added appveyor test status badge added appveyor test status badge modified the readme added license section to readme modified readme added more stuff to readme modified readme modified readme modified readme and tests updated tests and readme added tests for X12 added more X12 tests fixed issue phatboyg#68 and added tests fixed issue phatboyg#69 and added more X12 parsing tests added more tests and fixed some X12 schema issues modified X12 schema and added several tests added more X12 tests added more X12 parser tests made some changes to HL7 schema fixed issue phatboyg#70 added X12 tests and fixed issue phatboyg#68 for both HL7 and X12 added more X12 tests made some schema changes and added some tests
fixed test issue add more conditions to X12 maps added conditional logic to several X12 maps created more conditions in maps and created failing unit test for issue #65 added new failing test for issue #65 updated readme and added tests for issue #65 fixed gitter link added appveyor badge added nuget version badge added appveyor test status badge added appveyor test status badge added appveyor test status badge modified the readme added license section to readme modified readme added more stuff to readme modified readme modified readme modified readme and tests updated tests and readme added tests for X12 added more X12 tests fixed issue #68 and added tests fixed issue #69 and added more X12 parsing tests added more tests and fixed some X12 schema issues modified X12 schema and added several tests added more X12 tests added more X12 parser tests made some changes to HL7 schema fixed issue #70 added X12 tests and fixed issue #68 for both HL7 and X12 added more X12 tests made some schema changes and added some tests
There is an issue with the L1000A_835Map. It is incorrectly marking the TechnicalContactInformation as required when it is only situational.
As well, all of the PER types segments on this layout should all be SegmentLists as they can repeat up to twice.
The text was updated successfully, but these errors were encountered: