edmiDefineRuleSchema

EdmiError edmiDefineRuleSchema(SdaiString  ruleSchemaFile,
                                SdaiString  diagnosticFile, 
                                SdaiInteger options, 
                                SdaiInteger *nWarnings, 
                                SdaiInteger *nErrors);

Invokes the EDMexpressXCompiler to compile an EDMruleSchema. The rule schema will be checked for syntactical and consistency errors. Optionally the result of the compilation will be stored as an increment to the appropriate dictionary model in the EDMdatabase. Only rule schema that are compiled without any errors will be stored in the belonging dictionary model, this default behavior can be overruled by an option in the <options> argument. See below for details.

A rule schema defines any business rules to an existing Express schema. Such business rules are defined as Where rules to entities and defined types and as global rules. This belonging Express schema must exist as a dictionary model in the EDMdatabase before this operation can be successfully performed.There can be any number of rule schema for each dictionary model (Express schema). The name of a rule schema must be unique within all rule schema to the same dictionary model. Each rule schema is independent, i.e., a rule schema can be deleted at any time independent of any other rule schema, query schema or data models.When the belonging dictionary model is deleted, then all belonging rule schema will be deleted as well.

 

Arguments


Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_ruleSchemaFile_EDMI'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_diagnosticFile_EDMI'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_options_EDMI'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_nbWarnings'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_nbErrors'.
        

Return Value


Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_r_EDMInterface'.

Options


  

Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_o_DELETING_EXISTING_SCHEMAS'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_o_PARSE_ONLY'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_o_NO_DICTIONARY_MODEL'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_o_CONTINUE_STORING_ON_ERROR'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_o_HTML_ERROR_LISTING'.
  
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_o_MAKE_EXPRESSX_LONGFORM_OPTIONS'.
           

 

Example


 

EdmiError rstat;
SdaiInteger nWarnings, nErrors;
. . .
if (rstat = edmiDefineRuleSchema ("/queries/product_document.rex", "/queries/query.diag", DELETING_EXISTING_SCHEMAS, &nWarnings, &nErrors)) { 
	/* Error in operation */  
	printf("\nError in edmiDefineRuleSchema: %s\n", 
	edmiGetErrorText(rstat)); 
	goto error; 
}
printf("\nWarnings during compilation: %ld", nWarnings);
printf("\nErrors during compilation..: %ld", nErrors);
. . .

 

See also

Filter by label

There are no items with the selected labels at this time.