Use when authoring XML documents as MPS root nodes or building XML-generating generator templates with jetbrains.mps.core.xml — covers XmlFile, XmlDocument, prolog (XML declaration, DOCTYPE, processing instructions, comments), elements, attributes, CDATA, entity references, and macro attachment via the smodelAttribute role for templates that emit XML output.
70
86%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
jetbrains.mps.core.xml is an MPS language for authoring and generating XML documents inside MPS models. It is used either for direct XML authoring (an XmlFile root holds a complete document) or for generator templates (an XmlFile carries RootTemplateAnnotation and macros via smodelAttribute child roles).
Language reference: l:479c7a8c-02f9-43b5-9139-d910cb22f298:jetbrains.mps.core.xml
XmlFile → XmlDocument. XmlFile is the only rootable concept. XmlDocument.rootElement has cardinality 1 — put the root there, not in content.XmlProlog is optional (0..1). Omit it entirely when no prolog is needed.XmlValuePart. A plain string is a single XmlTextValue. An attribute with no value children renders as a valueless (boolean) attribute.XmlText / XmlSingleLineText use the property value. XmlTextValue (attribute value part) uses the property text. Do not swap them.smodelAttribute child role of the node they annotate — not as siblings in content or attributes.XmlBaseAttribute (not XmlAttribute) and XmlBaseElement (not XmlElement) when defining custom concepts for derived languages..mps files. Use MPS MCP node tools for all changes.jetbrains.mps.core.xml as a used language on the target model. For generator templates, also add jetbrains.mps.lang.generator.XmlFile root node with a name. The name is the template/document identifier, not the output filename.XmlDocument child in role document. Optionally add an XmlProlog for declarations/comments/PIs.XmlDocument.rootElement and the inner content lists.RootTemplateAnnotation to the XmlFile via smodelAttribute, and attach macros (PropertyMacro, LoopMacro, CopySrcNodeMacro, …) to inner nodes via their smodelAttribute role.mps_mcp_check_root_node_problems.mps-aspect-generator — for generator-side macro design that produces these XML templates.mps-aspect-textgen — for the text-serialization layer that turns these XML trees into output files.mps-node-editing — generic JSON-blueprint node creation/replacement workflow.mps_mcp_insert_root_node_from_json, mps_mcp_update_node. Includes minimal files, prolog with declarations, DOCTYPE, comments, attributes, mixed values, CDATA, processing instructions, and a full generator-template example. See references/json-blueprints.md.52c9d63
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.