Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagecpp
themeConfluence
EdmiError edmiRemoteDefineSchema(SdaiServerContext serverContextId,
                                   SdaiInteger       schemaType, 
                                   SdaiString        schemaFileName, 
                                   SdaiString        diagnosticFile, 
                                   SdaiString        schemasToStore, 
                                   SdaiUnsignedInt   options, 
                                   SdaiInteger       *nWarnings, 
                                   SdaiInteger       *nErrors,
                                   SdaiInvocationId  *edmiInvocationId);


Invokes the EDMexpressCompiler  to compile a file containing one or more Schemata of a specified type. The following actions may be specified for the scamata schema in the file.

  1. Syntax check.
  2. Schema consistency.
  3. Creation or modification of dictionary models.

...

  1. Express Schemata (ISO10303-11).
  2. Express-X Schemata (ISO10303-14)
  3. Express Rule Schemata (Express Schemata extentionextension).
  4. Express Query Schemata (Express Schemata extentionextension).

For Express schemata, the ISO 10303 Part 22 defines the standard for naming the dictionary models. The name of a dictionary model is equal to the name of the Express Schema, concatenated with "_DICTIONARY_DATA". A dictionary model name is in uppercase and case sensitive.
Dictionary models are by default write protected. Hence, they may not be opened by users for ordinary write access. Existing dictionary models may be removed from the database by the edmiRemoteDeleteSchema or the edmiRemoteDeleteModel functions. A precondition is that there exist no data models or associated Express-X dictionary models.

...

Normally only Express schemata that are compiled without errors may be stored as dictionary models in the EDMdatabase

...

. This default behaviour may be overruled by enabling the CONTINUE_STORING_ON_ERROR option.

Info

Use the option CONTINUE_STORING_ON_ERROR with care! Populating erroneous dictionary models may cause unpredictable exceptions, including system crash!

 

Arguments

...

Return Value

...

Insert excerpt
US:_r_EDMInterface
US:_r_EDMInterface
nopaneltrue

 

Options

...

  

OptionComment
Option nameComment

 

Example

...

 

Code Block
languagecpp
 

 

See also

Filter by label (Content by label)
showLabelsfalse
showSpacefalse
cqllabel = "model" and parent = "6062220"

 

Related functions: edmiRemoteDeleteSchema, edmiRemoteDeleteModel, edmiDefineSchema
Header:
#include "sdai.h"
Prototype:
EdmiError edmiRemoteDefineSchema(SdaiServerContext serverContextId,
                                  SdaiInteger       schemaType,
                                    SdaiString        schemaFileName, 
                                  SdaiString        diagnosticFile, 
                                  SdaiString        schemasToStore, 
                                  SdaiUnsignedInt   options, 
                                  SdaiInteger       *nWarnings, 
                                  SdaiInteger       *nErrors,
                                  SdaiInvocationId  *edmiInvocationId);
 
Arguments:

TypeNameComment
 

serverContextId

Context identification, from edmiDefineServerContext

 

schemaType

The type of schemata to compile. Supported schema types are EXPRESS_SCHEMA_TYPE, RULE_SCHEMA_TYPE, QUERY_SCHEMA_TYPE and EXPRESS_X_SCHEMA_TYPE.

 

schemaFileName

The name of the file on the local file system that contains the schemata to compile.

 

diagnosticFile

The name of the file that will receive the compilation diagnostic information. If this argument is NULL or an empty string, the diagnostic information will be written to the _EDMinterface_ current output device.
Use edmiDefineOutputFunction to redefine the _EDMinterface_ current output device.

 

schemasToStore

A comma separated list of schema names to be compiled. If this parameter is NULL or an empty string, all schemata in the file <schemaFileName> will be compiled.

 

options

See description of available options below.
Options may be joined by using the bitwise OR operator. Default behaviour is that no subtypes be included in the returned entity extent.

 

nWarnings

A variable that will receive the number of warnings found by the _EDMexpressCompiler{_}.

 

nErrors

A variable that will receive the number of errors found by the EDMexpressCompiler.

 

edmiInvocationId

Currently not used.

...