Class IliModelAuthoringTools

java.lang.Object
ch.so.agi.mcp.tools.IliModelAuthoringTools

@Component public final class IliModelAuthoringTools extends Object
One-call authoring of a complete, reviewed and constraint-proven INTERLIS model.
  • Constructor Details

  • Method Details

    • authorIliModel

      @McpTool(name="authorIliModel", description="Skalare Ausdruecke: Zahlen als {\"kind\":\"NUMERIC\",\"value\":7}; COMPARE mit operator ==, !=, <, <=, > oder >= und genau zwei geordneten children. DEFINED/NOT haben ein Kind, IMPLIES zwei; AND/OR behalten die Reihenfolge. MANDATORY verwendet condition. Prosa: Erwartungen vorab festhalten, vor Schreiben mit testIliConstraint pr\u00fcfen. Test-modelHashes.model muss Authoring-modelHashes.after entsprechen; aktuelle Datei gegen before pr\u00fcfen. Normal includeSuccessfulTestXtf=false. INVALID_SPEC gezielt einmal korrigieren; offene Fragen kl\u00e4ren, Proof-Grenzen berichten. Serverstatus allein ist keine Schreibfreigabe. Erzeugt aus einer vollst\u00e4ndigen typisierten IliModelSpec ein vollst\u00e4ndiges INTERLIS-2-Modell. Name, URI, Modellversion und INTERLIS-Version sind explizit erforderlich; fehlende Fachsemantik wird nicht erfunden. Unterst\u00fctzt Units, Domains, Topics, Klassen, Strukturen, Assoziationen, Attribute, strikte Geometrien sowie UNIQUE, MANDATORY, EXISTENCE, PLAUSIBILITY und SET. Das fertige Modell wird genau einmal mit ili2c kompiliert; AST-Generierung, alle Constraint-Proofs und afterReview verwenden diesen kompilierten Kontext weiter. Das Tool schreibt keine Datei.", generateOutputSchema=true, annotations=) public IliAuthoringResult authorIliModel(@McpToolParam(description="Vollst\u00e4ndige typisierte Modellspezifikation",required=true) IliModelSpec spec, @McpToolParam(description="Modellzweck: CAPTURE, PUBLICATION, VALIDATION oder UNKNOWN",required=false) @Nullable ModelPurpose modelPurpose, @McpToolParam(description="Regelprofil: CORE, SO-GIS oder SO-DATA (Default CORE)",required=false) @Nullable ModelingRuleProfile ruleProfile, @McpToolParam(description="Standard true. false l\u00e4sst nur XTF-Texte bestandener, ausge\u00fcbter F\u00e4lle mit g\u00fcltiger Fixture und null Warnungen weg; alle Diagnosen bleiben erhalten.",required=false) @Nullable Boolean includeSuccessfulTestXtf)
    • authorIliModel

      public IliAuthoringResult authorIliModel(IliModelSpec spec, @Nullable ModelPurpose modelPurpose, @Nullable ModelingRuleProfile ruleProfile)
    • verifyIliModel

      @McpTool(name="verifyIliModel", description="Pr\u00fcft unver\u00e4nderten Modelltext: Compiler, Modellierungsregeln und automatische Nachweise aller deklarierten Constraints. Keine Ableitung, \u00c4nderung oder fachliche Freigabe.", generateOutputSchema=true, annotations=) public IliAuthoringResult verifyIliModel(@McpToolParam(description="Unver\u00e4nderter vollst\u00e4ndiger Modelltext",required=true) String modelText, @McpToolParam(description="Modellzweck",required=false) @Nullable ModelPurpose modelPurpose, @McpToolParam(description="Regelprofil",required=false) @Nullable ModelingRuleProfile ruleProfile)