This package contains all client models utilised by the Atlas Public API to request searches and repeat searches, and to retrieve their results.
Search
- models used throughout search journey, e.g.,DonorType
Requests
- request definitions and their initiation responsesResults
- search result (includes both matching and match prediction results) and notificationMatching
- matching result per donor/locus, and notification to allow early retrieval of match resultsMatchPrediction
- match prediction results per donor/locusResultSet
- search results for a set of donorsLogFile
- log file for a completed search request (note: a completely separate feature to Application Insights logging)
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Updated .NET version from 6.0 to 8.0
- Moved existing
Alert
andNotification
message models (and dependent classes) to newSupportMessages
namespace.
- BREAKING CHANGE: Existing enum,
Search.Results.Matching.MatchGrade
, has been extended with a new value,ExpressingVsNull
, to represent the edge case of expressing typing against null allele.
Search.Results.Matching.PerLocus.LocusPositionScoreDetails
has been extended with a new field:IsAntigenMatch
, which indicates whether the match grade for a position is an antigen match (true
) or not (false
).- Added
MatchingStartTime
property toResultSet
model. - Added models representing the search request log file that is written after a search completes.
Search.Results.MatchPrediction.MatchProbabilityPerLocusResponse.PositionalMatchCategories
are now overridable, in case they need to be re-orientated.- Extended
Search.Results.LogFile.SearchLog
with aSearchRequest
property, and added a new child model,MatchingSearchLog
, that inherits fromSearchLog
but has info unique to the matching part of search. - Added
Summary
string toFailureInfo
model to replace obsoleteSearchResultsNotification.FailureMessage
property.
ResultSet
model has been extended with new properties,MatchCriteriaDenominator
andScoringCriteriaDenominator
, which represent the match count denominator for matching results and scoring results, respectively.MatchingResultsNotification
andSearchResultsNotification
have both been extended with more failure information.- As part of this enhancement, the following properties have been deprecated:
SearchResultsNotification.FailureMessage
has been superseded by a new propertySearchResultsNotification.FailureInfo
.MatchingResultsNotification.ValidationError
has been superseded by a new propertyMatchingResultsNotification.FailureInfo
.
- As part of this enhancement, the following properties have been deprecated:
- The client models project was refactored to replace dependency on Atlas.Common with a new project, Atlas.Common.Public.Models, which only contains those models referenced by both the client and other components.
- Changelog .md file included as NuGet Package README.
- No change to client.
- No change to client.
- New
BatchScoringRequest
model added, using newIdentifiedDonorHla
model- Used to allow standalone scoring requests for batches of multiple donors at a time.
ScoringResult
model has two new properties:TypedLociCount
MatchCategory
- These properties already existed on the scoring information of search results, and have been added to the scoring-only result for parity
- Added optional
DonorRegistryCodes
property to search request, to allow filtering of donor results to those from certain registry codes.
- Marked 'PatientFrequencySetNomenclatureVersion' and 'DonorFrequencySetNomenclatureVersion' as Obsolete and added 'PatientHaplotypeFrequencySet' and 'DonorHaplotypeFrequencySet' to replace them on the 'MatchProbabilityResponse'. Both HF sets contain the metadata (internal ID, RegistryCode, EthnicityCode, HlaNomenclatureVersion and PopulationId) of the frequency set.
- Added 'MismatchDirection' to 'LocusSearchResult' to indicate the directionality of a DPB1 non-permissive mismatch.
- Replaced
SearchedHla
in result sets with the fullSearchRequest
, to aid debugging/support work looking at result sets.
MatchGrade
enum:PermissiveMismatch
value removed.- The match grade is a value that is calculated for allele pairs (rather than loci pairs), and as such search results will have two match grades per locus.
For Dpb1, the permissive mismatch grade can only be calculated by considering the whole locus - so it does not make sense to assign a grade of
PermissiveMismatch
to an individual allele at a locus. - The
PermissiveMismatch
match category will still be available in theLocusMatchCategory
, at a per locus level (though will only ever be assigned at the DPB1 locus), and in theMatchCategory
enum for the overall consolidated value for a donor (i.e. when the only mismatches are permissive at DPB1) - Loci with a
PermissiveMismatch
category will still be assigned match grades - but within the grade, all mismatches will be calledMismatch
- to know if the mismatch at a locus is permissive overall, the match category must be used instead.
- The match grade is a value that is calculated for allele pairs (rather than loci pairs), and as such search results will have two match grades per locus.
For Dpb1, the permissive mismatch grade can only be calculated by considering the whole locus - so it does not make sense to assign a grade of
- Renamed
HlaNomenclatureVersion
toMatchingAlgorithmHlaNomenclatureVersion
on both result set and notification models, now that Matching and Match Prediction are able to use two different HLA versions.
- First stable release of Atlas client.