Expressir Tutorials
Purpose
These hands-on tutorials guide you through common Expressir tasks from beginner to advanced topics. Each tutorial includes working code examples, practical exercises, and clear learning objectives.
Getting Started
If you’re new to Expressir, start with these foundational tutorials:
-
Parsing Your First Schema - Learn the basics of parsing EXPRESS files
-
Working with Multiple Schemas - Handle dependencies and interfaces
-
Creating LER Packages - Package schemas for distribution
Tutorial Path
Follow this recommended learning path:
Beginner Level
- Parsing Your First Schema
-
Duration: 30-45 minutes
Learn to parse EXPRESS schemas with both CLI and Ruby API, explore the parsed data model, and handle errors gracefully.
- Working with Multiple Schemas
-
Duration: 45-60 minutes
Master schema dependencies, interfaces (USE FROM / REFERENCE FROM), and cross-schema reference resolution.
Intermediate Level
- Creating LER Packages
-
Duration: 45-60 minutes
Create distributable LER packages for instant loading and high-performance schema distribution.
- Querying Schemas
-
Duration: 60-75 minutes
Use the SearchEngine API for pattern matching, filtering, and complex queries across schemas.
Advanced Level
- Liquid Templates
-
Duration: 60-90 minutes
Generate documentation automatically using Liquid templates and Expressir’s drop objects.
- Documentation Coverage
-
Duration: 45-60 minutes
Analyze and improve schema documentation quality with coverage tools and metrics.
Tutorial Features
Each tutorial includes:
- Prerequisites
-
What you need to know before starting
- Learning Objectives
-
What you’ll be able to do after completion
- Step-by-Step Instructions
-
Clear, numbered steps with explanations
- Working Code Examples
-
Complete, tested code you can run immediately
- Expected Output
-
What success looks like at each step
- Practice Exercises
-
Hands-on activities to reinforce learning
- Common Pitfalls
-
Mistakes to avoid and how to fix them
- Next Steps
-
Where to go after completing the tutorial
Quick Reference
| Tutorial | Level | Focus | Duration |
|---|---|---|---|
Beginner |
Parsing basics, CLI, Ruby API |
30-45 min |
|
Beginner |
Dependencies, interfaces |
45-60 min |
|
Intermediate |
Packaging, distribution |
45-60 min |
|
Intermediate |
SearchEngine, queries |
60-75 min |
|
Advanced |
Documentation generation |
60-90 min |
|
Advanced |
Coverage analysis |
45-60 min |
Additional Resources
Before Starting
-
Getting Started - Install and verify Expressir
-
EXPRESS Language - Understanding EXPRESS syntax
-
Data Model - Expressir’s internal structure
While Learning
-
Guides - Detailed guides on specific topics
-
References - Complete API documentation
-
GitHub Repository - Source code and examples
After Completion
-
CLI Guides - Master command-line tools
-
Ruby API Guides - Advanced programmatic usage
-
LER Guides - Deep dive into LER packages
Tutorial Conventions
Code Blocks
EXPRESS code:
SCHEMA example;
ENTITY person;
name : STRING;
END_ENTITY;
END_SCHEMA;
Ruby code:
require 'expressir'
repo = Expressir::Express::Parser.from_file('schema.exp')
Shell commands:
expressir format schema.exp
Getting Help
- Issues During Tutorials
-
-
Check the "Common Pitfalls" section
-
Verify prerequisites are met
-
Ensure file paths are correct
-
Check Ruby and Expressir versions
-
- Questions or Problems
-
-
GitHub Issues - Report problems
-
GitHub Discussions - Ask questions
-
Getting Help - Support resources
-
- Contributing
-
Found an error or want to improve a tutorial?
-
Open an issue on GitHub
-
Submit a pull request
-
Share your feedback
-
Tutorial Versions
These tutorials are written for:
-
Expressir: v1.0+
-
Ruby: 2.7+
-
EXPRESS: ISO 10303-11:2007
If you’re using different versions, some examples may need adjustment.
Next Steps
Ready to start? Begin with Parsing Your First Schema or choose any tutorial based on your needs.
For quick reference without step-by-step instructions, see the Guides section.