@startuml
'figure 3: Processing View'
skinparam monochrome true
skinparam handwritten false
skinparam shadowing false
hide class circle

class Sample {
    sepal_length: float
    sepal_width: float
    petal_length: float
    petal_width: float
}
class KnownSample {
    species: str
}

class UnknownSample {
    classification: str
}
Sample <|-- KnownSample
KnownSample <|-- TestingKnownSample
KnownSample <|-- TrainingKnownSample
Sample <|-- UnknownSample

class TrainingData {
  load_samples(path)
}

class ClassifierApp {
   classify(sample)
}

ClassifierApp -- TrainingData : "uses"

TrainingData::load_samples --> KnownSample : "creates"

ClassifierApp::classify --> UnknownSample : "creates"
@enduml
