Skip to content
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

Improve ITI-67 to ITI-18 conversion #158

Open
qligier opened this issue Jul 4, 2024 · 1 comment
Open

Improve ITI-67 to ITI-18 conversion #158

qligier opened this issue Jul 4, 2024 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@qligier
Copy link
Collaborator

qligier commented Jul 4, 2024

if (searchParameter.get_id() != null || searchParameter.getIdentifier() != null) {
GetDocumentsQuery query = new GetDocumentsQuery();
if (searchParameter.getIdentifier() != null) {
String val = searchParameter.getIdentifier().getValue();
if (val.startsWith("urn:oid:")) {
query.setUniqueIds(Collections.singletonList(val.substring("urn:oid:".length())));
} else if (val.startsWith("urn:uuid:")) {
query.setUuids(Collections.singletonList(val.substring("urn:uuid:".length())));
}
} else {
query.setUuids(Collections.singletonList(searchParameter.get_id().getValue()));
}
searchQuery = query;

In the ITI-67 request processing, if the id or identifier search parameter is used, all others are ignored.
id is not an official ITI-67 search parameter.
identifier is then mapped to uniqueId or entryUuid depending on if it's a UUID or an OID, which is suspicious because the uniqueId can be both a UUID or an OID. We should do two GetDocuments queries to make sure we get all documents.

@qligier qligier added the enhancement New feature or request label Jul 4, 2024
@qligier qligier self-assigned this Jul 4, 2024
@oliveregger
Copy link
Collaborator

@unixoid : we need to look at this because the mapping for fhir resource.id to XDS.DocumentEntry.logicalId

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants