objects

a workbook is cells — values, formulas, formats — PLUS objects. an object is a thing that lives over or beside the grid: a chart, an image, a control, a table region. it is a structured spec plus range-refs plus an anchor, never cell data. excel and google model it the same way; deepcalc mirrors that with ONE canonical object, journaled and versioned — so a chart change diffs alongside the numbers, the part neither excel nor google does.

15 editable · 0 preserved · 0 dropped — generated from the object declarations, the same source the engine builds against.

objectwhat it isstatus
grid objects 4
chart a chart drawn from cell ranges — sixteen native types from bar to boxplot, plus facets — anchored over the grid; unpinned decisions (formats, baseline, sort, size) compile from column semantics. supported
control an interactive input bound to one cell — number, slider, dropdown, checkbox, date or text — rendered on the published page. supported
image a picture anchored over the grid; the pixels live in content-addressed storage and the object carries only their key. supported
map a choropleth over a region set (us states, us counties, world countries), drawn from a key range and a value range — rendered by us, not by Bing. supported
structured regions 7
filter-view a filter over a range — the dropdown arrows, plus any criteria and sort saved with them. supported
form a public form over a table range — a submission is an ordinary ops batch, so every response is journaled, attributed, diffable, revertable and moderatable through branch policy. supported
merged-range cells merged into one — a report header spanning its columns. supported
named-range a name bound to a range — =SUM(Revenue) instead of =SUM(B2:B13) — usable anywhere a reference is. supported
pivot a pivot table that groups and aggregates a source range — fields named, not indexed, with the source and the output region both rebasing. supported
protected-range a sheet's protection declaration — the sheet-level lock plus each individually protected range. supported
table a named region with a header, an optional totals row and per-column totals functions, anchored over a cell range. supported
cell-attached rules 8
comment a threaded discussion anchored to a cell — the comment, its replies and whether it is resolved. supported
conditional-formatting cell styling driven by rules over the cell's value — thresholds, colour scales, data bars, icon sets. supported
data-validation a per-cell input rule — a dropdown list, a number bound, a date — applied to one or more ranges. supported
developer-metadata hidden key/value metadata attached to a sheet, row or column. planned
entity a rich value — a country, a state, a security — bound to a HUB workbook, so dot-access resolves to an auditable formula over a versioned source instead of a hidden lookup. supported
hyperlink a link from one or more cells to a url or an in-workbook location. supported
smart-chip a rich in-cell chip — a person, date or place — beyond a plain value. none
sparkline a tiny chart drawn INSIDE a cell — the trend line beside a row of numbers. supported

compatibility matrix

interop per kind: whether we round-trip the excel and google form, and whether deepcalc supports it. yes · partial partial · no.

round-trip says what happens to a kind when a real file goes out and back: editable we model it — objects agents can edit, rendered and diffed; preserved we do not model it, but every part is carried verbatim so it survives untouched; dropped not kept today, named work rather than a silent loss; the kind has no xlsx form at all.

objectexcelgoogledeepcalcround-trip
comment editable
conditional-formatting partial editable
data-validation partial editable
developer-metadata partial
entity
hyperlink editable
smart-chip
sparkline editable
chart partial editable
control partial partial editable
image editable
map editable
filter-view partial editable
form
merged-range editable
named-range editable
pivot editable
protected-range partial editable
table partial editable