DSL Syntax

Using a sample DSL syntax mentioned below,, the "rest/execute/v1/ actions/dsl/invoke" REST API can be executed to create, update and delete virtual catalogs:

 

DROP VIRTUAL CATALOG (IF EXISTS)? /path/name
 
———————————————————————————————————————————————————————————————
 
CREATE VIRTUAL CATALOG (IF NOT EXISTS)? /path/name
 
(SET ANNOTATION ‘this is a virtual catalog created using DSL api’ | NULL)?
 
———————————————————————————————————————————————————————————————
 
ALTER VIRTUAL CATALOG /path/name (RELOCATE TO /path/newName)?
 
(SET ANNOTATION ‘this is a virtual catalog created using DSL api’ | NULL)?
 
———————————————————————————————————————————————————————————————
 
SELECT * FROM model.ALL_CATALOGS WHERE PARENT_PATH = '/services/databases/publishedDB'      //to view published virtual catalog
 
———————————————————————————————————————————————————————————————
 
//to get the resource properties
 
SELECT * FROM model.ALL_RESOURCE_PROPERTIES WHERE
        METADATA_ID =
            (SELECT CATALOG_ID FROM model.ALL_CATALOGS
            WHERE CATALOG_NAME = 'name' AND                                                 //name of virtual catalog           
            PARENT_PATH = '/services/databases/publishedDB');                               //parent path of the published catalog