DSL Syntax

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

 

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