This section describes how to create custom specifications, from scratch based on FluentSpecification.Abstractions or using base Specification classes in FluentSpecification.Core.
| Specification | Custom, normall Specification implementation. |
| Validation Specification | Custom Specification implementation for validation scenarios. |
| Linq Specification | Custom Specification implementation for Linq. |
| Negatable Specification | Special negation handling for custom Specifications. |
| All in one |
Custom Specification with IComplexSpecification<T> usage. |
| Fluent API extensions | How to create custom extensions to Fluent API. |

