SuperAPI AI Directory

epf-validate

General & other

View repository

Updated 10-15 17:18

About this skill

/epf-validate — validation of an external processing (EPF)

Checks the structural correctness of the XML sources of an external processing: root structure, InternalInfo, properties, ChildObjects, attributes, tabular sections, name uniqueness, presence of form and template files.

The script also works for external reports (ERF) — auto-detection by item type. See /erf-validate.

Usage

/epf-validate <ObjectPath>

Parameters

Parameter Required Default Description
ObjectPath yes — Path to the root XML or processing 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/ExternalDataProcessor ERROR
2 InternalInfo: ClassId, ContainedObject, GeneratedType ERROR / WARN
3 Properties: Name (identifier), Synonym ERROR / WARN
4 ChildObjects: allowed types, order ERROR / WARN
5 Cross-references: DefaultForm → Form, AuxiliaryForm 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: EPF.МояОбработка ===

[OK]    1. Root structure: MetaDataObject/ExternalDataProcessor, version 2.17
[OK]    2. InternalInfo: ClassId correct, 1 GeneratedType
[OK]    3. Properties: Name="МояОбработка", Synonym present, DefaultForm set
[OK]    4. ChildObjects: Attribute(3), TabularSection(1), Form(1)
[OK]    5. Cross-references: DefaultForm valid
[OK]    6. Attributes: 3 checked (UUID, Name, Type)
[OK]    7. TabularSections: 1 sections, 5 inner attributes
[OK]    8. Name uniqueness: 6 names, all unique
[OK]    9. File existence: 3 files verified
[OK]    10. Form descriptors: 1 checked

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

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

Verification

/epf-init <Name>                   — создать обработку
/epf-validate src/<Name>.xml       — проверить результат
/epf-build <Name>                  — собрать EPF

When to use

  • After /epf-init: check the scaffold
  • After adding a form/template: make sure ChildObjects, files and references are correct
  • After manually editing XML: identify structural errors before building
  • When debugging a build: find the cause of a Designer error