The PrimaryAssetType will be equal to the name of the first native class going up the hierarchy, or the highest level blueprint class. IE, if you haveUPrimaryDataAsset-> UParentNativeClass -> UChildNativeClass -> DataOnlyBlueprintClass the type will be ChildNativeClass. Whereas if you haveUPrimaryDataAsset-> ParentBlueprintClass -> DataOnlyBlueprintClass the type will be ParentBlueprintClass. To change this behavior, override GetPrimaryAssetId in your native class or copy those functions into a different native base class.