Discriminator types of Resource type: type or profile?

Further notes about the use of the different discriminator types about type : Used to match slices based on the type of the item. While it can be used with polymorphic elements such as Observation.value[x] , mostly it is used with Resource types on references, to apply different profiles based on the different resource type. Typical example: slice on the type of List.item.resolve() for the types Patient, RelatedPerson.

If slice on the type of List.entry.item.resolve() why don’t use the type of profile? I guess maybe because it’s only check the StructureDefinition.type of the targetProfile instead of conform the whole definition of the targetProfile. Is that right?

Checking the type of the target resource is a far lighter operation than checking full profile validity - which can often mean checking a whole tree of resources. In some cases, a smart system can even check resource type without doing a resolve - just by parsing and checking the URL.