Not quite, metalness can be set per-pixel, not only per shader. So if you have metalic and non-metalic elements in the same texture, you would use 0 and 1 values in the metalness map. If you have partial metals, you can use a grey value in the metalness map there, but partial metals are not particularly common.