filemaker-xml-field-deโฆ
Reverse-engineered specification of FileMaker's undocumented schema definition XML, across all three definition catalogs: fields, tables, and value lists.
A Claude skill that gives AI models a deterministic, empirically verified foundation for generating and analysing FileMaker Layout mode XML (fmxmlsnippet type="LayoutObjectList").
Reverse-engineered specification of FileMaker's undocumented schema definition XML, across all three definition catalogs: fields, tables, and value lists.
FAQ
filemaker-xmlsnippet-layout-claude-skill is a Claude Code plugin with 1 hand-picked skill for development work, indexed on Flowy. Install it with the command on its page. It includes FileMaker-XMLsnippet-Layout-Claude-Skill. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.
$ npx -y skills add andykear/FileMaker-XMLsnippet-Layout-Claude-Skill --agent claude-code
A Claude skill that gives AI models a deterministic, empirically verified foundation for generating and analysing FileMaker Layout mode XML (fmxmlsnippet type="LayoutObjectList").
Created by Andrew Kear of Clockwork Creative Technology and shared openly with the FileMaker/Claris community under CC BY 4.0. Attribution required on any reuse, adaptation or redistribution, including any derived or excerpted work.
FileMaker's Layout mode accepts layout objects via clipboard paste in a specific XML format. Without explicit knowledge of that format, AI models guess โ and FileMaker pastes malformed objects silently.
Effective AI-to-FileMaker workflows require a clear boundary between what AI should determine (the layout logic and content) and what must be deterministic (the XML structure). This skill provides that boundary.
The XML shape is knowable. This spec makes it known.
AI models are generative by nature โ they predict, they infer, they improvise. That is exactly what you want when reasoning about what fields belong on a layout and how they should be arranged. It is the opposite of what you want when emitting XML element order or flag bit patterns.
This skill keeps AI focused on what it is good at. The structure is handled deterministically. Claude handles the logic.
This is not a prompt or a set of guidelines assembled from documentation. FileMaker publishes no formal specification for the fmxmlsnippet layout clipboard format.
The specification was built entirely through empirical reverse-engineering: generate XML โ paste into Layout mode โ save โ copy back out โ diff against native output. Every object type, every flag bit, every element ordering rule confirmed through round-trip testing.
Silent failure modes โ where FileMaker accepts malformed XML and drops elements without any error โ were systematically identified and documented.
The result is a formal specification for a format that Claris has never documented.
SKILL.md Claude skill definition
README.md This file
references/
filemaker_layout_xml_rules.md Full specification (v2.5, ~1800 lines)
Covers all 18 layout object types, the full theming/CSS serialization model, object anchoring, and a multi-object Text paste corruption bug most AI-to-FileMaker tooling wouldn't catch โ root cause identified and fixed. Full detail, with round-trip verification markers throughout, is in references/filemaker_layout_xml_rules.md.
Tested with Claude. Model-agnostic by design โ the deterministic approach means any capable model with the specification in context should produce reliable output. Claude is the only model Clockwork has tested against; others have reported success.
SKILL.md and references/filemaker_layout_xml_rules.mdOnce the skill is installed, Claude will automatically apply it when you ask for FileMaker layout XML. No special prompt needed.
Generate layout objects:
"Generate XML for a field showing Contacts::FirstName with a label to its left"
Generate a portal:
"Create a portal showing related InvoiceLines with three columns: description, quantity, and unit price"
Review existing XML:
Paste your fmxmlsnippet and ask Claude to check it for paste-handler errors
With a DDR or Save as XML export:
Attach a DDR or a Save as XML export and Claude will use real field, table occurrence, and relationship names from your solution. Either works โ both carry the schema.
Layout mode requires the fmxmlsnippet type="LayoutObjectList" format on the clipboard in FileMaker's internal clipboard format โ not plain text. This skill has been tested with the MBS Plugin installed.
Pasting two or more Text objects without an ExtendedAttributes block on each TextObj causes FileMaker to silently concatenate their text together at paste time. Always include a standard ExtendedAttributes block, matching the object's own CharacterStyle โ confirmed clean at 2 and 3 objects in one paste with it present.
ButtonBar segments, GroupButton children, and PlaceholderText fields are all covered by the same fix โ placeholder fields verified directly (multiple per paste, clean, with the block on every TextObj; the field itself needs nothing extra). The ButtonBar followed by GroupButton residue sequence has now been retested and is clean with the fix in place. Full detail in references/filemaker_layout_xml_rules.md ยง31.
Stripping ad hoc LocalCSS overrides across a whole layout and rebinding objects to their proper named theme style is under active development and not yet recommended for production layouts.
The object-level mechanic is verified (ยง25.6): the layout round-trips, unmatched objects pass through verbatim, matched objects rebind. What is not settled is which objects should be treated as a match, and whether object types beyond fields and text behave the same way. Until that is proven across more layouts, treat retheme output as a draft to review rather than a paste-and-trust result. Note also the untested key-rebinding caution in ยง25.6 for layouts with attached labels or a defined tab order.
It will ship with its own instruction guide when it lands. This is the hardest problem across all the repos and is being worked deliberately rather than shipped early.
One of a set that reverse-engineers FileMaker's clipboard format family end to end โ the private type codes FileMaker uses to carry schema and objects through the clipboard. The three generation specs cover all seven codes between them; two tools support the workflow.
Script XML Skill (XMSS, XMSC, XMFN) The full script step ID dictionary, plus the hidden paste-handler rules that decide whether your XML survives the trip into FileMaker.
Layout XML Skill (XML2) All 18 layout object types mapped, every flag decoded, element order confirmed against native output. Verified across 45+ layouts in 10 production files.
Field, Table & Value List Definitions (XMFD, XMTB, XMVL) โ this repo Field, table and value list definition XML โ auto-enter, validation, storage, calculation options, and the three value list source arms โ verified down to the individual option level.
Analysis โ read, audit and clean existing XML
XML Inspector (SaXML) Full-catalog dependency analysis of a Save as XML export, entirely in the browser. Finds unreferenced fields, silent-failure risks, broken references, and diffs two versions of a solution against each other.
XML Scrubber (SaXML + others) Strips API keys, passwords and internal hostnames out of FileMaker XML before you hand it to an AI tool.
CC BY 4.0. Free to use, share and adapt with attribution. Attribution is required on any reuse, adaptation or redistribution, including any derived or excerpted work: vendoring the spec into another project, or lifting a section into another skill, both count.
Found something that doesn't round-trip? A production export that contradicts the spec? Open an issue or PR.
| Version | Notes |
|---|---|
| 2.5 | Object anchoring verified. WebViewer handling enhanced. Earlier flag readings corrected. Token reduction pass across the spec. |
| 2.4 | Full closure pass against FileMaker Pro 26.0.1.51. Observed items now fully verified; production testing continues. |
| 2.3 | Eight mechanisms corrected by round trip verification against FileMaker Pro 26.0.1.51. The spec is now close to fully verified. |
| 2.2 | Continued verification and hardening |
| 2.1 | We found a real FileMaker bug โ and fixed it (see "Multi-object Text/Button paste corruption and the fix" above). Plus: Portal behaviour completely re-verified end to end (several long-standing assumptions turned out wrong once actually tested), and a fresh batch of field/formatting rules confirmed. The most rigorously tested release yet. |
| 2.0 | Theming and behavioural model. Added the LocalCSS/CustomStyles/FullCSS serialisation model and four cases, the complete Face character-attribute bitmask, the full script-trigger event table with object-type scoping, button icon embedded-SVG streams, button-bar LabelCalc, the FileMaker 2026 CanEntryCalc access-by-calculation element (generated elements confirmed to enforce), and theme independence proven across two themes. Element-order section refined to match round-trip output (see ยง21). |
| 1.1 | Extended corpus: 45+ layouts, 10 applications. Added ScriptTriggers, ToolTip, LabelCalc sections. CSS selectors table. portalFlags extended. TabPanelObj corrected (not a round-trip artifact). |
| 1.0 | First public release. All 18 object types documented. Full round-trip verification across 35+ production layouts. |
README.md references/ filemaker_layout_xml_rules.md SKILL.md
ยฉ 2026 Flowy ยท Free and open source
Built for Claude Code ยท Not affiliated with Anthropic