Hi @sukrit2020 ,
A recommended approach is to append your separate hold-out test set to the main data as new rows with the Y target values set to missing. Then the formula will automatically create predictions on those rows.
Also, it's important to note that XGBoost handles validation differently than other JMP platforms. If the validation column is Nominal, it will automatically do full k-fold with each of the levels. This is why the formula looks like it does. This can be confusing if your validation column has two levels, e.g. "Validation" and "Training". In this case XGBoost would actually do 2-fold, holding out each subset regardless of their values.
A better way to set up your folds is to use the Make K-Fold Columns utility, and then use those as your Validation columns. I feel repeated k-fold is a much better way to validate your model than using a single holdout set. If you really want to only do a single holdout, you must set the type of the Validation column to Continuous, with value 0 corresponding to training and 1 to validation.