1c-mxl

Compile, decompile, analyze, and validate 1C spreadsheet templates via a JSON DSL.

Updated Jun 26, 2026
One-click install
npx skills add https://github.com/pavelvdo/universal-xml-exchange2 --skill 1c-mxl-pavelvdo
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: 1c-mxl
Source: https://github.com/pavelvdo/universal-xml-exchange2/tree/main/.cursor/skills/1c-mxl
Command: npx skills add https://github.com/pavelvdo/universal-xml-exchange2 --skill 1c-mxl-pavelvdo

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Working with 1C spreadsheet templates (Template.xml / MXL) means editing thousands of lines of verbose XML with fragile palette indices, merges, and named areas that the 1C platform may silently ignore when malformed. This Skill replaces raw XML editing with a compact JSON DSL and deterministic PowerShell scripts. ## Core Features & Use Cases - Compile from JSON DSL: Turn a 20-30 line JSON definition (areas, parameters, styles, fonts, column widths) into a correct 200-500+ line Template.xml, with automatic palette, merge, and namespace handling. - Decompile to JSON: Reverse an existing Template.xml into the compact DSL for analysis or modification, with automatic naming of fonts and styles. - Structure analysis and validation: Inspect named areas, parameters, column sets, and drill-down parameters without reading raw XML, and run 12 structural checks (index bounds, palette references, merge ranges) that catch errors 1C would silently ignore. - Use Case: When building a print form for a 1C document, describe the layout in JSON, compile it to Template.xml, validate it, and integrate it into the configuration — or decompile an existing layout to understand and modify it. ## Quick Start Ask the assistant to compile your JSON layout definition into a 1C Template.xml print form and validate the result.

Frequently Asked Questions about 1c-mxl

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a 1C print form template from JSON?

Write a JSON definition with columns, fonts, styles, and areas containing rows and cells, then run the compile script with the JSON path and output Template.xml path. Follow up with the validate script to confirm structural correctness before integrating into the configuration.

How to convert an existing 1C Template.xml into editable JSON?

Run the decompile script with the Template.xml path and an optional output path. It extracts areas, parameters, merges, fonts, and styles into the compact JSON DSL, automatically generating readable names like bold, header, or bordered-center.

What structural errors does the 1C MXL validator detect?

The validator runs 12 checks including height versus row indices, cell and row format indices within the format palette, font and border palette references, column set references, named area and merge bounds, and drawing picture indices. It stops after 20 errors by default.

Can I inspect 1C template parameters without reading raw XML?

Yes, the info script lists named areas sorted top to bottom, their parameters, drill-down detailParameters, template parameters marked with [tpl], column sets, and intersections. Use -WithText to also see static labels and template strings, or -Format json for programmatic output.

When should I not compile Template.xml with this tool?

Compilation is gated by the artifact_mode setting: in manual mode the layout is edited in the 1C Configurator instead, and in bsl-only mode only the fill code changes without touching Template.xml. Compile applies only in assisted mode.