| Ocalt Query Language
Pricing Dashboard ocalt.com v1.0

PRESENTATION

Build PPTX presentation files from OQL verbs. Compose slides with positioned content — titles, body text, images, graphs, tables, bullet lists, speaker notes, and video. Output is a standard .pptx file.

[pending] — PRESENTATION is designed and specified. Runtime implementation is in progress. Requires python-pptx (server dependency).

Structure

PRESENTATION INTO "/root/deck.pptx" OPEN NEST SLIDE LAYOUT "content" DURATION "5s" OPEN NEST BACKGROUND "#1a1a2e" TITLE "Q3 Results" AT 5% BY 5% FORMAT 90% BY 10% ALIGN LEFT TOP BODY "Revenue exceeded targets across all regions." AT 5% BY 18% FORMAT 90% BY 12% ALIGN LEFT TOP GRAPH TYPE "bar" WITH ?revenue AT 5% BY 32% FORMAT 60% BY 55% ALIGN LEFT MIDDLE IMAGE "/root/logo.png" AT 80% BY 2% FORMAT 15% BY 8% ALIGN RIGHT TOP BULLET OPEN NEST ITEM "EMEA up 34%" ITEM "APAC up 21%" ITEM "Americas up 18%" CLOSE NEST NOTE "Mention the restructuring impact on EMEA here." CLOSE NEST SLIDE LAYOUT "blank" OPEN NEST TITLE "Thank You" ALIGN CENTER MIDDLE CLOSE NEST CLOSE NEST SET ?file

SLIDE modifiers

ModifierDescription
LAYOUT "type"Slide layout. Types: "title", "content", "two-column", "blank", "image-full", "title-only"
DURATION "3s"Auto-advance timing. Omit for manual advance. If no slide has DURATION, all durations are ignored.

Positioning

All positions and sizes use percentages relative to the slide dimensions. AT x% BY y% positions from the top-left corner. FORMAT w% BY h% sets width and height. ALIGN horizontal vertical aligns the element within its bounds.

TITLE "Heading" AT 5% BY 5% FORMAT 90% BY 10% ALIGN LEFT TOP IMAGE "/root/logo.png" AT 80% BY 2% FORMAT 15% BY 8% ALIGN RIGHT TOP GRAPH TYPE "pie" WITH ?data AT 5% BY 20% FORMAT 45% BY 60% ALIGN LEFT MIDDLE BODY "Footer text" AT 5% BY 88% FORMAT 90% BY 8% ALIGN CENTER BOTTOM

If AT and FORMAT are omitted, the element flows automatically in layout order. If only ALIGN is set, the element is placed by alignment alone within the full slide.

(* Alignment only — no explicit position *) TITLE "Centered Heading" ALIGN CENTER MIDDLE IMAGE "/root/logo.png" ALIGN RIGHT TOP BODY "Footer" ALIGN CENTER BOTTOM

Alignment values

HorizontalVertical
LEFT CENTER RIGHTTOP MIDDLE BOTTOM

Slide content verbs

VerbDescription
TITLE "text"Slide title text
SUBTITLE "text"Subtitle text
BODY "text"Body paragraph text
IMAGE "/root/path.png"Embedded image
VIDEO "/root/clip.mp4"Embedded video
GRAPH TYPE "type" WITH ?dataEmbedded SVG chart
TABLE WITH ?dataTable from array of objects
BULLET OPEN NEST ITEM "..." CLOSE NESTBulleted list
NOTE "text"Speaker notes (not visible on slide)
BACKGROUND "#hex"Slide background colour
THEME "name"Slide colour theme
FONT "Inter" AS "24"Font family and size for subsequent text elements
COLOR "#hex"Text colour for subsequent text elements