CaseTalk 15.0 is the largest release in the history of the product. It closes well over 350 tickets (fixes and features alike) and is built around four themes: an information model your AI assistant can actually talk to, data governance that travels with the model, a much wider set of export targets, and a modernized, better behaved user interface. Whether you model for a data warehouse, an ontology, a glossary or a regulator, this release moves the conceptual model further into the centre of the conversation.

Highlights at a Glance

  • MCP Server Built In -- Claude, ChatGPT, Gemini and other assistants hold a conversation about your model directly, with a prompt sidebar, Discord integration and a runtime consent system
  • Data Governance -- Sensitivity annotations and retention periods on Object-Fact Types, with masking, reader clearance and a separate permission before an assistant may read example data
  • ArchiMate, First Class -- ConceptType icons, a dedicated ArchiMate diagram tab and Open Exchange Format export
  • Twelve New Generation Targets -- Snowflake, DuckDB, BigQuery, Databricks, SAP HANA, ClickHouse, Redshift, Kotlin, TypeScript, C#, GraphQL and Anchor Modeling (6NF), in a new categorized Generate menu
  • Schema Evolution -- ALTER TABLE migration scripts generated automatically from schema deltas
  • Semantic Web Depth -- Turtle import, RDF 1.2 idioms, NL-SBB compliant SKOS, SHACL constraints, OWL vocabulary documentation and proper OntoUML stereotypes throughout
  • Rules in Your Language -- Business rules are verbalized in the language of the model, say "Each", and use the correct linguistic article
  • Model Grading -- Grade a model against rules and weights, and see what is still missing to complete it
  • Crash-Safe Saving -- An interrupted save can no longer corrupt a file, and crashes are reported automatically
  • Online License Activation -- Activate, verify and deactivate your licence without a manual key exchange

AI, MCP and Assistants

