Normalization And Categorical Encoding

I am trying to really understand pre-processing layers as discussed in this tutorial . In the tutorial it is using a pet-finder dataset. And when it goes to normalize the PhotoAmt it creates the get_normalization_layer function, gets the PhotoAmt column from the dataset, passes the column to the function, which in turn creates the normalization layer, adapts it to the data, and returns the encoded layer. Then it uses this code to print it

photo_count_col = train_features['PhotoAmt']
layer = get_normalization_layer('PhotoAmt', train_ds)
print(layer(photo_count_col))

which shows this which totally makes sense. It one-hot encodes the data

What I don’t understand is this code in the tutorial

for header in ['PhotoAmt', 'Fee']:
numeric_col = tf.keras.Input(shape=(1,), name=header)
normalization_layer = get_normalization_layer(header, train_ds)
encoded_numeric_col = normalization_layer(numeric_col)
all_inputs[header] = numeric_col
encoded_features.append(encoded_numeric_col)

What I don’t understand is that it creates an input tensor with no data in it named numeric_col and later encodes it with the normalization_layer. How does this encode anything? There is no data in this tensor right? Or is it just a representation that the model understands so when you fit the data with the model it knows how to do it as the normalization layer has been adapted to that data?