# Chapter 69. Implementing model rules in a plugin

A plugin can define rules by extending `RuleSource` and adding methods that define the rules. The plugin class can either extend `RuleSource` directly or can implement `Plugin` and include a nested `RuleSource` subclass.

Refer to the API docs for `RuleSource` for more details.

## 69.1. Applying additional rules

A rule method annotated with `Rules` can apply a `RuleSource` to a target model element.