Hi, Rick.
I tried to use PROC COPULA (15.1) to simulate data that mirrored the marginal distribution of each variable in an input data set (data=mydata), but with a user-specified correlation structure. I thought the following example would work...

*--begin sascode-----------------------------------------------------------------------------------------------------------------*;
data corr_zero;
input X1 X2;
cards;
1 0
0 1
;
run;

proc copula data=mydata;
var X1 X2;
define zero normal (corr=corr_zero);
simulate zero / ndraws=100000 seed=928828 out=SimZero marginals=empirical;
run;
*--end sascode--------------------------------------------------------------------------------------------------------------------*;

However, when executing that code the SAS Log reported the following.

--begin saslog----------------------------------------------------------------------------------------------------------------------------------
NOTE: The input data set WORK.mydata is ignored when simulating using the DEFINE statement.
WARNING: MARGINALS=EMPIRICAL was changed to UNIFORM in simulation "ZERO".
WARNING: OUT= data set is not created if MARGINALS=EMPIRICAL option is not specified in the SIMULATE statement.
--end saslog----------------------------------------------------------------------------------------------------------------------------------------

That surprised me. The PROC COPULA documentation for the MARGINALS= option of the SIMULATE statement says...

--quote-----------------------------------------------------------------
MARGINALS=UNIFORM | EMPIRICAL
specifies how the marginal distributions are computed. If MARGINALS=UNIFORM, then the samples are drawn from the copula distribution and marginal distributions are uniform.

MARGINALS=EMPIRICAL can be used to explicitly specify that the marginal distributions are empirical CDF computed from the DATA= option in the PROC COPULA statement.

If the MARGINALS= option is not specified in the SIMULATE statement, then the marginal distributions used in the simulation depend on whether a preceding FIT statement was used: If there is no FIT statement, the marginal distributions depend on whether the PROC COPULA statement includes a DATA= option. If there is a preceding FIT statement, then the marginal distributions from that fit are used. If there is no FIT statement and there is no DATA= option, then MARGINALS=UNIFORM.
--unquote-----------------------------------------------------------------

The sentence " If there is no FIT statement, the marginal distributions depend on whether the PROC COPULA statement includes a DATA= option" is key.
PROC COPULA requires either a DEFINE or a FIT statement to be specified. So, if there is no FIT statement, then there must be a DEFINE statement.
And that implies (to me) that the MARGINALS= option of the SIMULATE statement can be used in conjunction with the DEFINE statement.
However, the SAS log states that the input data set (mydata) is ignored when using the DEFINE statement and that obviates usage of the MARGINALS= option.

What am I missing?
Thanks in advance for any insight.

Steve