An EMF codec framework built on Jackson 3.x for serializing and deserializing EMF EObjects to JSON and other formats (BSON, CSV, etc.).
The published documentation site is at eclipse-fennec.github.io/emf.codec/snapshot.
The complete codec specification is available in docs/codec-v2-spec/:
- 00 - Overview & Table of Contents - Start here
- 01 - Architecture - Component structure, serialization flow
- 02 - Configuration Resolution - Source hierarchy, scope chain
- 06 - Type Serialization - Type strategies (URI, NAME, NUMERIC, etc.)
- 09 - ID Serialization - ID strategies, key modes, formats
- 10 - Reference Serialization - Reference handling, expand, proxy
- 11 - Feature Serialization - Attribute/feature configuration
- 16 - Annotation Reference - Complete property reference
Further documentation:
| Document | Purpose |
|---|---|
| Development Guide | Current state, architecture, session continuity |
| Plans & Roadmap | Active plans, GAP analysis |
| Reference | EMF concepts, terminology, API reference |
| Project | Purpose |
|---|---|
org.eclipse.fennec.codec |
Codec runtime (serialization/deserialization) |
org.eclipse.fennec.codec.api |
Configuration API (TypeConfig, IdConfig, etc.) |
org.eclipse.fennec.codec.metadata |
Codec-specific metadata aspects |
org.eclipse.fennec.codec.bson |
BSON (MongoDB) format provider |
org.eclipse.fennec.codec.cbor |
CBOR format provider |
org.eclipse.fennec.codec.yaml |
YAML format provider |
org.eclipse.fennec.codec.geojson |
GeoJSON codec extension |
org.eclipse.fennec.codec.jsonschema |
JSON Schema codec extension |
org.eclipse.fennec.codec.openapi |
OpenAPI codec extension |
org.eclipse.fennec.codec.examples |
Usage examples |
snapshotis the active development branch. PRs land here first; every push publishes a-SNAPSHOTartifact to Sonatype Central snapshots.mainalways holds the latest released version. Released artifacts are available on Maven Central underorg.eclipse.fennec.codec:*.
See docs/ci.md for the full CI / publishing pipeline.
./gradlew build # Build all
./gradlew :org.eclipse.fennec.codec:test # Codec tests (JUnit 5)
./gradlew :org.eclipse.fennec.codec.metadata:test # Metadata tests
./gradlew :org.eclipse.fennec.codec.api:test # API tests- Juergen Albert (jalbert) / j.albert@data-in-motion.biz @ Data In Motion - architect, developer
- Mark Hoffmann (mhoffmann) / m.hoffmann@data-in-motion.biz @ Data In Motion - developer, architect
Eclipse Public License 2.0
Data In Motion Consulting GmbH - All rights reserved
Data In Motion Consulting GmbH - info@data-in-motion.biz