← ClaudeAtlas

pbir-bookmarkslisted

Use when creating, editing, or wiring Power BI PBIR bookmarks in Report.Report/definition/bookmarks/ — bookmarks.json index and individual bookmark.json files. Covers bookmark structure (name hex ID matching items[], displayName, options, explorationState), options flags (targetVisualNames, suppressDisplay, suppressActiveSection, suppressData, applyOnlyToTargetVisuals), explorationState shape (activeSection page ID, filters.byExpr, per-page sections.visualContainers.singleVisual, objects.merge for filter-pane state), per-visual display.mode hidden/visible as the ONLY correct visibility toggle (NOT root-level isHidden), byExpr entries with required expression + optional filter + howCreated (0=visual, 1=report), patterns (toggle, reset filters, guided navigation), wiring bookmarks to buttons via visualLink actions targeting the hex name. Invoke when user adds a bookmark, builds show/hide toggle buttons, or debugs 'bookmark applies but nothing changes'.
wardawgmalvicious/claude-config · ★ 1 · Data & Documents · score 75
Install: claude install-skill wardawgmalvicious/claude-config
## PBIR Bookmarks Reference Bookmarks capture a snapshot of report state — active page, filter selections, visual visibility, and object overrides. Used for toggle interactivity via button `visualLink` actions. ### File Layout ``` Report.Report/definition/bookmarks/ bookmarks.json # index + display order <hex_id>.bookmark.json # one per bookmark ``` ### bookmarks.json ```json { "$schema": ".../bookmarksMetadata/1.0.0/schema.json", "items": [ {"name": "958f29ad733c047ee0b8"}, {"name": "54698b9cd0a0c57906b7"} ] } ``` Order in `items[]` = order in the Bookmarks pane. ### [id].bookmark.json Top-Level | Property | Type | Notes | |---|---|---| | `$schema` | string | `.../bookmark/1.4.0/schema.json` | | `name` | string | 20-char hex; must match entry in `bookmarks.json` | | `displayName` | string | Label shown in Bookmarks pane | | `options` | object | Apply behavior flags | | `explorationState` | object | The actual state snapshot | ### options | Property | Type | Notes | |---|---|---| | `targetVisualNames` | string[] | Visuals affected by this bookmark (empty/omitted = all) | | `suppressDisplay` | boolean | `true` = don't change visibility when applied; preserves current show/hide state | | `suppressActiveSection` | boolean | Don't change the active page when applied | | `suppressData` | boolean | Don't restore filter / slicer state | | `applyOnlyToTargetVisuals` | boolean | Only touch visuals in `targetVisualNames` |