DSL Syntax
Using the DSL syntax mentioned below,, the "rest/execute/v1/ actions/dsl/invoke" REST API can be executed to CUD virtual tables or procedures:
 
DROP VIRTUAL TABLE|PROCEDURE (IF EXISTS)? /path/name
 
———————————————————————————————————————————————————————————————
 
CREATE VIRTUAL TABLE|PROCEDURE  (IF NOT EXISTS)? /path/name
 
SET TARGET /path/name
 
(SET ANNOTATION ‘this is a link created using DSL api’ | NULL)?
 
———————————————————————————————————————————————————————————————
 
ALTER VIRTUAL TABLE|PROCEDURE  /path/name (RELOCATE TO /path/newName)?
 
(SET TARGET /path/name )?
 
(SET ANNOTATION ‘this is a link created using DSL api’ | NULL)?
 
———————————————————————————————————————————————————————————————
 
SELECT * FROM model.ALL_TABLES WHERE PARENT_PATH = '/services/databases/publishedDB'        //to view all published virtual tables
 
SELECT * FROM model.ALL_PROCEDURES WHERE PARENT_PATH = '/services/databases/publishedDB'    //to view all published virtual procedures
 
———————————————————————————————————————————————————————————————
 
//to get the resource properties
 
SELECT * FROM model.ALL_RESOURCE_PROPERTIES WHERE
         
        METADATA_ID =
            (SELECT TABLE_ID FROM model.ALL_TABLES
             
            WHERE TABLE_NAME = 'name' AND                                               //name of virtual table           
            PARENT_PATH = '/services/databases/publishedDB');                           //parent path of the published resource