Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

BT-29 Mapping Clarification for CII to UBL Conversion #36

Open
shenazz opened this issue Jan 15, 2025 · 4 comments
Open

BT-29 Mapping Clarification for CII to UBL Conversion #36

shenazz opened this issue Jan 15, 2025 · 4 comments
Assignees
Labels
question Further information is requested

Comments

@shenazz
Copy link

shenazz commented Jan 15, 2025

When mapping BT-29 (Seller ID) from CII to UBL, there's a question about handling both ID and GlobalID fields:

Current behavior:
When GlobalID is present in CII, only GlobalID is mapped to UBL's PartyIdentification/ID
The regular ID field is not mapped in this case

Question:
Should we create an additional PartyIdentification element in UBL to include the regular ID value, even when GlobalID is present?
This would result in two PartyIdentification elements:

  1. One for GlobalID
  2. One for the regular ID

Would appreciate clarification on the correct mapping behavior in this scenario. Thanks!

CII:
image

UBL:
image

@phax phax self-assigned this Jan 19, 2025
@phax phax added the question Further information is requested label Jan 19, 2025
@phax
Copy link
Owner

phax commented Jan 19, 2025

Find below the text to BT-29 in the CII mapping:

Image

The current interpretation is as you mentioned: if at least one GlobalID is present that has a non-empty schemeID attribute, the GlobalID elements will be mapped. Otherwise the ID elements will be mapped.

The relevant reason to use only one mapping is the "else" to my understanding. My interpretation is, that the "else" refers to the differentiation between GlobalID and ID. If both GlobalID and ID should be used in parallel, I would assume the text to be phrased differently. To me the wording means that the elements are mutually exclusive.

@shenazz
Copy link
Author

shenazz commented Jan 23, 2025

Thank you for the clarification.

I am wondering if this interpretation applies to the end consumer of the invoice and if the mapping from CII to UBL should be lossless, especially since PartyIdentification in UBL has a cardinality of 0..n. Kindly let me know your thoughts. Thanks again!

@phax
Copy link
Owner

phax commented Jan 23, 2025

@shenazz honestly, I think it would be best to refer this question to TC 434 WG3 to get their original thoughts on this. I don't think a losless mapping possibility between UBL and CII was part of way of thinking when developing the syntax mapping.

@shenazz
Copy link
Author

shenazz commented Jan 24, 2025

Thanks you @phax. If I get further clarification regarding this topic, as you suggested, from elsewhere, we can maybe reopen this discussion.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants