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

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

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

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



/**
 * The extracted attributes that relate to an entity. 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 class SnomedctAttribute private constructor(builder: Builder) {
    /**
     * The 0-based character offset in the input text that shows where the attribute begins. The offset returns the UTF-8 code point in the string.
     */
    public val beginOffset: kotlin.Int? = builder.beginOffset
    /**
     * The category of the detected attribute. Possible categories include MEDICAL_CONDITION, ANATOMY, and 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 attribute ends. The offset returns the UTF-8 code point in the string.
     */
    public val endOffset: kotlin.Int? = builder.endOffset
    /**
     * The numeric identifier for this attribute. 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 that this attribute is correctly related to this entity.
     */
    public val relationshipScore: kotlin.Float? = builder.relationshipScore
    /**
     * The type of relationship that exists between the entity and the related attribute.
     */
    public val relationshipType: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctRelationshipType? = builder.relationshipType
    /**
     * The level of confidence that Amazon Comprehend Medical has that the segment of text is correctly recognized as an attribute.
     */
    public val score: kotlin.Float? = builder.score
    /**
     * The SNOMED-CT concepts specific to an attribute, along with a score indicating the likelihood of the match.
     */
    public val snomedctConcepts: List? = builder.snomedctConcepts
    /**
     * The segment of input text extracted as this attribute.
     */
    public val text: kotlin.String? = builder.text
    /**
     * Contextual information for an attribute. Examples include signs, symptoms, diagnosis, and negation.
     */
    public val traits: List? = builder.traits
    /**
     * The type of attribute. Possible types include DX_NAME, ACUITY, DIRECTION, SYSTEM_ORGAN_SITE,TEST_NAME, TEST_VALUE, TEST_UNIT, PROCEDURE_NAME, and TREATMENT_NAME.
     */
    public val type: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctAttributeType? = builder.type

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

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

    override fun hashCode(): kotlin.Int {
        var result = beginOffset ?: 0
        result = 31 * result + (category?.hashCode() ?: 0)
        result = 31 * result + (endOffset ?: 0)
        result = 31 * result + (id ?: 0)
        result = 31 * result + (relationshipScore?.hashCode() ?: 0)
        result = 31 * result + (relationshipType?.hashCode() ?: 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 SnomedctAttribute

        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 (relationshipScore != other.relationshipScore) return false
        if (relationshipType != other.relationshipType) 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.SnomedctAttribute = Builder(this).apply(block).build()

    public class Builder {
        /**
         * The 0-based character offset in the input text that shows where the attribute begins. The offset returns the UTF-8 code point in the string.
         */
        public var beginOffset: kotlin.Int? = null
        /**
         * The category of the detected attribute. Possible categories include MEDICAL_CONDITION, ANATOMY, and 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 attribute ends. The offset returns the UTF-8 code point in the string.
         */
        public var endOffset: kotlin.Int? = null
        /**
         * The numeric identifier for this attribute. 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 that this attribute is correctly related to this entity.
         */
        public var relationshipScore: kotlin.Float? = null
        /**
         * The type of relationship that exists between the entity and the related attribute.
         */
        public var relationshipType: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctRelationshipType? = null
        /**
         * The level of confidence that Amazon Comprehend Medical has that the segment of text is correctly recognized as an attribute.
         */
        public var score: kotlin.Float? = null
        /**
         * The SNOMED-CT concepts specific to an attribute, along with a score indicating the likelihood of the match.
         */
        public var snomedctConcepts: List? = null
        /**
         * The segment of input text extracted as this attribute.
         */
        public var text: kotlin.String? = null
        /**
         * Contextual information for an attribute. Examples include signs, symptoms, diagnosis, and negation.
         */
        public var traits: List? = null
        /**
         * The type of attribute. Possible types include DX_NAME, ACUITY, DIRECTION, SYSTEM_ORGAN_SITE,TEST_NAME, TEST_VALUE, TEST_UNIT, PROCEDURE_NAME, and TREATMENT_NAME.
         */
        public var type: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctAttributeType? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctAttribute) : this() {
            this.beginOffset = x.beginOffset
            this.category = x.category
            this.endOffset = x.endOffset
            this.id = x.id
            this.relationshipScore = x.relationshipScore
            this.relationshipType = x.relationshipType
            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.SnomedctAttribute = SnomedctAttribute(this)

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy