Legend Feature Overview
This page provides an overview of Legend Features, see Tutorials for step-by-step tutorials for each feature, and Showcase projects to see the features in action.
Associations are used to define a single linking relationship between two classes. You can define one to one, one to many, many to many kind of relationships.
A binding is a packageable element that binds your schema definition and models and ensures that both are in sync. See reference documentation for more details.
Bindings technical documentation
Classes define a business concept.
Legend data models have built-in governance features, called data quality controls. You create data quality controls every time you define a model. Constraints are governance tools added on top of quality controls. Use constraints to define a validation or condition on the model that's expected to be met.
A dataspace is a block of code that groups together a default mapping, runtime and diagram in a Studio project to enable easy query capabilities. Dataspaces help users intuitively find and query the data models they're interested in.
You can configure a project to depend on another project. In other words, you can leverage the features defined in another data model to run your own data model.
Diagrams are visual representations of your models to better visualize and communicate about data and their relationships. Important to note is that Diagrams are not auto-generated based on the created model. Instead, diagrams should be intentionally created to best represent the data being described.
An enumeration is a model attribute that has a finite list of values.
File Generations let you generate your models in other codes or schemas.
Flat Data Schema
Flat Data is a feature of the external formats support within Legend. It covers simple file formats like CSVs and simple custom formats. More sophisticated structured formats, that are described by well-defined schemas, such as XML (schema XSD) and JSON (schema JSON Schema) are handled by other features of the External Formats framework.
The Flat Data feature is extensible so that support can be added for more file formats, for example as new data providers are onboarded. This guide covers the configuration options for the core supported formats.
The Flat Data grammar is used to describe a particular file format so that data in that format can be read and/or written by Services defined in Legend.
Flat Data Store
Functions are used to derive new values from existing values using various operations.
Defining a customized function allows you to re-use transformation logic as part of your mappings or services.
The Function Explorer shows you all the functions you have defined and lets you drag and drop to selected panels in the Query Builder, including the derivation projection columns.
Generation Specification lets you specify the file and model generation elements that you want to run as part of your build.
Group workspaces allow collaboration on the same workspace. Changes made in group workspaces are visible to other users without the need to merge to master.
The mapping editor lets you construct mapping elements and test them through mapping tests.
Model-to-model mappings are used to create model transformations. Model transformations are used to connect different models.
Create model-to-model mappings
Connect data to a data model to start querying data leveraging the business-friendly terms and data relationships defined in the data model.
Capture additional information (metadata) about the data model by creating a Profile. Profiles store and manage tagged values and stereotypes.
Properties are components of classes that define the attributes of a business concept. Properties can be both primitives (like strings or integers) or other properties. Use properties in a class to define attributes of the business concept.
The service editor has two main panels: general and execution. The general panel has basic metadata about your service. The execution panel has queries, and the ability to edit queries using the query builder. From there, you can also execute and register the service.
Service store is a collection of Service definitions that correspond to users' REST endpoints. Service store allows users to model their REST endpoints as stores in Legend, map them to their models, and author Services on these models.
Service store technical documentation
Text Mode allows you to see the entirety of your workplace's code and edit your elements with ASCII text (as opposed to an interactive editor)
Text Mode will also parse and compile your code. If the code compiles, your GUI graph will be updated and the changes will be updated in your forms.
You can add a watermark to your query through the Advanced options tab. If a watermark is present, a waterdrop icon will appear on the top left of your query. You can also edit your watermark by clicking that icon.
A workspace is where you create your data models. It's a copy (also known as a branch) of a project which can be later merged back into the main project and shared with other users.