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

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

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

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



/**
 * The detected attributes that relate to an entity. This includes an extracted segment of the text that is an attribute of an entity, or otherwise related to an entity. InferICD10CM detects the following attributes: `Direction`, `System, Organ or Site`, and `Acuity`.
 */
public class Icd10CmAttribute 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 attribute. Can be either of `DX_NAME` or `TIME_EXPRESSION`.
     */
    public val category: aws.sdk.kotlin.services.comprehendmedical.model.Icd10CmEntityType? = 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 between the entity and attribute. Type for the relationship can be either of `OVERLAP` or `SYSTEM_ORGAN_SITE`.
     */
    public val relationshipType: aws.sdk.kotlin.services.comprehendmedical.model.Icd10CmRelationshipType? = 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 segment of input text which contains the detected attribute.
     */
    public val text: kotlin.String? = builder.text
    /**
     * The contextual information for the attribute. The traits recognized by InferICD10CM are `DIAGNOSIS`, `SIGN`, `SYMPTOM`, and `NEGATION`.
     */
    public val traits: List? = builder.traits
    /**
     * The type of attribute. InferICD10CM detects entities of the type `DX_NAME`.
     */
    public val type: aws.sdk.kotlin.services.comprehendmedical.model.Icd10CmAttributeType? = builder.type

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

    override fun toString(): kotlin.String = buildString {
        append("Icd10CmAttribute(")
        append("beginOffset=$beginOffset,")
        append("category=$category,")
        append("endOffset=$endOffset,")
        append("id=$id,")
        append("relationshipScore=$relationshipScore,")
        append("relationshipType=$relationshipType,")
        append("score=$score,")
        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 + (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 Icd10CmAttribute

        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 (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.Icd10CmAttribute = 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 attribute. Can be either of `DX_NAME` or `TIME_EXPRESSION`.
         */
        public var category: aws.sdk.kotlin.services.comprehendmedical.model.Icd10CmEntityType? = 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 between the entity and attribute. Type for the relationship can be either of `OVERLAP` or `SYSTEM_ORGAN_SITE`.
         */
        public var relationshipType: aws.sdk.kotlin.services.comprehendmedical.model.Icd10CmRelationshipType? = 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 segment of input text which contains the detected attribute.
         */
        public var text: kotlin.String? = null
        /**
         * The contextual information for the attribute. The traits recognized by InferICD10CM are `DIAGNOSIS`, `SIGN`, `SYMPTOM`, and `NEGATION`.
         */
        public var traits: List? = null
        /**
         * The type of attribute. InferICD10CM detects entities of the type `DX_NAME`.
         */
        public var type: aws.sdk.kotlin.services.comprehendmedical.model.Icd10CmAttributeType? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.comprehendmedical.model.Icd10CmAttribute) : 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.text = x.text
            this.traits = x.traits
            this.type = x.type
        }

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy