# workbook objects

19 object kinds across 3 families: 17 supported, 1 planned, 1 not yet built.

a workbook is cells plus objects — a chart, an image, a control, a table region: a structured spec + range-refs + an anchor, never cell data. deepcalc mirrors excel and google with ONE canonical, journaled, versioned object.

## grid objects

float over the grid on the drawing layer — a chart, an image, a control.

- [chart](https://deepcalc.com/objects/chart.md) — 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](https://deepcalc.com/objects/control.md) — an interactive input bound to one cell — number, slider, dropdown, checkbox, date or text — rendered on the published page. (supported)
- [image](https://deepcalc.com/objects/image.md) — a picture anchored over the grid; the pixels live in content-addressed storage and the object carries only their key. (supported)
- [map](https://deepcalc.com/objects/map.md) — 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

a named range with behaviour — tables, pivots, filter views, protected ranges.

- [filter-view](https://deepcalc.com/objects/filter-view.md) — a filter over a range — the dropdown arrows, plus any criteria and sort saved with them. (supported)
- [form](https://deepcalc.com/objects/form.md) — 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](https://deepcalc.com/objects/merged-range.md) — cells merged into one — a report header spanning its columns. (supported)
- [named-range](https://deepcalc.com/objects/named-range.md) — a name bound to a range — =SUM(Revenue) instead of =SUM(B2:B13) — usable anywhere a reference is. (supported)
- [pivot](https://deepcalc.com/objects/pivot.md) — 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](https://deepcalc.com/objects/protected-range.md) — a sheet's protection declaration — the sheet-level lock plus each individually protected range. (supported)
- [table](https://deepcalc.com/objects/table.md) — a named region with a header, an optional totals row and per-column totals functions, anchored over a cell range. (supported)

## cell-attached rules

attached to a cell, not a value nor a floating object — validation, formatting, sparklines, comments.

- [comment](https://deepcalc.com/objects/comment.md) — a threaded discussion anchored to a cell — the comment, its replies and whether it is resolved. (supported)
- [conditional-formatting](https://deepcalc.com/objects/conditional-formatting.md) — cell styling driven by rules over the cell's value — thresholds, colour scales, data bars, icon sets. (supported)
- [data-validation](https://deepcalc.com/objects/data-validation.md) — a per-cell input rule — a dropdown list, a number bound, a date — applied to one or more ranges. (supported)
- [developer-metadata](https://deepcalc.com/objects/developer-metadata.md) — hidden key/value metadata attached to a sheet, row or column. (planned)
- [entity](https://deepcalc.com/objects/entity.md) — 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](https://deepcalc.com/objects/hyperlink.md) — a link from one or more cells to a url or an in-workbook location. (supported)
- [smart-chip](https://deepcalc.com/objects/smart-chip.md) — a rich in-cell chip — a person, date or place — beyond a plain value. (none)
- [sparkline](https://deepcalc.com/objects/sparkline.md) — a tiny chart drawn INSIDE a cell — the trend line beside a row of numbers. (supported)

## compatibility matrix

round-trip: `editable` we model it · `preserved` carried verbatim · `dropped` not kept today · `—` no xlsx form.

| kind | excel | google | us | round-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 |

source: https://deepcalc.com/objects