SYNTAX:
xpxConvertModelsWithParameters (sourceModelsName, schemaMapName : STRING;
targetModelName, declarationsToLog : STRING;
sourceLinesToLog, logFile : STRING; maxLogFileSize : INTEGER userOutputFile : STRING;
options, numberOfUserParameters : INTEGER;
userPar1, userPar2, ... userParN : GENERIC)
status : INTEGER;
The xpxConvertModelsWithParameters function invokes the EDMmodelConverter to convert one or more existing data models (source models) in the EDMdatabase. The result of the conversion will normally be a new data model (target model) in the EDMdatabase. Optionally the result of this operation can be added to an existing data model.
This operation can be used for model merging, i.e., merge more models to a new model or add the merge result to an existing model.
This function is similar to the xpxConvertModels function, except that a possibility exists for the client application to supply a certain number of parameters to the conversion process to make the Express-X schema parameterized. From the conversion process the number of parameters is obtained by a call to the xpxGetNumberOfUserParameters function, and each of the parameters is obtained by a call to the xpxGetUserParameter function.
This function is similar to the edmiConvertModelsWithParametersBN operation.
Note: The invocation of a xpxConvertModelsWithParameters operation will not immediately activate the new ?conversion/merging? process. The actual operation will be inserted in a queue and then immediately execution is resumed after the xpxConvertModelsWithParameter call in the calling process. The actual queue of ?conversion/merging? processes will be handled when the current active EDMexpressVM process is terminated.
The underlying schema of the target model (target schema) must exist as a dictionary model in the EDMdatabase before the EDMmodelConverter is invoked by this function. Likewise the Express-X schema that defines the conversion process must exist as an Express-X dictionary model before this function can be successfully executed.
The functions edmiDefineSchema or xpxDefineSchema can be used to create a dictionary model of an Express schema in the EDMdatabase and the functions edmiDefineSchemaMap or xpxDefineSchemaMap can be used to create an Express-X dictionary model in the EDMdatabase.
The source model will be unchanged when the conversion process is terminated.
The EDMmodelConverter is utilizing the EDMexpressVM to perform the conversion process. To facilitate debugging of the conversion process, many options to trace the conversion process and to log events during the conversion process have been included.
Express-X can be used as a programming language for creating, manipulating, and deleting data in any data model in the EDMdatabase that can be accessed by the caller, hence the specified Express-X schema can be successfully interpreted without creating in a new data model.
An optional filter controls the logging of the conversion process. This filter is defined by the <declarationsToLog>, <sourceLinesToLog> and <options> arguments. The filter defines the following:
- What should be logged
- Which part of the Express-X schema should be logged
It is normally important to specify an appropriate logging filter to avoid the log output to fill up your disk.
This function is equivalent to the EDMinterface function edmiConvertModelsWithParametersBN.
Related functions: xpxConvertModel, xpxConvertModels