'------------------------------------------------------------------------------- ' Copyright (c) 2021-2022, Arm Limited and Contributors. All rights reserved. ' ' SPDX-License-Identifier: BSD-3-Clause ' '------------------------------------------------------------------------------- @startuml abstract class claim_iterator { {abstract} void first() {abstract} void next() {abstract} bool is_done() {abstract} claim current() } abstract class claim_source { {abstract} bool get_claim(claim *claim) } class claim { +category: int +subject_id: int +variant_id: int } class claims_register <> { void add_claim_source(claim_source) void query_by_category(category, claim_vector) } claim <|-- claim_collection claim <|-- text_string_claim claim <|-- byte_string_claim claim <|-- integer_claim claim <|-- measurement_claim claim_iterator ..> claim claim_collection ..> claim_iterator claim_source ..> claim claims_register -> "0..*" claim_source @enduml