SuperAPI AI Directory

erf-validate

Coding & development

View repository

Updated 10-15 17:18

About this skill

/erf-validate — validation of an external report (ERF)

Checks the structural correctness of the external report's XML sources: root structure, InternalInfo, properties (including MainDataCompositionSchema), ChildObjects, attributes, tabular sections, name uniqueness, presence of form and template files.

Uses the same script as /epf-validate — auto-detection by element type (ExternalReport).

Usage

/erf-validate <ObjectPath>

Parameters

Parameter Required Default Description
ObjectPath yes — Path to the root XML or report directory
MaxErrors no 30 Stop after N errors
OutFile no — Write the result to a file (UTF-8 BOM)

ObjectPath auto-resolve: if a directory is specified — searches for <dirName>/<dirName>.xml.

Command

powershell.exe -NoProfile -File .claude/skills/epf-validate/scripts/epf-validate.ps1 -ObjectPath "<путь>"

Checks performed

# Check Severity
1 Root structure: MetaDataObject/ExternalReport ERROR
2 InternalInfo: ClassId, ContainedObject, GeneratedType ERROR / WARN
3 Properties: Name, Synonym, MainDataCompositionSchema ERROR / WARN
4 ChildObjects: allowed types, order ERROR / WARN
5 Cross-references: DefaultForm, MainDCS → Template ERROR / WARN
6 Attributes: UUID, Name, Type ERROR
7 TabularSections: UUID, Name, GeneratedType, Attributes ERROR / WARN
8 Name uniqueness (Attribute, TS, Form, Template, Command) ERROR
9 Files: forms (.xml + Ext/Form.xml), templates ERROR
10 Form descriptors: root structure, uuid, Name, FormType ERROR / WARN

Output

=== Validation: ERF.МойОтчёт ===

[OK]    1. Root structure: MetaDataObject/ExternalReport, version 2.17
[OK]    2. InternalInfo: ClassId correct, 1 GeneratedType
[OK]    3. Properties: Name="МойОтчёт", Synonym present, MainDCS set
[OK]    4. ChildObjects: Form(1), Template(1)
[OK]    5. Cross-references: DefaultForm, MainDCS valid
[OK]    6. Attributes: none
[OK]    7. TabularSections: none
[OK]    8. Name uniqueness: 2 names, all unique
[OK]    9. File existence: 4 files verified
[OK]    10. Form descriptors: 1 checked

=== Result: 0 errors, 0 warnings ===

Return code: 0 = all checks passed, 1 = there are errors.

Verification

/erf-init <Name> --with-skd        — создать отчёт с СКД
/erf-validate src/<Name>.xml        — проверить результат
/erf-build <Name>                   — собрать ERF

When to use

  • After /erf-init: verify the scaffold
  • After adding a form/template/DCS: make sure ChildObjects and MainDCS are correct
  • After manually editing XML: identify structural errors before building
  • When debugging the build: find the cause of the Designer error