-
Notifications
You must be signed in to change notification settings - Fork 230
Legend Showcase
The showcase is a collection of Legend models, example code that showcase various Legend features.
Basic Modeling
Demonstrates basic Legend modeling functionality (classes, attributes, derived properties, constraints, profile, super types)
- TODO : Legend Studio Project
- Unique constraint
- Express mutually exclusive classes via constraints
- Express Covariance via constraints
- Generic validations
Model To Model Mapping
Demonstrates the use of model to to model mapping.
- TODO : Legend Studio Project
- TODO : This should include mapping multiple source models to 1 target model
- TODO : Implicit/Auto Mapping (re-use mappings in other contexts)
Functions
Demonstrates how standard and user defined functions can be used in a model.
- TODO : Legend Studio Project
Relational Modeling And Query
Demonstrates the use of logical to relational mapping and the use of query tool.
- TODO : Legend Studio Project
- TODO : We can demonstrate only H2. Snowflake and other databases might be available in the FINOS instance.
Artifact Generation / JSON Schema
Demonstrates the generation of JSON schema from the Legend model
- TODO : Legend Studio Project
- TODO : Demonstrate how Legend constraints are converted into JSON schema constraints. Some examples here https://github.com/finos/legend-pure/blob/b35c0a0379245af23243baf398e2dea72a0bdf57/legend-pure-code-compiled-core/src/main/resources/core/json/tests/sharedSchema.pure
Artifact Generation / Avro
- TODO : Legend Studio Project
- TODO : Same as JSON Schema
FPML
- TODO : Legend Studio Project
- TODO : What are we trying to demo here ?
Legend APIs
Demonstrates usage of the REST APIs exposed by the different Legend components.
- TODO : This should document the gotcha with authentication
- TODO : This should document the use of Gitlab private access tokens
Model Import/Export
Demonstrates how models can be imported/exported into/from a Legend project.
Sourcing External Data
Demonstrates how external services can be invoked and used in a model.
- TODO : Not sure if this is fully supported in Legend.
- Enrich data attributes from multiple sources with functions
- RestAPI calls from functions to enrich/transform target data model
Legend Service Execution Jar
Demonstrates how Legend can be used to generate Java libraries that execute mappings and services.
- TODO : Legend Studio Project
Model Change Management
Demonstrates how Legend SDLC can be used to customize the Gitlab CI/CD experience. Also demonstrates how this integration can be used to enforce model constraints across Legend projects.
Project Dependencies
Demonstrates how to express dependencies between projects.
🚧 : This is being actively developed. Check Legend roadmap for details.
__ Group work space__
Demonstrates how multiple users can collaborate on a single model in a group project workspace.
🚧 : This is being actively developed. Check Legend roadmap for details.
__ Other__
- Sample service to retrieve model JSON
- Create executable JAR for consumption
- depend/consume open sourced data model
- Complex queries (e.g. milestoning)
- For Legend Users
- For Legend Maintainers