From cb7e8ad8780f6727ff8bb10541fcfc36e1e822ba Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Thu, 10 Apr 2025 14:02:51 +0000 Subject: [PATCH] CodeGen from PR 33858 in Azure/azure-rest-api-specs Merge 32b2d37f87c3ef11f8e6f3ca1f45562d87f41458 into 271675c3e8e65a2116b3cf9d398eefcae8111df9 --- .../CHANGELOG.md | 100 ++++++- .../RadiologyInsightsAsyncClient.java | 24 +- .../RadiologyInsightsClient.java | 24 +- .../RadiologyInsightsServiceVersion.java | 14 +- .../RadiologyInsightsClientImpl.java | 144 ++++++++-- .../models/AssessmentValueRange.java | 105 +++++++ .../models/GuidanceInference.java | 229 +++++++++++++++ .../models/GuidanceOptions.java | 85 ++++++ .../models/GuidanceRankingType.java | 57 ++++ .../models/PresentGuidanceInformation.java | 173 ++++++++++++ .../models/QualityMeasureComplianceType.java | 69 +++++ .../models/QualityMeasureInference.java | 161 +++++++++++ .../models/QualityMeasureOptions.java | 85 ++++++ .../models/QualityMeasureType.java | 183 ++++++++++++ .../models/RadiologyInsightsInference.java | 6 + .../RadiologyInsightsInferenceOptions.java | 63 +++++ .../RadiologyInsightsInferenceType.java | 18 ++ .../ScoringAndAssessmentCategoryType.java | 262 ++++++++++++++++++ .../models/ScoringAndAssessmentInference.java | 178 ++++++++++++ ...-radiologyinsights_apiview_properties.json | 11 + .../tsp-location.yaml | 9 +- 21 files changed, 1958 insertions(+), 42 deletions(-) create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/AssessmentValueRange.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceInference.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceOptions.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceRankingType.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/PresentGuidanceInformation.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureComplianceType.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureInference.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureOptions.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureType.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/ScoringAndAssessmentCategoryType.java create mode 100644 sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/ScoringAndAssessmentInference.java diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/CHANGELOG.md b/sdk/healthinsights/azure-health-insights-radiologyinsights/CHANGELOG.md index 12a552e87997..484d6255a838 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/CHANGELOG.md +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/CHANGELOG.md @@ -2,13 +2,107 @@ ## 1.1.0-beta.1 (Unreleased) +### Breaking Changes + +#### `models.LateralityDiscrepancyInference` was modified + +* `getExtension()` was removed + +#### `models.LimitedOrderDiscrepancyInference` was modified + +* `getExtension()` was removed + +#### `models.GenericProcedureRecommendation` was modified + +* `getExtension()` was removed + +#### `models.CompleteOrderDiscrepancyInference` was modified + +* `getExtension()` was removed + +#### `models.FhirR4ResearchStudy` was modified + +* `getText()` was removed +* `getContained()` was removed +* `getModifierExtension()` was removed +* `getExtension()` was removed + +#### `models.FollowupCommunicationInference` was modified + +* `getExtension()` was removed + +#### `models.ImagingProcedureRecommendation` was modified + +* `getExtension()` was removed + +#### `models.SexMismatchInference` was modified + +* `getExtension()` was removed + +#### `models.FhirR4Observation` was modified + +* `getModifierExtension()` was removed +* `getContained()` was removed +* `getText()` was removed +* `getExtension()` was removed + +#### `models.AgeMismatchInference` was modified + +* `getExtension()` was removed + +#### `models.CriticalResultInference` was modified + +* `getExtension()` was removed + +#### `models.FhirR4Condition` was modified + +* `getText()` was removed +* `getExtension()` was removed +* `getModifierExtension()` was removed +* `getContained()` was removed + +#### `models.RadiologyProcedureInference` was modified + +* `getExtension()` was removed + +#### `models.FindingInference` was modified + +* `getExtension()` was removed + +#### `models.FollowupRecommendationInference` was modified + +* `getExtension()` was removed + ### Features Added -### Breaking Changes +* `models.ScoringAndAssessmentInference` was added + +* `models.PresentGuidanceInformation` was added + +* `models.QualityMeasureOptions` was added + +* `models.GuidanceOptions` was added + +* `models.QualityMeasureType` was added + +* `models.QualityMeasureComplianceType` was added + +* `models.QualityMeasureInference` was added + +* `models.ScoringAndAssessmentCategoryType` was added + +* `models.GuidanceInference` was added + +* `models.GuidanceRankingType` was added + +* `models.AssessmentValueRange` was added -### Bugs Fixed +#### `models.RadiologyInsightsInferenceOptions` was modified -### Other Changes +* `setGuidanceOptions(models.GuidanceOptions)` was added +* `getGuidanceOptions()` was added +* `setQualityMeasureOptions(models.QualityMeasureOptions)` was added +* `getQualityMeasureOptions()` was added ## 1.0.0 (2024-10-09) diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsAsyncClient.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsAsyncClient.java index df74d3fb962d..48d17199e4fc 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsAsyncClient.java +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsAsyncClient.java @@ -236,7 +236,7 @@ public final class RadiologyInsightsAsyncClient { * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -247,6 +247,14 @@ public final class RadiologyInsightsAsyncClient { * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -257,7 +265,7 @@ public final class RadiologyInsightsAsyncClient { * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -473,7 +481,7 @@ public final class RadiologyInsightsAsyncClient { * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -484,6 +492,14 @@ public final class RadiologyInsightsAsyncClient { * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -494,7 +510,7 @@ public final class RadiologyInsightsAsyncClient { * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsClient.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsClient.java index 48678cb113a3..3d8a565f0ed0 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsClient.java +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsClient.java @@ -236,7 +236,7 @@ public final class RadiologyInsightsClient { * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -247,6 +247,14 @@ public final class RadiologyInsightsClient { * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -257,7 +265,7 @@ public final class RadiologyInsightsClient { * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -473,7 +481,7 @@ public final class RadiologyInsightsClient { * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -484,6 +492,14 @@ public final class RadiologyInsightsClient { * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -494,7 +510,7 @@ public final class RadiologyInsightsClient { * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsServiceVersion.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsServiceVersion.java index 5b2e2b4760ce..579c2250f940 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsServiceVersion.java +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/RadiologyInsightsServiceVersion.java @@ -13,7 +13,17 @@ public enum RadiologyInsightsServiceVersion implements ServiceVersion { /** * Enum value 2024-04-01. */ - V2024_04_01("2024-04-01"); + V2024_04_01("2024-04-01"), + + /** + * Enum value 2024-08-01-preview. + */ + V2024_08_01_PREVIEW("2024-08-01-preview"), + + /** + * Enum value 2024-10-01. + */ + V2024_10_01("2024-10-01"); private final String version; @@ -35,6 +45,6 @@ public String getVersion() { * @return The latest {@link RadiologyInsightsServiceVersion}. */ public static RadiologyInsightsServiceVersion getLatest() { - return V2024_04_01; + return V2024_10_01; } } diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/implementation/RadiologyInsightsClientImpl.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/implementation/RadiologyInsightsClientImpl.java index 16ecf2c84444..4299b816773a 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/implementation/RadiologyInsightsClientImpl.java +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/implementation/RadiologyInsightsClientImpl.java @@ -380,7 +380,7 @@ Response inferRadiologyInsightsSync(@HostParam("endpoint") String en * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -391,6 +391,14 @@ Response inferRadiologyInsightsSync(@HostParam("endpoint") String en * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -401,7 +409,7 @@ Response inferRadiologyInsightsSync(@HostParam("endpoint") String en * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -617,7 +625,7 @@ Response inferRadiologyInsightsSync(@HostParam("endpoint") String en * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -628,6 +636,14 @@ Response inferRadiologyInsightsSync(@HostParam("endpoint") String en * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -638,7 +654,7 @@ Response inferRadiologyInsightsSync(@HostParam("endpoint") String en * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -885,7 +901,7 @@ private Mono> inferRadiologyInsightsWithResponseAsync(Strin * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -896,6 +912,14 @@ private Mono> inferRadiologyInsightsWithResponseAsync(Strin * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -906,7 +930,7 @@ private Mono> inferRadiologyInsightsWithResponseAsync(Strin * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -1122,7 +1146,7 @@ private Mono> inferRadiologyInsightsWithResponseAsync(Strin * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -1133,6 +1157,14 @@ private Mono> inferRadiologyInsightsWithResponseAsync(Strin * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -1143,7 +1175,7 @@ private Mono> inferRadiologyInsightsWithResponseAsync(Strin * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -1389,7 +1421,7 @@ private Response inferRadiologyInsightsWithResponse(String id, Binar * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -1400,6 +1432,14 @@ private Response inferRadiologyInsightsWithResponse(String id, Binar * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -1410,7 +1450,7 @@ private Response inferRadiologyInsightsWithResponse(String id, Binar * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -1626,7 +1666,7 @@ private Response inferRadiologyInsightsWithResponse(String id, Binar * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -1637,6 +1677,14 @@ private Response inferRadiologyInsightsWithResponse(String id, Binar * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -1647,7 +1695,7 @@ private Response inferRadiologyInsightsWithResponse(String id, Binar * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -1900,7 +1948,7 @@ public PollerFlux beginInferRadiologyInsightsAsync(Strin * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -1911,6 +1959,14 @@ public PollerFlux beginInferRadiologyInsightsAsync(Strin * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -1921,7 +1977,7 @@ public PollerFlux beginInferRadiologyInsightsAsync(Strin * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -2137,7 +2193,7 @@ public PollerFlux beginInferRadiologyInsightsAsync(Strin * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -2148,6 +2204,14 @@ public PollerFlux beginInferRadiologyInsightsAsync(Strin * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -2158,7 +2222,7 @@ public PollerFlux beginInferRadiologyInsightsAsync(Strin * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -2411,7 +2475,7 @@ public SyncPoller beginInferRadiologyInsights(String id, * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -2422,6 +2486,14 @@ public SyncPoller beginInferRadiologyInsights(String id, * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -2432,7 +2504,7 @@ public SyncPoller beginInferRadiologyInsights(String id, * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -2648,7 +2720,7 @@ public SyncPoller beginInferRadiologyInsights(String id, * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -2659,6 +2731,14 @@ public SyncPoller beginInferRadiologyInsights(String id, * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -2669,7 +2749,7 @@ public SyncPoller beginInferRadiologyInsights(String id, * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -2923,7 +3003,7 @@ public SyncPoller beginInferRadiologyInsights(String id, * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -2934,6 +3014,14 @@ public SyncPoller beginInferRadiologyInsights(String id, * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -2944,7 +3032,7 @@ public SyncPoller beginInferRadiologyInsights(String id, * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] @@ -3160,7 +3248,7 @@ public SyncPoller beginInferRadiologyInsights(String id, * verbose: Boolean (Optional) * includeEvidence: Boolean (Optional) * inferenceTypes (Optional): [ - * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Optional) + * String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Optional) * ] * inferenceOptions (Optional): { * followupRecommendationOptions (Optional): { @@ -3171,6 +3259,14 @@ public SyncPoller beginInferRadiologyInsights(String id, * findingOptions (Optional): { * provideFocusedSentenceEvidence: Boolean (Optional) * } + * guidanceOptions (Optional): { + * showGuidanceInHistory: boolean (Required) + * } + * qualityMeasureOptions (Optional): { + * measureTypes (Required): [ + * String(mips76/mips147/mips195/mips360/mips364/mips405/mips406/mips436/mips145/acrad36/acrad37/acrad38/acrad39/acrad40/acrad41/acrad42/mednax55/msn13/msn15/qmm26/qmm17/qmm18/qmm19) (Required) + * ] + * } * } * locale: String (Optional) * } @@ -3181,7 +3277,7 @@ public SyncPoller beginInferRadiologyInsights(String id, * patientId: String (Required) * inferences (Required): [ * (Required){ - * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure) (Required) + * kind: String(ageMismatch/lateralityDiscrepancy/sexMismatch/completeOrderDiscrepancy/limitedOrderDiscrepancy/finding/criticalResult/followupRecommendation/followupCommunication/radiologyProcedure/scoringAndAssessment/guidance/qualityMeasure) (Required) * extension (Optional): [ * (recursive schema, see above) * ] diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/AssessmentValueRange.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/AssessmentValueRange.java new file mode 100644 index 000000000000..a95da3068881 --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/AssessmentValueRange.java @@ -0,0 +1,105 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.Immutable; +import com.azure.json.JsonReader; +import com.azure.json.JsonSerializable; +import com.azure.json.JsonToken; +import com.azure.json.JsonWriter; +import java.io.IOException; + +/** + * A range of values. + */ +@Immutable +public final class AssessmentValueRange implements JsonSerializable { + /* + * The minimum value. + */ + @Generated + private final String minimum; + + /* + * The maximum value. + */ + @Generated + private final String maximum; + + /** + * Creates an instance of AssessmentValueRange class. + * + * @param minimum the minimum value to set. + * @param maximum the maximum value to set. + */ + @Generated + private AssessmentValueRange(String minimum, String maximum) { + this.minimum = minimum; + this.maximum = maximum; + } + + /** + * Get the minimum property: The minimum value. + * + * @return the minimum value. + */ + @Generated + public String getMinimum() { + return this.minimum; + } + + /** + * Get the maximum property: The maximum value. + * + * @return the maximum value. + */ + @Generated + public String getMaximum() { + return this.maximum; + } + + /** + * {@inheritDoc} + */ + @Generated + @Override + public JsonWriter toJson(JsonWriter jsonWriter) throws IOException { + jsonWriter.writeStartObject(); + jsonWriter.writeStringField("minimum", this.minimum); + jsonWriter.writeStringField("maximum", this.maximum); + return jsonWriter.writeEndObject(); + } + + /** + * Reads an instance of AssessmentValueRange from the JsonReader. + * + * @param jsonReader The JsonReader being read. + * @return An instance of AssessmentValueRange if the JsonReader was pointing to an instance of it, or null if it + * was pointing to JSON null. + * @throws IllegalStateException If the deserialized JSON object was missing any required properties. + * @throws IOException If an error occurs while reading the AssessmentValueRange. + */ + @Generated + public static AssessmentValueRange fromJson(JsonReader jsonReader) throws IOException { + return jsonReader.readObject(reader -> { + String minimum = null; + String maximum = null; + while (reader.nextToken() != JsonToken.END_OBJECT) { + String fieldName = reader.getFieldName(); + reader.nextToken(); + + if ("minimum".equals(fieldName)) { + minimum = reader.getString(); + } else if ("maximum".equals(fieldName)) { + maximum = reader.getString(); + } else { + reader.skipChildren(); + } + } + return new AssessmentValueRange(minimum, maximum); + }); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceInference.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceInference.java new file mode 100644 index 000000000000..2df51ee2ccd2 --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceInference.java @@ -0,0 +1,229 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.Immutable; +import com.azure.json.JsonReader; +import com.azure.json.JsonToken; +import com.azure.json.JsonWriter; +import java.io.IOException; +import java.util.List; + +/** + * A guidance inference collects structured information about a specific finding in the report and can possibly propose + * appropriate follow-up recommendations, based upon established, evidence-based best practices i.e. ACR guidelines. + */ +@Immutable +public final class GuidanceInference extends RadiologyInsightsInference { + /* + * Discriminator property for RadiologyInsightsInference. + */ + @Generated + private RadiologyInsightsInferenceType kind = RadiologyInsightsInferenceType.GUIDANCE; + + /* + * The finding associated with the guidance. + */ + @Generated + private final FindingInference finding; + + /* + * The guidance identifier, as a concept + */ + @Generated + private final FhirR4CodeableConcept identifier; + + /* + * presentGuidanceInformation lists each item of the structured information (e.g. laterality) and corresponding + * details (left, right, bilateral) that is present in the document. + */ + @Generated + private List presentGuidanceInformation; + + /* + * See doc of GuidanceRankingType. + */ + @Generated + private final GuidanceRankingType ranking; + + /* + * The proposed follow-up recommendations, if any. If this is filled, missingGuidanceInformation cannot be filled + * (and vice versa). + */ + @Generated + private List recommendationProposals; + + /* + * Contains all missing items that are needed to determine follow-up. + */ + @Generated + private List missingGuidanceInformation; + + /** + * Creates an instance of GuidanceInference class. + * + * @param finding the finding value to set. + * @param identifier the identifier value to set. + * @param ranking the ranking value to set. + */ + @Generated + private GuidanceInference(FindingInference finding, FhirR4CodeableConcept identifier, GuidanceRankingType ranking) { + this.finding = finding; + this.identifier = identifier; + this.ranking = ranking; + } + + /** + * Get the kind property: Discriminator property for RadiologyInsightsInference. + * + * @return the kind value. + */ + @Generated + @Override + public RadiologyInsightsInferenceType getKind() { + return this.kind; + } + + /** + * Get the finding property: The finding associated with the guidance. + * + * @return the finding value. + */ + @Generated + public FindingInference getFinding() { + return this.finding; + } + + /** + * Get the identifier property: The guidance identifier, as a concept. + * + * @return the identifier value. + */ + @Generated + public FhirR4CodeableConcept getIdentifier() { + return this.identifier; + } + + /** + * Get the presentGuidanceInformation property: presentGuidanceInformation lists each item of the structured + * information (e.g. laterality) and corresponding details (left, right, bilateral) that is present in the document. + * + * @return the presentGuidanceInformation value. + */ + @Generated + public List getPresentGuidanceInformation() { + return this.presentGuidanceInformation; + } + + /** + * Get the ranking property: See doc of GuidanceRankingType. + * + * @return the ranking value. + */ + @Generated + public GuidanceRankingType getRanking() { + return this.ranking; + } + + /** + * Get the recommendationProposals property: The proposed follow-up recommendations, if any. If this is filled, + * missingGuidanceInformation cannot be filled (and vice versa). + * + * @return the recommendationProposals value. + */ + @Generated + public List getRecommendationProposals() { + return this.recommendationProposals; + } + + /** + * Get the missingGuidanceInformation property: Contains all missing items that are needed to determine follow-up. + * + * @return the missingGuidanceInformation value. + */ + @Generated + public List getMissingGuidanceInformation() { + return this.missingGuidanceInformation; + } + + /** + * {@inheritDoc} + */ + @Generated + @Override + public JsonWriter toJson(JsonWriter jsonWriter) throws IOException { + jsonWriter.writeStartObject(); + jsonWriter.writeArrayField("extension", getExtension(), (writer, element) -> writer.writeJson(element)); + jsonWriter.writeJsonField("finding", this.finding); + jsonWriter.writeJsonField("identifier", this.identifier); + jsonWriter.writeStringField("ranking", this.ranking == null ? null : this.ranking.toString()); + jsonWriter.writeStringField("kind", this.kind == null ? null : this.kind.toString()); + jsonWriter.writeArrayField("presentGuidanceInformation", this.presentGuidanceInformation, + (writer, element) -> writer.writeJson(element)); + jsonWriter.writeArrayField("recommendationProposals", this.recommendationProposals, + (writer, element) -> writer.writeJson(element)); + jsonWriter.writeArrayField("missingGuidanceInformation", this.missingGuidanceInformation, + (writer, element) -> writer.writeString(element)); + return jsonWriter.writeEndObject(); + } + + /** + * Reads an instance of GuidanceInference from the JsonReader. + * + * @param jsonReader The JsonReader being read. + * @return An instance of GuidanceInference if the JsonReader was pointing to an instance of it, or null if it was + * pointing to JSON null. + * @throws IllegalStateException If the deserialized JSON object was missing any required properties. + * @throws IOException If an error occurs while reading the GuidanceInference. + */ + @Generated + public static GuidanceInference fromJson(JsonReader jsonReader) throws IOException { + return jsonReader.readObject(reader -> { + List extension = null; + FindingInference finding = null; + FhirR4CodeableConcept identifier = null; + GuidanceRankingType ranking = null; + RadiologyInsightsInferenceType kind = RadiologyInsightsInferenceType.GUIDANCE; + List presentGuidanceInformation = null; + List recommendationProposals = null; + List missingGuidanceInformation = null; + while (reader.nextToken() != JsonToken.END_OBJECT) { + String fieldName = reader.getFieldName(); + reader.nextToken(); + + if ("extension".equals(fieldName)) { + extension = reader.readArray(reader1 -> FhirR4Extension.fromJson(reader1)); + } else if ("finding".equals(fieldName)) { + finding = FindingInference.fromJson(reader); + } else if ("identifier".equals(fieldName)) { + identifier = FhirR4CodeableConcept.fromJson(reader); + } else if ("ranking".equals(fieldName)) { + ranking = GuidanceRankingType.fromString(reader.getString()); + } else if ("kind".equals(fieldName)) { + kind = RadiologyInsightsInferenceType.fromString(reader.getString()); + } else if ("presentGuidanceInformation".equals(fieldName)) { + presentGuidanceInformation + = reader.readArray(reader1 -> PresentGuidanceInformation.fromJson(reader1)); + } else if ("recommendationProposals".equals(fieldName)) { + recommendationProposals + = reader.readArray(reader1 -> FollowupRecommendationInference.fromJson(reader1)); + } else if ("missingGuidanceInformation".equals(fieldName)) { + missingGuidanceInformation = reader.readArray(reader1 -> reader1.getString()); + } else { + reader.skipChildren(); + } + } + GuidanceInference deserializedGuidanceInference = new GuidanceInference(finding, identifier, ranking); + deserializedGuidanceInference.setExtension(extension); + deserializedGuidanceInference.kind = kind; + deserializedGuidanceInference.presentGuidanceInformation = presentGuidanceInformation; + deserializedGuidanceInference.recommendationProposals = recommendationProposals; + deserializedGuidanceInference.missingGuidanceInformation = missingGuidanceInformation; + + return deserializedGuidanceInference; + }); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceOptions.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceOptions.java new file mode 100644 index 000000000000..790723211dda --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceOptions.java @@ -0,0 +1,85 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.Immutable; +import com.azure.json.JsonReader; +import com.azure.json.JsonSerializable; +import com.azure.json.JsonToken; +import com.azure.json.JsonWriter; +import java.io.IOException; + +/** + * Guidance options. + */ +@Immutable +public final class GuidanceOptions implements JsonSerializable { + /* + * If this is true, also show guidances from a clinical history section i.e. if the first token of the associated + * finding's clinical indicator is in this section. Default is false. + */ + @Generated + private final boolean showGuidanceInHistory; + + /** + * Creates an instance of GuidanceOptions class. + * + * @param showGuidanceInHistory the showGuidanceInHistory value to set. + */ + @Generated + public GuidanceOptions(boolean showGuidanceInHistory) { + this.showGuidanceInHistory = showGuidanceInHistory; + } + + /** + * Get the showGuidanceInHistory property: If this is true, also show guidances from a clinical history section i.e. + * if the first token of the associated finding's clinical indicator is in this section. Default is false. + * + * @return the showGuidanceInHistory value. + */ + @Generated + public boolean isShowGuidanceInHistory() { + return this.showGuidanceInHistory; + } + + /** + * {@inheritDoc} + */ + @Generated + @Override + public JsonWriter toJson(JsonWriter jsonWriter) throws IOException { + jsonWriter.writeStartObject(); + jsonWriter.writeBooleanField("showGuidanceInHistory", this.showGuidanceInHistory); + return jsonWriter.writeEndObject(); + } + + /** + * Reads an instance of GuidanceOptions from the JsonReader. + * + * @param jsonReader The JsonReader being read. + * @return An instance of GuidanceOptions if the JsonReader was pointing to an instance of it, or null if it was + * pointing to JSON null. + * @throws IllegalStateException If the deserialized JSON object was missing any required properties. + * @throws IOException If an error occurs while reading the GuidanceOptions. + */ + @Generated + public static GuidanceOptions fromJson(JsonReader jsonReader) throws IOException { + return jsonReader.readObject(reader -> { + boolean showGuidanceInHistory = false; + while (reader.nextToken() != JsonToken.END_OBJECT) { + String fieldName = reader.getFieldName(); + reader.nextToken(); + + if ("showGuidanceInHistory".equals(fieldName)) { + showGuidanceInHistory = reader.getBoolean(); + } else { + reader.skipChildren(); + } + } + return new GuidanceOptions(showGuidanceInHistory); + }); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceRankingType.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceRankingType.java new file mode 100644 index 000000000000..c4da093e7052 --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/GuidanceRankingType.java @@ -0,0 +1,57 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.util.ExpandableStringEnum; +import java.util.Collection; + +/** + * Refers to how important a clinical guidance is. + */ +public final class GuidanceRankingType extends ExpandableStringEnum { + /** + * high. + */ + @Generated + public static final GuidanceRankingType HIGH = fromString("high"); + + /** + * low. + */ + @Generated + public static final GuidanceRankingType LOW = fromString("low"); + + /** + * Creates a new instance of GuidanceRankingType value. + * + * @deprecated Use the {@link #fromString(String)} factory method. + */ + @Generated + @Deprecated + public GuidanceRankingType() { + } + + /** + * Creates or finds a GuidanceRankingType from its string representation. + * + * @param name a name to look for. + * @return the corresponding GuidanceRankingType. + */ + @Generated + public static GuidanceRankingType fromString(String name) { + return fromString(name, GuidanceRankingType.class); + } + + /** + * Gets known GuidanceRankingType values. + * + * @return known GuidanceRankingType values. + */ + @Generated + public static Collection values() { + return values(GuidanceRankingType.class); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/PresentGuidanceInformation.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/PresentGuidanceInformation.java new file mode 100644 index 000000000000..304ba69596d2 --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/PresentGuidanceInformation.java @@ -0,0 +1,173 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.Immutable; +import com.azure.json.JsonReader; +import com.azure.json.JsonSerializable; +import com.azure.json.JsonToken; +import com.azure.json.JsonWriter; +import java.io.IOException; +import java.util.List; + +/** + * An item of the structured information (e.g. laterality or size) and one or more corresponding details (e.g. left or + * size-value). + */ +@Immutable +public final class PresentGuidanceInformation implements JsonSerializable { + /* + * The item of the structured information + */ + @Generated + private final String presentGuidanceItem; + + /* + * A list of size values, if the item is about size. + */ + @Generated + private List sizes; + + /* + * The maximum diameter value, if the item is about the maximum diameter. + */ + @Generated + private FhirR4Quantity maximumDiameterAsInText; + + /* + * The list of item values that are mentioned in the report. + */ + @Generated + private List presentGuidanceValues; + + /* + * Additional Content defined by implementations + */ + @Generated + private List extension; + + /** + * Creates an instance of PresentGuidanceInformation class. + * + * @param presentGuidanceItem the presentGuidanceItem value to set. + */ + @Generated + private PresentGuidanceInformation(String presentGuidanceItem) { + this.presentGuidanceItem = presentGuidanceItem; + } + + /** + * Get the presentGuidanceItem property: The item of the structured information. + * + * @return the presentGuidanceItem value. + */ + @Generated + public String getPresentGuidanceItem() { + return this.presentGuidanceItem; + } + + /** + * Get the sizes property: A list of size values, if the item is about size. + * + * @return the sizes value. + */ + @Generated + public List getSizes() { + return this.sizes; + } + + /** + * Get the maximumDiameterAsInText property: The maximum diameter value, if the item is about the maximum diameter. + * + * @return the maximumDiameterAsInText value. + */ + @Generated + public FhirR4Quantity getMaximumDiameterAsInText() { + return this.maximumDiameterAsInText; + } + + /** + * Get the presentGuidanceValues property: The list of item values that are mentioned in the report. + * + * @return the presentGuidanceValues value. + */ + @Generated + public List getPresentGuidanceValues() { + return this.presentGuidanceValues; + } + + /** + * Get the extension property: Additional Content defined by implementations. + * + * @return the extension value. + */ + @Generated + public List getExtension() { + return this.extension; + } + + /** + * {@inheritDoc} + */ + @Generated + @Override + public JsonWriter toJson(JsonWriter jsonWriter) throws IOException { + jsonWriter.writeStartObject(); + jsonWriter.writeStringField("presentGuidanceItem", this.presentGuidanceItem); + jsonWriter.writeArrayField("sizes", this.sizes, (writer, element) -> writer.writeJson(element)); + jsonWriter.writeJsonField("maximumDiameterAsInText", this.maximumDiameterAsInText); + jsonWriter.writeArrayField("presentGuidanceValues", this.presentGuidanceValues, + (writer, element) -> writer.writeString(element)); + jsonWriter.writeArrayField("extension", this.extension, (writer, element) -> writer.writeJson(element)); + return jsonWriter.writeEndObject(); + } + + /** + * Reads an instance of PresentGuidanceInformation from the JsonReader. + * + * @param jsonReader The JsonReader being read. + * @return An instance of PresentGuidanceInformation if the JsonReader was pointing to an instance of it, or null if + * it was pointing to JSON null. + * @throws IllegalStateException If the deserialized JSON object was missing any required properties. + * @throws IOException If an error occurs while reading the PresentGuidanceInformation. + */ + @Generated + public static PresentGuidanceInformation fromJson(JsonReader jsonReader) throws IOException { + return jsonReader.readObject(reader -> { + String presentGuidanceItem = null; + List sizes = null; + FhirR4Quantity maximumDiameterAsInText = null; + List presentGuidanceValues = null; + List extension = null; + while (reader.nextToken() != JsonToken.END_OBJECT) { + String fieldName = reader.getFieldName(); + reader.nextToken(); + + if ("presentGuidanceItem".equals(fieldName)) { + presentGuidanceItem = reader.getString(); + } else if ("sizes".equals(fieldName)) { + sizes = reader.readArray(reader1 -> FhirR4Observation.fromJson(reader1)); + } else if ("maximumDiameterAsInText".equals(fieldName)) { + maximumDiameterAsInText = FhirR4Quantity.fromJson(reader); + } else if ("presentGuidanceValues".equals(fieldName)) { + presentGuidanceValues = reader.readArray(reader1 -> reader1.getString()); + } else if ("extension".equals(fieldName)) { + extension = reader.readArray(reader1 -> FhirR4Extension.fromJson(reader1)); + } else { + reader.skipChildren(); + } + } + PresentGuidanceInformation deserializedPresentGuidanceInformation + = new PresentGuidanceInformation(presentGuidanceItem); + deserializedPresentGuidanceInformation.sizes = sizes; + deserializedPresentGuidanceInformation.maximumDiameterAsInText = maximumDiameterAsInText; + deserializedPresentGuidanceInformation.presentGuidanceValues = presentGuidanceValues; + deserializedPresentGuidanceInformation.extension = extension; + + return deserializedPresentGuidanceInformation; + }); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureComplianceType.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureComplianceType.java new file mode 100644 index 000000000000..13030c3637cd --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureComplianceType.java @@ -0,0 +1,69 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.util.ExpandableStringEnum; +import java.util.Collection; + +/** + * Whether the document is compliant. + */ +public final class QualityMeasureComplianceType extends ExpandableStringEnum { + /** + * not eligible. + */ + @Generated + public static final QualityMeasureComplianceType NOT_ELIGIBLE = fromString("notEligible"); + + /** + * performance not met. + */ + @Generated + public static final QualityMeasureComplianceType PERFORMANCE_NOT_MET = fromString("performanceNotMet"); + + /** + * performance met. + */ + @Generated + public static final QualityMeasureComplianceType PERFORMANCE_MET = fromString("performanceMet"); + + /** + * denominator exception. + */ + @Generated + public static final QualityMeasureComplianceType DENOMINATOR_EXCEPTION = fromString("denominatorException"); + + /** + * Creates a new instance of QualityMeasureComplianceType value. + * + * @deprecated Use the {@link #fromString(String)} factory method. + */ + @Generated + @Deprecated + public QualityMeasureComplianceType() { + } + + /** + * Creates or finds a QualityMeasureComplianceType from its string representation. + * + * @param name a name to look for. + * @return the corresponding QualityMeasureComplianceType. + */ + @Generated + public static QualityMeasureComplianceType fromString(String name) { + return fromString(name, QualityMeasureComplianceType.class); + } + + /** + * Gets known QualityMeasureComplianceType values. + * + * @return known QualityMeasureComplianceType values. + */ + @Generated + public static Collection values() { + return values(QualityMeasureComplianceType.class); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureInference.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureInference.java new file mode 100644 index 000000000000..80d8d11c1301 --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureInference.java @@ -0,0 +1,161 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.Immutable; +import com.azure.json.JsonReader; +import com.azure.json.JsonToken; +import com.azure.json.JsonWriter; +import java.io.IOException; +import java.util.List; + +/** + * A QualityMeasure inference captures the MIPS ('measure based incentive payment system') quality measure criteria in + * the document that are used to measure the data completeness. + */ +@Immutable +public final class QualityMeasureInference extends RadiologyInsightsInference { + /* + * Discriminator property for RadiologyInsightsInference. + */ + @Generated + private RadiologyInsightsInferenceType kind = RadiologyInsightsInferenceType.QUALITY_MEASURE; + + /* + * The denominator, which identifies the QualityMeasure kind. + */ + @Generated + private final String qualityMeasureDenominator; + + /* + * The ComplianceType indicates whether the document is compliant for the specified QualityMeasure or not, or if + * exceptions apply. + */ + @Generated + private final QualityMeasureComplianceType complianceType; + + /* + * List of quality criteria identified in the document, if any. + */ + @Generated + private List qualityCriteria; + + /** + * Creates an instance of QualityMeasureInference class. + * + * @param qualityMeasureDenominator the qualityMeasureDenominator value to set. + * @param complianceType the complianceType value to set. + */ + @Generated + private QualityMeasureInference(String qualityMeasureDenominator, QualityMeasureComplianceType complianceType) { + this.qualityMeasureDenominator = qualityMeasureDenominator; + this.complianceType = complianceType; + } + + /** + * Get the kind property: Discriminator property for RadiologyInsightsInference. + * + * @return the kind value. + */ + @Generated + @Override + public RadiologyInsightsInferenceType getKind() { + return this.kind; + } + + /** + * Get the qualityMeasureDenominator property: The denominator, which identifies the QualityMeasure kind. + * + * @return the qualityMeasureDenominator value. + */ + @Generated + public String getQualityMeasureDenominator() { + return this.qualityMeasureDenominator; + } + + /** + * Get the complianceType property: The ComplianceType indicates whether the document is compliant for the specified + * QualityMeasure or not, or if exceptions apply. + * + * @return the complianceType value. + */ + @Generated + public QualityMeasureComplianceType getComplianceType() { + return this.complianceType; + } + + /** + * Get the qualityCriteria property: List of quality criteria identified in the document, if any. + * + * @return the qualityCriteria value. + */ + @Generated + public List getQualityCriteria() { + return this.qualityCriteria; + } + + /** + * {@inheritDoc} + */ + @Generated + @Override + public JsonWriter toJson(JsonWriter jsonWriter) throws IOException { + jsonWriter.writeStartObject(); + jsonWriter.writeArrayField("extension", getExtension(), (writer, element) -> writer.writeJson(element)); + jsonWriter.writeStringField("qualityMeasureDenominator", this.qualityMeasureDenominator); + jsonWriter.writeStringField("complianceType", + this.complianceType == null ? null : this.complianceType.toString()); + jsonWriter.writeStringField("kind", this.kind == null ? null : this.kind.toString()); + jsonWriter.writeArrayField("qualityCriteria", this.qualityCriteria, + (writer, element) -> writer.writeString(element)); + return jsonWriter.writeEndObject(); + } + + /** + * Reads an instance of QualityMeasureInference from the JsonReader. + * + * @param jsonReader The JsonReader being read. + * @return An instance of QualityMeasureInference if the JsonReader was pointing to an instance of it, or null if it + * was pointing to JSON null. + * @throws IllegalStateException If the deserialized JSON object was missing any required properties. + * @throws IOException If an error occurs while reading the QualityMeasureInference. + */ + @Generated + public static QualityMeasureInference fromJson(JsonReader jsonReader) throws IOException { + return jsonReader.readObject(reader -> { + List extension = null; + String qualityMeasureDenominator = null; + QualityMeasureComplianceType complianceType = null; + RadiologyInsightsInferenceType kind = RadiologyInsightsInferenceType.QUALITY_MEASURE; + List qualityCriteria = null; + while (reader.nextToken() != JsonToken.END_OBJECT) { + String fieldName = reader.getFieldName(); + reader.nextToken(); + + if ("extension".equals(fieldName)) { + extension = reader.readArray(reader1 -> FhirR4Extension.fromJson(reader1)); + } else if ("qualityMeasureDenominator".equals(fieldName)) { + qualityMeasureDenominator = reader.getString(); + } else if ("complianceType".equals(fieldName)) { + complianceType = QualityMeasureComplianceType.fromString(reader.getString()); + } else if ("kind".equals(fieldName)) { + kind = RadiologyInsightsInferenceType.fromString(reader.getString()); + } else if ("qualityCriteria".equals(fieldName)) { + qualityCriteria = reader.readArray(reader1 -> reader1.getString()); + } else { + reader.skipChildren(); + } + } + QualityMeasureInference deserializedQualityMeasureInference + = new QualityMeasureInference(qualityMeasureDenominator, complianceType); + deserializedQualityMeasureInference.setExtension(extension); + deserializedQualityMeasureInference.kind = kind; + deserializedQualityMeasureInference.qualityCriteria = qualityCriteria; + + return deserializedQualityMeasureInference; + }); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureOptions.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureOptions.java new file mode 100644 index 000000000000..b10b27d3d7c7 --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureOptions.java @@ -0,0 +1,85 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.Immutable; +import com.azure.json.JsonReader; +import com.azure.json.JsonSerializable; +import com.azure.json.JsonToken; +import com.azure.json.JsonWriter; +import java.io.IOException; +import java.util.List; + +/** + * Quality Measure Options. + */ +@Immutable +public final class QualityMeasureOptions implements JsonSerializable { + /* + * Id(s) of the MIPS measures that need to be evaluated in the document + */ + @Generated + private final List measureTypes; + + /** + * Creates an instance of QualityMeasureOptions class. + * + * @param measureTypes the measureTypes value to set. + */ + @Generated + public QualityMeasureOptions(List measureTypes) { + this.measureTypes = measureTypes; + } + + /** + * Get the measureTypes property: Id(s) of the MIPS measures that need to be evaluated in the document. + * + * @return the measureTypes value. + */ + @Generated + public List getMeasureTypes() { + return this.measureTypes; + } + + /** + * {@inheritDoc} + */ + @Generated + @Override + public JsonWriter toJson(JsonWriter jsonWriter) throws IOException { + jsonWriter.writeStartObject(); + jsonWriter.writeArrayField("measureTypes", this.measureTypes, + (writer, element) -> writer.writeString(element == null ? null : element.toString())); + return jsonWriter.writeEndObject(); + } + + /** + * Reads an instance of QualityMeasureOptions from the JsonReader. + * + * @param jsonReader The JsonReader being read. + * @return An instance of QualityMeasureOptions if the JsonReader was pointing to an instance of it, or null if it + * was pointing to JSON null. + * @throws IllegalStateException If the deserialized JSON object was missing any required properties. + * @throws IOException If an error occurs while reading the QualityMeasureOptions. + */ + @Generated + public static QualityMeasureOptions fromJson(JsonReader jsonReader) throws IOException { + return jsonReader.readObject(reader -> { + List measureTypes = null; + while (reader.nextToken() != JsonToken.END_OBJECT) { + String fieldName = reader.getFieldName(); + reader.nextToken(); + + if ("measureTypes".equals(fieldName)) { + measureTypes = reader.readArray(reader1 -> QualityMeasureType.fromString(reader1.getString())); + } else { + reader.skipChildren(); + } + } + return new QualityMeasureOptions(measureTypes); + }); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureType.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureType.java new file mode 100644 index 000000000000..4f4e76d72308 --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/QualityMeasureType.java @@ -0,0 +1,183 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.util.ExpandableStringEnum; +import java.util.Collection; + +/** + * Mips types that can be checked by the engine. + */ +public final class QualityMeasureType extends ExpandableStringEnum { + /** + * Mips 76. + */ + @Generated + public static final QualityMeasureType MIPS_76 = fromString("mips76"); + + /** + * Mips 147. + */ + @Generated + public static final QualityMeasureType MIPS_147 = fromString("mips147"); + + /** + * Mips 195. + */ + @Generated + public static final QualityMeasureType MIPS_195 = fromString("mips195"); + + /** + * Mips 360. + */ + @Generated + public static final QualityMeasureType MIPS_360 = fromString("mips360"); + + /** + * Mips 364. + */ + @Generated + public static final QualityMeasureType MIPS_364 = fromString("mips364"); + + /** + * Mips 405. + */ + @Generated + public static final QualityMeasureType MIPS_405 = fromString("mips405"); + + /** + * Mips 406. + */ + @Generated + public static final QualityMeasureType MIPS_406 = fromString("mips406"); + + /** + * Mips 436. + */ + @Generated + public static final QualityMeasureType MIPS_436 = fromString("mips436"); + + /** + * Mips 145. + */ + @Generated + public static final QualityMeasureType MIPS_145 = fromString("mips145"); + + /** + * Acrad 36. + */ + @Generated + public static final QualityMeasureType ACRAD_36 = fromString("acrad36"); + + /** + * Acrad 37. + */ + @Generated + public static final QualityMeasureType ACRAD_37 = fromString("acrad37"); + + /** + * Acrad 38. + */ + @Generated + public static final QualityMeasureType ACRAD_38 = fromString("acrad38"); + + /** + * Acrad 39. + */ + @Generated + public static final QualityMeasureType ACRAD_39 = fromString("acrad39"); + + /** + * Acrad 40. + */ + @Generated + public static final QualityMeasureType ACRAD_40 = fromString("acrad40"); + + /** + * Acrad 41. + */ + @Generated + public static final QualityMeasureType ACRAD_41 = fromString("acrad41"); + + /** + * Acrad 42. + */ + @Generated + public static final QualityMeasureType ACRAD_42 = fromString("acrad42"); + + /** + * Mednax55. + */ + @Generated + public static final QualityMeasureType MEDNAX_55 = fromString("mednax55"); + + /** + * Msn13. + */ + @Generated + public static final QualityMeasureType MSN_13 = fromString("msn13"); + + /** + * Msn15. + */ + @Generated + public static final QualityMeasureType MSN_15 = fromString("msn15"); + + /** + * Qmm26. + */ + @Generated + public static final QualityMeasureType QMM_26 = fromString("qmm26"); + + /** + * Qmm17. + */ + @Generated + public static final QualityMeasureType QMM_17 = fromString("qmm17"); + + /** + * Qmm18. + */ + @Generated + public static final QualityMeasureType QMM_18 = fromString("qmm18"); + + /** + * Qmm19. + */ + @Generated + public static final QualityMeasureType QMM_19 = fromString("qmm19"); + + /** + * Creates a new instance of QualityMeasureType value. + * + * @deprecated Use the {@link #fromString(String)} factory method. + */ + @Generated + @Deprecated + public QualityMeasureType() { + } + + /** + * Creates or finds a QualityMeasureType from its string representation. + * + * @param name a name to look for. + * @return the corresponding QualityMeasureType. + */ + @Generated + public static QualityMeasureType fromString(String name) { + return fromString(name, QualityMeasureType.class); + } + + /** + * Gets known QualityMeasureType values. + * + * @return known QualityMeasureType values. + */ + @Generated + public static Collection values() { + return values(QualityMeasureType.class); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInference.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInference.java index 3a8dc34b99f3..0237ba8453f6 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInference.java +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInference.java @@ -138,6 +138,12 @@ public static RadiologyInsightsInference fromJson(JsonReader jsonReader) throws return FollowupRecommendationInference.fromJson(readerToUse.reset()); } else if ("followupCommunication".equals(discriminatorValue)) { return FollowupCommunicationInference.fromJson(readerToUse.reset()); + } else if ("scoringAndAssessment".equals(discriminatorValue)) { + return ScoringAndAssessmentInference.fromJson(readerToUse.reset()); + } else if ("guidance".equals(discriminatorValue)) { + return GuidanceInference.fromJson(readerToUse.reset()); + } else if ("qualityMeasure".equals(discriminatorValue)) { + return QualityMeasureInference.fromJson(readerToUse.reset()); } else { return fromJsonKnownDiscriminator(readerToUse.reset()); } diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInferenceOptions.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInferenceOptions.java index c0f526fe4245..07a6ace67371 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInferenceOptions.java +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInferenceOptions.java @@ -90,6 +90,8 @@ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException { jsonWriter.writeStartObject(); jsonWriter.writeJsonField("followupRecommendationOptions", this.followupRecommendationOptions); jsonWriter.writeJsonField("findingOptions", this.findingOptions); + jsonWriter.writeJsonField("guidanceOptions", this.guidanceOptions); + jsonWriter.writeJsonField("qualityMeasureOptions", this.qualityMeasureOptions); return jsonWriter.writeEndObject(); } @@ -114,6 +116,11 @@ public static RadiologyInsightsInferenceOptions fromJson(JsonReader jsonReader) = FollowupRecommendationOptions.fromJson(reader); } else if ("findingOptions".equals(fieldName)) { deserializedRadiologyInsightsInferenceOptions.findingOptions = FindingOptions.fromJson(reader); + } else if ("guidanceOptions".equals(fieldName)) { + deserializedRadiologyInsightsInferenceOptions.guidanceOptions = GuidanceOptions.fromJson(reader); + } else if ("qualityMeasureOptions".equals(fieldName)) { + deserializedRadiologyInsightsInferenceOptions.qualityMeasureOptions + = QualityMeasureOptions.fromJson(reader); } else { reader.skipChildren(); } @@ -121,4 +128,60 @@ public static RadiologyInsightsInferenceOptions fromJson(JsonReader jsonReader) return deserializedRadiologyInsightsInferenceOptions; }); } + + /* + * Guidance options. + */ + @Generated + private GuidanceOptions guidanceOptions; + + /* + * QualityMeasureOptions. + */ + @Generated + private QualityMeasureOptions qualityMeasureOptions; + + /** + * Get the guidanceOptions property: Guidance options. + * + * @return the guidanceOptions value. + */ + @Generated + public GuidanceOptions getGuidanceOptions() { + return this.guidanceOptions; + } + + /** + * Set the guidanceOptions property: Guidance options. + * + * @param guidanceOptions the guidanceOptions value to set. + * @return the RadiologyInsightsInferenceOptions object itself. + */ + @Generated + public RadiologyInsightsInferenceOptions setGuidanceOptions(GuidanceOptions guidanceOptions) { + this.guidanceOptions = guidanceOptions; + return this; + } + + /** + * Get the qualityMeasureOptions property: QualityMeasureOptions. + * + * @return the qualityMeasureOptions value. + */ + @Generated + public QualityMeasureOptions getQualityMeasureOptions() { + return this.qualityMeasureOptions; + } + + /** + * Set the qualityMeasureOptions property: QualityMeasureOptions. + * + * @param qualityMeasureOptions the qualityMeasureOptions value to set. + * @return the RadiologyInsightsInferenceOptions object itself. + */ + @Generated + public RadiologyInsightsInferenceOptions setQualityMeasureOptions(QualityMeasureOptions qualityMeasureOptions) { + this.qualityMeasureOptions = qualityMeasureOptions; + return this; + } } diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInferenceType.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInferenceType.java index 65821efc8e3f..56bdc896e441 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInferenceType.java +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/RadiologyInsightsInferenceType.java @@ -104,4 +104,22 @@ public static RadiologyInsightsInferenceType fromString(String name) { public static Collection values() { return values(RadiologyInsightsInferenceType.class); } + + /** + * Scoring and assessment inference type. + */ + @Generated + public static final RadiologyInsightsInferenceType SCORING_AND_ASSESSMENT = fromString("scoringAndAssessment"); + + /** + * Guidance inference type. + */ + @Generated + public static final RadiologyInsightsInferenceType GUIDANCE = fromString("guidance"); + + /** + * Guidance measure inference type. + */ + @Generated + public static final RadiologyInsightsInferenceType QUALITY_MEASURE = fromString("qualityMeasure"); } diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/ScoringAndAssessmentCategoryType.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/ScoringAndAssessmentCategoryType.java new file mode 100644 index 000000000000..2591c0c4c249 --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/ScoringAndAssessmentCategoryType.java @@ -0,0 +1,262 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.util.ExpandableStringEnum; +import java.util.Collection; + +/** + * The category that gets a value, e.g. BIRADS, Z-SCORE or FRAX SCORE. + */ +public final class ScoringAndAssessmentCategoryType extends ExpandableStringEnum { + /** + * BIRADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType BIRADS = fromString("BIRADS"); + + /** + * C-RADS COLONIC FINDINGS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType C_RADS_COLONIC_FINDINGS + = fromString("C-RADS COLONIC FINDINGS"); + + /** + * CAD-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType CAD_RADS = fromString("CAD-RADS"); + + /** + * LI-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType LI_RADS = fromString("LI-RADS"); + + /** + * LUNG-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType LUNG_RADS = fromString("LUNG-RADS"); + + /** + * NI-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType NI_RADS = fromString("NI-RADS"); + + /** + * O-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType O_RADS = fromString("O-RADS"); + + /** + * PI-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType PI_RADS = fromString("PI-RADS"); + + /** + * TI-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType TI_RADS = fromString("TI-RADS"); + + /** + * C-RADS EXTRACOLONIC FINDINGS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType C_RADS_EXTRACOLONIC_FINDINGS + = fromString("C-RADS EXTRACOLONIC FINDINGS"); + + /** + * LIFETIME BREAST CANCER RISK. + */ + @Generated + public static final ScoringAndAssessmentCategoryType LIFETIME_BREAST_CANCER_RISK + = fromString("LIFETIME BREAST CANCER RISK"); + + /** + * ASCVD RISK. + */ + @Generated + public static final ScoringAndAssessmentCategoryType ASCVD_RISK = fromString("ASCVD RISK"); + + /** + * MODIFIED GAIL MODEL RISK. + */ + @Generated + public static final ScoringAndAssessmentCategoryType MODIFIED_GAIL_MODEL_RISK + = fromString("MODIFIED GAIL MODEL RISK"); + + /** + * TYRER CUSICK MODEL RISK. + */ + @Generated + public static final ScoringAndAssessmentCategoryType TYRER_CUSICK_MODEL_RISK + = fromString("TYRER CUSICK MODEL RISK"); + + /** + * AGATSTON SCORE. + */ + @Generated + public static final ScoringAndAssessmentCategoryType AGATSTON_SCORE = fromString("AGATSTON SCORE"); + + /** + * 10 YEAR CHD RISK. + */ + @Generated + public static final ScoringAndAssessmentCategoryType TEN_YEAR_CHD_RISK = fromString("10 YEAR CHD RISK"); + + /** + * Z-SCORE. + */ + @Generated + public static final ScoringAndAssessmentCategoryType Z_SCORE = fromString("Z-SCORE"); + + /** + * T-SCORE. + */ + @Generated + public static final ScoringAndAssessmentCategoryType T_SCORE = fromString("T-SCORE"); + + /** + * CALCIUM VOLUME SCORE. + */ + @Generated + public static final ScoringAndAssessmentCategoryType CALCIUM_VOLUME_SCORE = fromString("CALCIUM VOLUME SCORE"); + + /** + * US LI-RADS VISUALIZATION SCORE. + */ + @Generated + public static final ScoringAndAssessmentCategoryType US_LI_RADS_VISUALIZATION_SCORE + = fromString("US LI-RADS VISUALIZATION SCORE"); + + /** + * US LI-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType US_LI_RADS = fromString("US LI-RADS"); + + /** + * CEUS LI-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType CEUS_LI_RADS = fromString("CEUS LI-RADS"); + + /** + * TREATMENT RESPONSE LI-RADS. + */ + @Generated + public static final ScoringAndAssessmentCategoryType TREATMENT_RESPONSE_LI_RADS + = fromString("TREATMENT RESPONSE LI-RADS"); + + /** + * O-RADS MRI. + */ + @Generated + public static final ScoringAndAssessmentCategoryType O_RADS_MRI = fromString("O-RADS MRI"); + + /** + * CALCIUM MASS SCORE. + */ + @Generated + public static final ScoringAndAssessmentCategoryType CALCIUM_MASS_SCORE = fromString("CALCIUM MASS SCORE"); + + /** + * RISK OF MALIGNANCY INDEX. + */ + @Generated + public static final ScoringAndAssessmentCategoryType RISK_OF_MALIGNANCY_INDEX + = fromString("RISK OF MALIGNANCY INDEX"); + + /** + * HNPCC MUTATION RISK. + */ + @Generated + public static final ScoringAndAssessmentCategoryType HNPCC_MUTATION_RISK = fromString("HNPCC MUTATION RISK"); + + /** + * ALBERTA STROKE PROGRAM EARLY CT SCORE. + */ + @Generated + public static final ScoringAndAssessmentCategoryType ALBERTA_STROKE_PROGRAM_EARLY_CT_SCORE + = fromString("ALBERTA STROKE PROGRAM EARLY CT SCORE"); + + /** + * KELLGREN-LAWRENCE GRADING SCALE. + */ + @Generated + public static final ScoringAndAssessmentCategoryType KELLGREN_LAWRENCE_GRADING_SCALE + = fromString("KELLGREN-LAWRENCE GRADING SCALE"); + + /** + * TONNIS CLASSIFICATION. + */ + @Generated + public static final ScoringAndAssessmentCategoryType TONNIS_CLASSIFICATION = fromString("TONNIS CLASSIFICATION"); + + /** + * CALCIUM SCORE (UNSPECIFIED). + */ + @Generated + public static final ScoringAndAssessmentCategoryType CALCIUM_SCORE_UNSPECIFIED + = fromString("CALCIUM SCORE (UNSPECIFIED)"); + + /** + * 10 YEAR CHD RISK (OBSERVED AGE). + */ + @Generated + public static final ScoringAndAssessmentCategoryType TEN_YEAR_CHD_RISK_OBSERVED_AGE + = fromString("10 YEAR CHD RISK (OBSERVED AGE)"); + + /** + * 10 YEAR CHD RISK (ARTERIAL AGE). + */ + @Generated + public static final ScoringAndAssessmentCategoryType TEN_YEAR_CHD_RISK_ARTERIAL_AGE + = fromString("10 YEAR CHD RISK (ARTERIAL AGE)"); + + /** + * FRAX SCORE. + */ + @Generated + public static final ScoringAndAssessmentCategoryType FRAX_SCORE = fromString("FRAX SCORE"); + + /** + * Creates a new instance of ScoringAndAssessmentCategoryType value. + * + * @deprecated Use the {@link #fromString(String)} factory method. + */ + @Generated + @Deprecated + public ScoringAndAssessmentCategoryType() { + } + + /** + * Creates or finds a ScoringAndAssessmentCategoryType from its string representation. + * + * @param name a name to look for. + * @return the corresponding ScoringAndAssessmentCategoryType. + */ + @Generated + public static ScoringAndAssessmentCategoryType fromString(String name) { + return fromString(name, ScoringAndAssessmentCategoryType.class); + } + + /** + * Gets known ScoringAndAssessmentCategoryType values. + * + * @return known ScoringAndAssessmentCategoryType values. + */ + @Generated + public static Collection values() { + return values(ScoringAndAssessmentCategoryType.class); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/ScoringAndAssessmentInference.java b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/ScoringAndAssessmentInference.java new file mode 100644 index 000000000000..ea82294a6330 --- /dev/null +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/ScoringAndAssessmentInference.java @@ -0,0 +1,178 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. +// Code generated by Microsoft (R) TypeSpec Code Generator. + +package com.azure.health.insights.radiologyinsights.models; + +import com.azure.core.annotation.Generated; +import com.azure.core.annotation.Immutable; +import com.azure.json.JsonReader; +import com.azure.json.JsonToken; +import com.azure.json.JsonWriter; +import java.io.IOException; +import java.util.List; + +/** + * Identifies and highlights Risk, Scoring, Assessment and Classifications and correspondent values dictated in a + * report, e.g. 'BIRADS 5'. + */ +@Immutable +public final class ScoringAndAssessmentInference extends RadiologyInsightsInference { + /* + * Discriminator property for RadiologyInsightsInference. + */ + @Generated + private RadiologyInsightsInferenceType kind = RadiologyInsightsInferenceType.SCORING_AND_ASSESSMENT; + + /* + * Category, e.g. BIRADS + */ + @Generated + private final ScoringAndAssessmentCategoryType category; + + /* + * The expansion of the category (which is an abbreviation.) + */ + @Generated + private final String categoryDescription; + + /* + * The value. If the value is a range, use field valueRange. + */ + @Generated + private String singleValue; + + /* + * The range. + */ + @Generated + private AssessmentValueRange rangeValue; + + /** + * Creates an instance of ScoringAndAssessmentInference class. + * + * @param category the category value to set. + * @param categoryDescription the categoryDescription value to set. + */ + @Generated + private ScoringAndAssessmentInference(ScoringAndAssessmentCategoryType category, String categoryDescription) { + this.category = category; + this.categoryDescription = categoryDescription; + } + + /** + * Get the kind property: Discriminator property for RadiologyInsightsInference. + * + * @return the kind value. + */ + @Generated + @Override + public RadiologyInsightsInferenceType getKind() { + return this.kind; + } + + /** + * Get the category property: Category, e.g. BIRADS. + * + * @return the category value. + */ + @Generated + public ScoringAndAssessmentCategoryType getCategory() { + return this.category; + } + + /** + * Get the categoryDescription property: The expansion of the category (which is an abbreviation.). + * + * @return the categoryDescription value. + */ + @Generated + public String getCategoryDescription() { + return this.categoryDescription; + } + + /** + * Get the singleValue property: The value. If the value is a range, use field valueRange. + * + * @return the singleValue value. + */ + @Generated + public String getSingleValue() { + return this.singleValue; + } + + /** + * Get the rangeValue property: The range. + * + * @return the rangeValue value. + */ + @Generated + public AssessmentValueRange getRangeValue() { + return this.rangeValue; + } + + /** + * {@inheritDoc} + */ + @Generated + @Override + public JsonWriter toJson(JsonWriter jsonWriter) throws IOException { + jsonWriter.writeStartObject(); + jsonWriter.writeArrayField("extension", getExtension(), (writer, element) -> writer.writeJson(element)); + jsonWriter.writeStringField("category", this.category == null ? null : this.category.toString()); + jsonWriter.writeStringField("categoryDescription", this.categoryDescription); + jsonWriter.writeStringField("kind", this.kind == null ? null : this.kind.toString()); + jsonWriter.writeStringField("singleValue", this.singleValue); + jsonWriter.writeJsonField("rangeValue", this.rangeValue); + return jsonWriter.writeEndObject(); + } + + /** + * Reads an instance of ScoringAndAssessmentInference from the JsonReader. + * + * @param jsonReader The JsonReader being read. + * @return An instance of ScoringAndAssessmentInference if the JsonReader was pointing to an instance of it, or null + * if it was pointing to JSON null. + * @throws IllegalStateException If the deserialized JSON object was missing any required properties. + * @throws IOException If an error occurs while reading the ScoringAndAssessmentInference. + */ + @Generated + public static ScoringAndAssessmentInference fromJson(JsonReader jsonReader) throws IOException { + return jsonReader.readObject(reader -> { + List extension = null; + ScoringAndAssessmentCategoryType category = null; + String categoryDescription = null; + RadiologyInsightsInferenceType kind = RadiologyInsightsInferenceType.SCORING_AND_ASSESSMENT; + String singleValue = null; + AssessmentValueRange rangeValue = null; + while (reader.nextToken() != JsonToken.END_OBJECT) { + String fieldName = reader.getFieldName(); + reader.nextToken(); + + if ("extension".equals(fieldName)) { + extension = reader.readArray(reader1 -> FhirR4Extension.fromJson(reader1)); + } else if ("category".equals(fieldName)) { + category = ScoringAndAssessmentCategoryType.fromString(reader.getString()); + } else if ("categoryDescription".equals(fieldName)) { + categoryDescription = reader.getString(); + } else if ("kind".equals(fieldName)) { + kind = RadiologyInsightsInferenceType.fromString(reader.getString()); + } else if ("singleValue".equals(fieldName)) { + singleValue = reader.getString(); + } else if ("rangeValue".equals(fieldName)) { + rangeValue = AssessmentValueRange.fromJson(reader); + } else { + reader.skipChildren(); + } + } + ScoringAndAssessmentInference deserializedScoringAndAssessmentInference + = new ScoringAndAssessmentInference(category, categoryDescription); + deserializedScoringAndAssessmentInference.setExtension(extension); + deserializedScoringAndAssessmentInference.kind = kind; + deserializedScoringAndAssessmentInference.singleValue = singleValue; + deserializedScoringAndAssessmentInference.rangeValue = rangeValue; + + return deserializedScoringAndAssessmentInference; + }); + } +} diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/resources/META-INF/azure-health-insights-radiologyinsights_apiview_properties.json b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/resources/META-INF/azure-health-insights-radiologyinsights_apiview_properties.json index 7584608329b0..96cfd33e5ffd 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/resources/META-INF/azure-health-insights-radiologyinsights_apiview_properties.json +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/resources/META-INF/azure-health-insights-radiologyinsights_apiview_properties.json @@ -9,6 +9,7 @@ "com.azure.health.insights.radiologyinsights.RadiologyInsightsClient.beginInferRadiologyInsightsWithModel": "ClientForAzureHealthInsights.RadiologyInsightsClient.inferRadiologyInsights", "com.azure.health.insights.radiologyinsights.RadiologyInsightsClientBuilder": "ClientForAzureHealthInsights.RadiologyInsightsClient", "com.azure.health.insights.radiologyinsights.models.AgeMismatchInference": "AzureHealthInsights.AgeMismatchInference", + "com.azure.health.insights.radiologyinsights.models.AssessmentValueRange": "AzureHealthInsights.AssessmentValueRange", "com.azure.health.insights.radiologyinsights.models.ClinicalDocumentAuthor": "AzureHealthInsights.DocumentAuthor", "com.azure.health.insights.radiologyinsights.models.ClinicalDocumentContent": "AzureHealthInsights.DocumentContent", "com.azure.health.insights.radiologyinsights.models.ClinicalDocumentContentType": "AzureHealthInsights.DocumentType", @@ -51,6 +52,9 @@ "com.azure.health.insights.radiologyinsights.models.FollowupRecommendationInference": "AzureHealthInsights.FollowupRecommendationInference", "com.azure.health.insights.radiologyinsights.models.FollowupRecommendationOptions": "AzureHealthInsights.FollowupRecommendationOptions", "com.azure.health.insights.radiologyinsights.models.GenericProcedureRecommendation": "AzureHealthInsights.GenericProcedureRecommendation", + "com.azure.health.insights.radiologyinsights.models.GuidanceInference": "AzureHealthInsights.GuidanceInference", + "com.azure.health.insights.radiologyinsights.models.GuidanceOptions": "AzureHealthInsights.GuidanceOptions", + "com.azure.health.insights.radiologyinsights.models.GuidanceRankingType": "AzureHealthInsights.GuidanceRankingType", "com.azure.health.insights.radiologyinsights.models.ImagingProcedure": "AzureHealthInsights.ImagingProcedure", "com.azure.health.insights.radiologyinsights.models.ImagingProcedureRecommendation": "AzureHealthInsights.ImagingProcedureRecommendation", "com.azure.health.insights.radiologyinsights.models.JobStatus": "AzureHealthInsights.JobStatus", @@ -65,7 +69,12 @@ "com.azure.health.insights.radiologyinsights.models.PatientEncounter": "AzureHealthInsights.PatientEncounter", "com.azure.health.insights.radiologyinsights.models.PatientRecord": "AzureHealthInsights.PatientRecord", "com.azure.health.insights.radiologyinsights.models.PatientSex": "AzureHealthInsights.PatientSex", + "com.azure.health.insights.radiologyinsights.models.PresentGuidanceInformation": "AzureHealthInsights.PresentGuidanceInformation", "com.azure.health.insights.radiologyinsights.models.ProcedureRecommendation": "AzureHealthInsights.ProcedureRecommendation", + "com.azure.health.insights.radiologyinsights.models.QualityMeasureComplianceType": "AzureHealthInsights.QualityMeasureComplianceType", + "com.azure.health.insights.radiologyinsights.models.QualityMeasureInference": "AzureHealthInsights.QualityMeasureInference", + "com.azure.health.insights.radiologyinsights.models.QualityMeasureOptions": "AzureHealthInsights.QualityMeasureOptions", + "com.azure.health.insights.radiologyinsights.models.QualityMeasureType": "AzureHealthInsights.QualityMeasureType", "com.azure.health.insights.radiologyinsights.models.RadiologyCodeWithTypes": "AzureHealthInsights.RadiologyCodeWithTypes", "com.azure.health.insights.radiologyinsights.models.RadiologyInsightsData": "AzureHealthInsights.RadiologyInsightsData", "com.azure.health.insights.radiologyinsights.models.RadiologyInsightsInference": "AzureHealthInsights.RadiologyInsightsInference", @@ -81,6 +90,8 @@ "com.azure.health.insights.radiologyinsights.models.ResearchStudyArm": "Fhir.R4.ResearchStudy.arm.anonymous", "com.azure.health.insights.radiologyinsights.models.ResearchStudyObjective": "Fhir.R4.ResearchStudy.objective.anonymous", "com.azure.health.insights.radiologyinsights.models.ResearchStudyStatusCodeType": "Fhir.R4.ResearchStudyStatusCodeType", + "com.azure.health.insights.radiologyinsights.models.ScoringAndAssessmentCategoryType": "AzureHealthInsights.ScoringAndAssessmentCategoryType", + "com.azure.health.insights.radiologyinsights.models.ScoringAndAssessmentInference": "AzureHealthInsights.ScoringAndAssessmentInference", "com.azure.health.insights.radiologyinsights.models.SexMismatchInference": "AzureHealthInsights.SexMismatchInference", "com.azure.health.insights.radiologyinsights.models.SpecialtyType": "AzureHealthInsights.SpecialtyType", "com.azure.health.insights.radiologyinsights.models.TimePeriod": "AzureHealthInsights.TimePeriod" diff --git a/sdk/healthinsights/azure-health-insights-radiologyinsights/tsp-location.yaml b/sdk/healthinsights/azure-health-insights-radiologyinsights/tsp-location.yaml index 6e665818dc49..10f876aa5d13 100644 --- a/sdk/healthinsights/azure-health-insights-radiologyinsights/tsp-location.yaml +++ b/sdk/healthinsights/azure-health-insights-radiologyinsights/tsp-location.yaml @@ -1,7 +1,6 @@ directory: specification/ai/HealthInsights/HealthInsights.RadiologyInsights -additionalDirectories: - - specification/ai/HealthInsights/HealthInsights.Common - - specification/ai/HealthInsights/HealthInsights.OpenAPI -commit: 6f175c9c006269a1d0f1928fbc768cacc6ac379a +commit: f6161d945b00b261abb78953defafc6fc8cc6ca4 repo: Azure/azure-rest-api-specs -cleanup: false +additionalDirectories: +- specification/ai/HealthInsights/HealthInsights.Common +- specification/ai/HealthInsights/HealthInsights.OpenAPI