CaseTalk 15.0 embeds a Model Context Protocol server, so an assistant can read and discuss your conceptual model instead of guessing at it.

  • Model-aware LLM chat -- Chat with an assistant that has your model, its fact types and its rules in context (#5166)
  • MCP security and consent -- A runtime consent system and workspace scoping decide what an external agent is allowed to see (#5444)
  • Discord integration -- Chat and drag-and-drop of model elements straight from Discord (#5265)
  • Your LLM as a modeling coach -- Bring your own model and let it coach the modeling session (#5521)
  • Socratic AI Coach -- The coach asks questions instead of dictating answers, from prompts you can edit yourself (#5539)
  • Semantic Completion Wizard -- Batch augmentation of expressions across a vocabulary (#5478)
  • LLM translation -- Translate model content through the configured language model (#5487)
  • Custom LLM endpoints -- Point CaseTalk at any compatible endpoint you host or subscribe to (#5744)
  • Mistral -- Added as an LLM option (#5468)
  • Azure OpenAI -- Added as an LLM option for CoPilot deployments (#5261)
  • OpenRouter -- Use OpenRouter as a gateway to many models at once (#5262)
  • Population augmentation reuses tuples -- Augmentation draws on tuples that already exist on object types (#5486)
  • Canvas helpers in project and MCP -- Canvas helper files are part of the project and visible to assistants (#5582)
  • Timestamps in MCP listings -- Project and file listings expose modification timestamps (#5745)
  • MCP reminders in chat -- Chatting assistants are reminded that the CaseTalk MCP server is available (#5607)
  • ChatGPT error 400 -- Fixed a request that could fail against the OpenAI endpoint (#5200)

Data Governance and Privacy

Sensitivity is no longer an afterthought kept in a side spreadsheet; it is part of the model and it travels with it.

  • Sensitivity annotation -- Mark Object-Fact Types with their data sensitivity (#2735)
  • Retention period -- Record how long data may be kept, per Object-Fact Type (GDPR) (#5720)
  • Masking on export -- Sensitive values are masked when a dataset is exposed to an external tool or caller (#5721)
  • Sensitivity in report and Portal -- GDPR sensitivity and retention are shown in the MIM report and in the Portal (#5722)
  • Sensitivity in the ontology tree -- See sensitivity and retention policy while you browse the model (#5788)
  • Reader clearance -- Example data is hidden from readers who are not cleared for it (#5884)
  • Assistant permission for example data -- Reading example data through an assistant needs its own explicit permission (#5855)
  • Sensitive data no longer leaks to assistants -- Fixed a path where example data marked sensitive could still reach an AI assistant (#5854)
  • Cross-project search tightened -- Search no longer hands out example data from models that are not open (#5858)
  • EU Cyber Resilience Act -- CaseTalk is aligned with CRA expectations (#5421)
  • Modernized EULA -- The licence text has been rewritten for clarity (#5544)

Semantic Web: RDF, OWL, SKOS and OntoUML

The vocabulary side of CaseTalk received the most concentrated attention in this release.

  • Turtle import -- Read Turtle files into a CaseTalk model (#5685)
  • RDF 1.2 idioms -- The Turtle export templates were consolidated and modernized (#5614)
  • NL-SBB compliant SKOS -- SKOS export conforms to the Dutch NL-SBB standard (#5592)
  • OntoLex-Lemon, SKOS, LexInfo -- Lexical and concept-scheme vocabularies are supported (#5180)
  • SHACL -- Constraints that OWL cannot state are generated as SHACL shapes (#3839)
  • OWL vocabulary documentation -- Publish human readable documentation next to the vocabulary (#5443)
  • ReSpec documentation export -- Export specification-style documentation (#4913)
  • Classification links between meta levels -- The OWL/RDF export no longer omits them (#5763)
  • OntoUML stereotypes derived properly -- Concept types are no longer left unclassified (#5795)
  • OntoUML meta levels -- Classification links and higher meta level types are stereotyped correctly (#5796)
  • OntoUML kinds -- A kind is only claimed when the type carries its own identification (#5805)
  • OntoUML mediation -- Roles of an objectified fact type are mediation, not material (#5799)
  • OntoUML aspects -- Label types are classified by data type, and single-participant objectifications become aspects (#5804)
  • OntoUML everywhere -- The classification is carried into all generated output, not only UML (#5807)
  • Derived relationships linked -- Objectified relationships are linked to the relationship derived from them (#5801)
  • RDF/OWL datatypes -- Missing datatype definitions are now written (#4910)
  • InterUC in OWL and RDF -- Max cardinality and hasKey are generated correctly for inter-uniqueness constraints (#5029)

Export and Code Generation

The template engine gained twelve new targets and a categorized Generate menu, alongside several new interchange formats.

  • Anchor Modeling (6NF) -- Generate an Anchor Modeling schema from the conceptual model (#5435)
  • Template data types and quoting -- Define data types and quoting rules in the template configuration (#5390)
  • Generation modules restored -- Missing generation modules are shipped and discovered again (#5772)
  • ArchiMate Open Exchange Format -- Export the model as ArchiMate OEF XML (#5432)
  • ArchiMate nesting -- Nested concepts and containers export as Specialization (#5770)
  • Neo4j -- Support for the Neo4j graph database (#1745)
  • GraphML for Neo4j -- Export GraphML including tuple data (#4162)
  • Apache OSSIE -- Export models to the OSSIE semantic-model format (YAML) (#5769)
  • Core Schema Notation -- Export to CSN (#5546)
  • Hierarchical JSON -- The flat export is replaced by a document-structured JSON export (#5437)
  • Paragraphs in JSON Schema -- Paragraphs can be listed in JSON Schema Draft output (#5032)
  • Primary keys in artifacts -- Generated artifacts carry their primary key (#4933)
  • PostgreSQL views -- Views are generated again, and a generation crash was fixed (#4893)
  • XMI robustness -- Cardinality-only constraints and containers no longer block an XMI export (#4905)
  • Artifact dialog -- The Invoke button stays enabled, and the generation log is shown (#5771)

Import and Interoperability

  • schema.org import -- Bring schema.org vocabulary into the model (#2115)
  • data.world catalog -- Import catalog metadata from data.world (#5391)
  • External catalogs -- Integrate catalogs as a first-class source (#3778)
  • External reference data -- Use external reference data for Object-Fact Type population (#2154)
  • Hardened XLS import -- The spreadsheet import survives messier workbooks (#5382)
  • Reference data persists -- Imported reference data is stored instead of quietly dropped (#5503)
  • Browse the web inside CaseTalk -- An internal browser that detects downloads (#4868)
  • Drag and drop HTML fragments -- Drop fragments from the internal browser into the model (#4877)
  • Search the Portal -- Search published models straight from the application (#4872)
  • Groupings survive .igdx -- Diagram groupings are no longer lost when saving as .igdx (#5813)
  • Richer Expression OTL tab export -- More information is exported from the OTL tab (#5474)

Diagrams and Visualization

  • ArchiMate diagram tab -- A dedicated tab for the ArchiMate view of the model (#5433)
  • Ring constraints drawn -- Ring constraints are visualized, and a constraint can be edited from the diagram (#5871)
  • Diagram legend -- The legend explains the icons and the named colors in use (#5822)
  • Named custom colors -- Give a custom color a name and reuse it by that name (#5815)
  • Semi-transparent elements -- Diagram elements can be made semi-transparent (#5821)
  • Style preview on the real diagram -- Preview a style change on your actual diagram before applying it (#5878)
  • Annotation notes styled separately -- Notes get their own background color and font (#5877)
  • Resize from any edge -- Elements are no longer resizable only from the bottom and right (#5812)
  • Grouping tiebreak made visible -- See which role wins the binary fact grouping tiebreak (#5892)
  • Filtering as highlighting -- Use a filter to highlight elements in the diagram (#4943)
  • Graphical formulas -- Formulas can be drawn on the diagram (#4998)
  • Expressions at OTL or LL level -- Draw the diagram expression at the level you need (#5105)
  • Schema coloring -- Color elements by the schema they belong to (#3790)
  • Hide roles and relation parts -- Roles and individual relation parts can be hidden (#4888)
  • Direction on rule and member -- Rules and members state their direction (#4519)
  • UML attribute annotation -- Annotate attributes in the UML diagram (#4935)
  • Locale per diagram tab -- Each diagram tab has its own locale selector (#5447)
  • Modeling the unknown -- A gap concept or container shape for what you cannot name yet (#5609)
  • UML fidelity -- Missing relationships, duplicates, multivalue attributes and wrong cardinality in UML diagrams were fixed (#4925)
  • InterUC in UML -- Inter-uniqueness constraints no longer hide attributes (#5030)
  • Zoom and style -- Changing a style while zoomed, displaced annotation blocks and misplaced value constraints were fixed (#4320)
  • Diagram painting -- Popup menus paint correctly and rendering anomalies after opening a project were resolved (#5617)
  • Style colours applied consistently -- The style list shows every kind exactly as it is drawn (#5872)
  • Stable positions -- Container labels, fixed task colours and Convex auto-sizing survive a reopen (#5765)

Expressions and Business Rules

  • One dialog to pick an expression -- Type, instance and its facts side by side in a single picker (#5866)
  • Edit roles in the expression tree -- Insert, edit and delete roles directly in the tree (#5485)
  • Expression part annotations -- Annotate individual expression parts (#4571)
  • Counter examples and unconfirmed tuples -- Expression files can state that a tuple is a counter example or unconfirmed (#5829)
  • Rules say "Each" -- Business rules constrain every instance, and now read that way (#5873)
  • Rules in the language of the model -- Wording follows the model locale instead of the machine locale (#5874)
  • German, French and Spanish wording -- Incomplete rule wording was completed and now reaches existing installations (#5875)
  • Linguistic article as a property -- de/het/the is a first-class property of an object type (#5664)
  • Articles in re-verbalization -- Subsequent references use the correct article (#5669)
  • Unique expression part identifiers -- Fixed expression parts that could share an internal identifier (#5814)
  • Alter Played By -- Picks the right specialization when a role moves between generalizations (#5853)
  • Expression input -- A second input dialog no longer inherits the state of the first, and qualification colouring was fixed (#5371)
  • Name changes reflected -- Renames are carried into expression files (#4548)

Constraints, Types and Model Semantics

  • Value constraints by kind -- A value constraint says which kind of constraint it is and is edited that way (#5880)
  • Constraint prefix numbering -- Constraints can be prefixed and numbered for reference (#5732)
  • Case sensitive value constraints -- Value constraint values keep their case (#5739)
  • Unlimited timelines -- Model as many timelines as the domain needs (#4372)
  • Configurable timeline sets -- Timeline sets for temporal Object-Fact Type modeling (#5508)
  • Custom names for temporal aspects -- Name the temporal aspects the way the business does (#2870)
  • State modeling -- Model states and their transitions (#4478)
  • Organogram -- Model users, departments and user groups (#4374)
  • Organogram canvas -- Custom attribute types for Department, Role and Person (#5583)
  • Authoritative source -- Record where a definition comes from (#4504)
  • Label type collation and length -- Character collation and generic char length are configurable (#3233)
  • Label subtypes -- New subtypes for label types, shown in the taxonomy (#4874)
  • Nominalize a label subtype -- Turn a label (sub)type into an object type properly (#4937)
  • Create a fact type from a selection -- Build a fact type from the elements you selected (#5588)
  • Meta level reclassifies roles -- Changing the meta level of a type reclassifies its existing roles (#5798)
  • Naming conventions in Preferences -- Edit the naming conventions in Tools > Preferences (#5591)
  • GLR -- Recursive structures are doped, and auto-GLR runs for plugins that need lexicalization (#5404)

Validation and Model Quality

  • Model grading -- Grade the model according to rules and weights (#5428)
  • What is missing -- Report the facts still needed to complete the model (#5002)
  • Violations on the diagram -- Drag an Object-Fact Type with violations onto a diagram (#5378)
  • Substitution is a warning -- A missing substitution is a warning, not an error (#5753)
  • Grouping preference -- No more false grouping warning when a totality constraint already decides the direction (#5748)
  • Default value check -- The model check no longer reports an invalid default value on roles that have none (#5910)
  • Schema and diagram checks -- Object-Fact Types with a schema are no longer listed as absent from every diagram (#5033)

Reporting and Documentation

  • SBVR business rules in the report -- The project report renders the rules as SBVR (#5869)
  • Sources are cited -- The project report cites the sources it draws on (#5861)
  • Markdown documents included -- Your project markdown documents are part of the report (#5842)
  • Borrowed terms attributed -- The report names the model a borrowed term comes from (#5862)
  • Report style honoured -- Report diagrams follow the chosen report style (#5863)
  • MIM report styling -- Unconfirmed and counter-example expressions are styled distinctly (#5495)
  • Markdown annotations -- Annotations accept Markdown throughout (#4083)

User Interface and Usability

  • Better object/fact type editing -- Inline constraint and role tabs while editing (#5473)
  • Tab close and add buttons -- Add and close tabs where you expect to (#5783)
  • What changed since your last login -- Models changed since your last visit are highlighted on the start page (#5688)
  • Instant welcome page -- The welcome page shows immediately and refreshes in the background (#5868)
  • One undo history -- Diagram and model undo/redo are no longer two rival histories (#5849)
  • Related expressions in the population editor -- See the expressions related to the tuple you are editing (#5369)
  • Population editor keeps your work -- Edits are no longer discarded when a row is incomplete (#5823)
  • Source mapping filtering -- Dynamic filtering of the Vocabulary and Paths target tree (#5698)
  • New Project dialog -- Says where the project lands and how conflicts are handled (#5699)
  • Filtering that finds things -- Object-Fact Type filtering, RegExp filters on custom attributes and multi-select edit were fixed (#5816)
  • Toolbar control -- Hide or show all toolbar buttons at once (#4920)
  • Windows light and dark theme -- CaseTalk follows the system theme, including diagram backgrounds (#4881)
  • Modern wizard graphics -- Refreshed flat-design sidebar illustrations that actually show at run time (#5477)
  • Ontology lazy loading -- Large ontologies open without waiting for everything (#5374)
  • Navigate to the diagram -- Select and centre an Object-Fact Type where it appears in a diagram (#5778)
  • Model locale visible -- The locale of the model is shown where you need it (#5389)
  • Saving is clearer -- File Save As behaves as expected and a dialog explains what is being saved (#2836)

Project and File Management

  • Crash-safe saving -- An interrupted save can no longer corrupt a file (#5730)
  • Project recycle bin -- Removed files stay recoverable (#5373)
  • Project file grouping -- Group the files in a project (#5268)
  • Leaner archives -- Optionally keep diagram images out of project archives (#5906)
  • Restore from archive -- The restore experience was redesigned (#4134)
  • Images from subfolders -- Project images can live in a subfolder (#4866)
  • Reopen what you saved -- A project saved under a new name opens again (#5835)
  • Stable file references -- References no longer fill up with relative prefixes until the project loses its own files (#5836)
  • Multiple information grammars -- Several IG files can be open at once (#230)
  • Housekeeping -- Temporary files left by an abnormal shutdown are cleaned up (#5791)
  • Versioned roaming profile -- The profile folder is versioned per release and migrated forward on upgrade (#5676)
  • New project extension -- Project files migrate from .prj to .ctprj (#5446)

Repository, Server and Portal

  • Online license activation -- Activate, verify and deactivate a licence online (#5409)
  • Read-only server account -- Give reviewers access without write rights (#2769)
  • Server updates as RSS -- An RSS feed of server updates on the welcome page (#5144)
  • Database column check -- Verify that a server database has all its columns (#5837)
  • Uploads keep everything -- Join paths and translations are no longer lost when a model is uploaded (#5833)
  • Uploads report failure -- An upload can no longer create a version with missing content in silence (#5905)
  • Increments -- Uploads no longer burn two increments (#4883)
  • Delete a server project -- Deleting a project on the server works (#5223)
  • Diagram search after download -- No close and reopen needed (#5445)
  • Namespaces by name -- Namespaces show their name instead of a GUID (#5773)
  • Undo and redo integrity -- A redo/undo combination can no longer invalidate the database (#4902)
  • Custom attributes on tuple rows -- Custom attribute values are stored per tuple row (#5379)
  • Meta queries -- Navigate from a meta query on the repository (#4928)
  • Manager integration -- Fixed an occasional lock against CaseTalk Manager (#5780)

Diff and Merge

  • Git diff/merge plugin -- Native CaseTalk integration for Git workflows (#4153)
  • Merge from a selected IG file -- Choose exactly what you merge from (#4553)
  • Merge with Replace -- Replace rather than reconcile where that is what you mean (#4793)
  • Status and colouring -- Merged Object-Fact Types show their status and are coloured accordingly (#5211)
  • Selection respected -- Merge no longer misses operations on a selected set of Object-Fact Types (#4901)
  • Population after merge -- Merging no longer creates population errors (#5027)
  • Old expressions stay gone -- Expressions removed before a merge no longer return (#5067)
  • Business glossary merge -- Fixed a failure when merging the glossary (#5239)
  • Taxonomy safety -- An incompatible taxonomy change is detected instead of crashing (#4903)

Data Explorer and Catalogs

  • Query from the data tab -- Generate a query based on what you see (#4931)
  • Mapping to the population editor -- Link a mapping to the population editor (#4101)
  • Catalog mapping -- Schema and catalog are no longer swapped in Data Catalog Mapping (#5605)
  • Views in the internal schema -- Database views are listed in the Internal Schema dialog (#4895)

Performance

  • Much faster upload -- Uploading a model to the server is substantially faster (#5831)
  • Faster Data Explorer -- Opening the Data Explorer on a large model no longer takes minutes (#5040)
  • Faster editing -- Editing a large model is markedly quicker (#4614)
  • Faster GLR snapshot -- Preparation of the silent GLR model snapshot was optimized (#5786)
  • Faster diagram zoom -- Zooming is no longer a bottleneck (#4451)
  • Faster server login -- Logging in to the server is quicker (#4361)
  • Faster RTF linking -- Large RTF files no longer stall the link (#4869)
  • Smaller PNGs -- Generated PNG files are smaller (#4265)
  • New memory manager -- The memory manager was upgraded (#5596)
  • Responsive shutdown -- CaseTalk no longer sits busy and unresponsive while closing (#5171)

Stability and Reliability

CaseTalk now reports crashes automatically, and this release fixes more than fifty crashes and freezes found that way.

  • Automatic crash reporting -- CaseTalk can send a crash report so the cause is actually known (#5384)
  • Clean shutdown -- Access violations during application exit were fixed (#5728)
  • Validation runs -- Crashes during model validation and when opening the results were fixed (#5729)
  • Reportable errors -- A crash during the rules check on project close is reported properly instead of shown as a bare error box (#5680)
  • Constraint editors -- Crashes after using the Subset Constraint editor and when adding a role to a generalisation were fixed (#5733)
  • Population editor -- Fixed a UNIQUE constraint violation during population editing (#5397)
  • Verbalization and expression viewer -- Freezes during VerbalizeRules and crashes in the Expression Tree were fixed (#5471)
  • Background threads -- Freezes in broadcast handling and a SQLite deadlock while saving namespaces were fixed (#5493)
  • Wizards -- The Subtype Matrix no longer breaks the model, and the wide UC assumption no longer crashes (#5069)
  • Transformation -- Explicit transformation (F12) no longer blocks and artificial keys no longer crash plugins (#4890)
  • Label to object type -- Converting a label type into an object type keeps its data and its diagram (#5741)
  • Recovery dialog -- "Commit record fixes?" no longer always rolls back (#5740)
  • Editing under label subtyping -- Editing subset constraints no longer blocks the interface (#4887)
  • Diagram reactivation -- The occasional freeze when reactivating project diagrams was fixed (#5320)

Installation and Deployment

  • SQLite 3.51.3 -- Updated to the current SQLite release (#5504)
  • PlantUML v1.2026.2 -- Updated PlantUML (#5505)
  • New file extensions -- Project files use .ctprj, with the other CaseTalk extensions aligned (#4574)
  • Clean Windows 11 install -- The msodbcsql17.dll error on a clean machine was resolved (#4758)
  • Server without a database -- Installing the server without a database no longer blocks startup (#5304)

Summary

CategoryCount
New Features 125
Improvements 67
Bug Fixes 180
Total 372

This article highlights the most visible changes. The complete list of 372 tickets is on the 15.0 roadmap page.


Upgrade Notes

  • Project files move from .prj to .ctprj. Existing projects are migrated on first open; older CaseTalk versions cannot read the new extension.
  • The roaming profile folder is now versioned per release. Your settings from CaseTalk 14.x are migrated forward automatically on first start.
  • SQLite is updated to 3.51.3 and PlantUML to v1.2026.2. Existing databases and diagrams are handled transparently.
  • Licensing can be activated online. Existing licence keys keep working; activation simply removes the manual exchange.
  • Sensitivity and retention are new, optional annotations. Models that do not use them behave exactly as before.
  • If you use the MCP server, review the consent and workspace settings before connecting an external assistant.

Getting Started


CaseTalk 15.0 -- Built for conceptual modelers who demand precision, productivity, and collaboration.