Application Programming Interface Guide > DSL API > Virtual Tables and Procedures > DSL Syntax
 
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