Skip to content

Base model example

This example demonstrates the common-base facility in action:

  • one OpenAPI YAML document
  • its OpenAPI HTML viewer
  • datatype diagrams

Release baseline and verification

This page targets JoinedWorkz 1.3.80, Java 21 and Maven 3.9+. The exact model below and the corresponding Quickstart POM were built from a clean directory with the published 1.3.80 artifacts on 2026-07-26.

1. Model

cmn
package com.example.joinedworkz.quickstart

import org.joinedworkz.facilities.common.base.api

platform Base

resource /hello as Greeting {
    create()
    read()
}

type Greeting {
    message: String
}

2. Generated artefacts

For the exact model above, the verification build produced:

  • src/generated/resources/openapi/com.example.joinedworkz.quickstart.yaml
  • diagram/api/com.example.joinedworkz.quickstart.html
  • diagram/types/com.example.joinedworkz.quickstart_cmn.html
  • diagram/types/org.joinedworkz.facilities.common.base.api_cmn.html

The exact one-model example has no component, application or process and therefore produces no diagrams for those model elements. More generally, the release 1.3.80 Base profile defines these user-facing default outlet patterns:

  • src/generated/resources/openapi/*.yaml – OpenAPI documents
  • diagram/api/*.html – interactive OpenAPI viewers
  • diagram/**/*.html – type, component, application and process diagrams, depending on the modeled elements

Screenshots in the documentation show examples.


3. How to generate

sh
mvn clean package

Run this in a JoinedWorkz 1.3.80 project containing the model and the Base facility dependency. The standalone joinedworkz-quickstart repository is still being aligned to the 1.3.80 documentation baseline and is therefore not the source of truth for this page yet.

This Base-only example generates specifications and diagrams. It does not generate Java sources or a runnable server application.


4. Next steps

  • add more resources
  • add pseudocode for process/call flow diagrams
  • use with other facilities (Java, SpringBoot)