Type theorists make a distinction between nominal subtyping, in which only types declared in a certain way may be subtypes of each other, and structural subtyping, in which the structure of two types determines whether or not one is a subtype of the other.
Οι θεωρητικοί κάνουν διάκριση μεταξύ ονομαστικής σχέσης υποτύπου, στην οποία μόνο οι τύποι που δηλώνονται με έναν ορισμένο τρόπο μπορεί να είναι υποτύποι κάποιου άλλου τύπου, και δομικής σχέσης υποτύπου, στο τον οποίο η δομή δύο τύπων καθορίζει κατά πόσον ο ένας είναι υποτύπος του άλλου ή όχι.