DM

Data Models

A Java and TypeScript library for reading, writing, and manipulating OpenAPI and AsyncAPI documents.

Installation

<dependency>
    <groupId>io.apitomy</groupId>
    <artifactId>apitomy-data-models</artifactId>
    <version>3.1.0</version>
</dependency>
implementation 'io.apitomy:apitomy-data-models:3.1.0'
npm install @apitomy/data-models

Features

📄

Multi-Spec Support

Full support for OpenAPI 2.0, 3.0, 3.1, 3.2, and AsyncAPI 2.x/3.x specifications with a unified object model.

Read, Write, Edit

Parse documents from JSON or YAML, manipulate them programmatically using a rich typed API, and serialize back to any format.

Validation

Built-in validation engine with hundreds of rules for detecting problems in your API specifications.

🔌

Visitor Pattern

Powerful visitor and traverser patterns for querying, analyzing, and transforming document trees without manual tree walking.

Quick Start

Java
Document doc = Library.readDocumentFromJSONString(jsonString);
Library.visitTree(doc, new CombinedVisitorAdapter() {
    @Override
    public void visitSchema(Schema node) {
        System.out.println("Schema: " + node.getTitle());
    }
}, TraverserDirection.down);