All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.aws.sdk.kotlin.services.comprehendmedical.model.SnomedctEntity.kt Maven / Gradle / Ivy

// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.comprehendmedical.model



/**
 * The collection of medical entities extracted from the input text and their associated information. For each entity, the response provides the entity text, the entity category, where the entity text begins and ends, and the level of confidence that Amazon Comprehend Medical has in the detection and analysis. Attributes and traits of the entity are also returned.
 */
public class SnomedctEntity private constructor(builder: Builder) {
    /**
     * An extracted segment of the text that is an attribute of an entity, or otherwise related to an entity, such as the dosage of a medication taken.
     */
    public val attributes: List? = builder.attributes
    /**
     * The 0-based character offset in the input text that shows where the entity begins. The offset returns the UTF-8 code point in the string.
     */
    public val beginOffset: kotlin.Int? = builder.beginOffset
    /**
     * The category of the detected entity. Possible categories are MEDICAL_CONDITION, ANATOMY, or TEST_TREATMENT_PROCEDURE.
     */
    public val category: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctEntityCategory? = builder.category
    /**
     * The 0-based character offset in the input text that shows where the entity ends. The offset returns the UTF-8 code point in the string.
     */
    public val endOffset: kotlin.Int? = builder.endOffset
    /**
     * The numeric identifier for the entity. This is a monotonically increasing id unique within this response rather than a global unique identifier.
     */
    public val id: kotlin.Int? = builder.id
    /**
     * The level of confidence that Amazon Comprehend Medical has in the accuracy of the detected entity.
     */
    public val score: kotlin.Float? = builder.score
    /**
     * The SNOMED concepts that the entity could refer to, along with a score indicating the likelihood of the match.
     */
    public val snomedctConcepts: List? = builder.snomedctConcepts
    /**
     * The segment of input text extracted as this entity.
     */
    public val text: kotlin.String? = builder.text
    /**
     * Contextual information for the entity.
     */
    public val traits: List? = builder.traits
    /**
     * Describes the specific type of entity with category of entities. Possible types include DX_NAME, ACUITY, DIRECTION, SYSTEM_ORGAN_SITE, TEST_NAME, TEST_VALUE, TEST_UNIT, PROCEDURE_NAME, or TREATMENT_NAME.
     */
    public val type: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctEntityType? = builder.type

    public companion object {
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.comprehendmedical.model.SnomedctEntity = Builder().apply(block).build()
    }

    override fun toString(): kotlin.String = buildString {
        append("SnomedctEntity(")
        append("attributes=$attributes,")
        append("beginOffset=$beginOffset,")
        append("category=$category,")
        append("endOffset=$endOffset,")
        append("id=$id,")
        append("score=$score,")
        append("snomedctConcepts=$snomedctConcepts,")
        append("text=$text,")
        append("traits=$traits,")
        append("type=$type")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = attributes?.hashCode() ?: 0
        result = 31 * result + (beginOffset ?: 0)
        result = 31 * result + (category?.hashCode() ?: 0)
        result = 31 * result + (endOffset ?: 0)
        result = 31 * result + (id ?: 0)
        result = 31 * result + (score?.hashCode() ?: 0)
        result = 31 * result + (snomedctConcepts?.hashCode() ?: 0)
        result = 31 * result + (text?.hashCode() ?: 0)
        result = 31 * result + (traits?.hashCode() ?: 0)
        result = 31 * result + (type?.hashCode() ?: 0)
        return result
    }

    override fun equals(other: kotlin.Any?): kotlin.Boolean {
        if (this === other) return true
        if (other == null || this::class != other::class) return false

        other as SnomedctEntity

        if (attributes != other.attributes) return false
        if (beginOffset != other.beginOffset) return false
        if (category != other.category) return false
        if (endOffset != other.endOffset) return false
        if (id != other.id) return false
        if (score != other.score) return false
        if (snomedctConcepts != other.snomedctConcepts) return false
        if (text != other.text) return false
        if (traits != other.traits) return false
        if (type != other.type) return false

        return true
    }

    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.comprehendmedical.model.SnomedctEntity = Builder(this).apply(block).build()

    public class Builder {
        /**
         * An extracted segment of the text that is an attribute of an entity, or otherwise related to an entity, such as the dosage of a medication taken.
         */
        public var attributes: List? = null
        /**
         * The 0-based character offset in the input text that shows where the entity begins. The offset returns the UTF-8 code point in the string.
         */
        public var beginOffset: kotlin.Int? = null
        /**
         * The category of the detected entity. Possible categories are MEDICAL_CONDITION, ANATOMY, or TEST_TREATMENT_PROCEDURE.
         */
        public var category: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctEntityCategory? = null
        /**
         * The 0-based character offset in the input text that shows where the entity ends. The offset returns the UTF-8 code point in the string.
         */
        public var endOffset: kotlin.Int? = null
        /**
         * The numeric identifier for the entity. This is a monotonically increasing id unique within this response rather than a global unique identifier.
         */
        public var id: kotlin.Int? = null
        /**
         * The level of confidence that Amazon Comprehend Medical has in the accuracy of the detected entity.
         */
        public var score: kotlin.Float? = null
        /**
         * The SNOMED concepts that the entity could refer to, along with a score indicating the likelihood of the match.
         */
        public var snomedctConcepts: List? = null
        /**
         * The segment of input text extracted as this entity.
         */
        public var text: kotlin.String? = null
        /**
         * Contextual information for the entity.
         */
        public var traits: List? = null
        /**
         * Describes the specific type of entity with category of entities. Possible types include DX_NAME, ACUITY, DIRECTION, SYSTEM_ORGAN_SITE, TEST_NAME, TEST_VALUE, TEST_UNIT, PROCEDURE_NAME, or TREATMENT_NAME.
         */
        public var type: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctEntityType? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctEntity) : this() {
            this.attributes = x.attributes
            this.beginOffset = x.beginOffset
            this.category = x.category
            this.endOffset = x.endOffset
            this.id = x.id
            this.score = x.score
            this.snomedctConcepts = x.snomedctConcepts
            this.text = x.text
            this.traits = x.traits
            this.type = x.type
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.comprehendmedical.model.SnomedctEntity = SnomedctEntity(this)

        internal fun correctErrors(): Builder {
            return this
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy