Applying Common Modeling Patterns

[This content is no longer valid. For the latest information on "M", "Quadrant", SQL Server Modeling Services, and the Repository, see the Model Citizen blog.]

This topic describes the categories of system-provided models that are available to create data models with basic patterns, patterns that support SQL Server Modeling CTP features, and models that enable custom configurations in Microsoft code name “Quadrant”.

Understanding Modeling Patterns

By default, the SQL Server Modeling CTP installs a set of domains that contain models that you can use to create models that fall into the following categories:

  • Basic Data Modeling Patterns – basic patterns in data structures, such as modules for scoping and creating storage, and types that aid in common patterns such as identity fields, relationships, and so on. Most of the patterns described here are part of the Microsoft code name “M” language itself.

  • SQL Server Modeling Services Patterns – patterns that support identity patterns, horizontal or logical data partitioning, and securable views, among others, which are used in the Modeling Services database. Models that use these patterns can be recognized by Microsoft or third-party tools that target data in Modeling Services.

  • Quadrant Patterns – patterns used by Microsoft code name “Quadrant” to support viewer customization. “M” data values that use these models modify the visual experience in “Quadrant”.

When Models are Used

Some of the basic modeling patterns are part of the “M” language, and do not require that you reference a specific “M” image file. An example of this is Queries in "M", which is used in the construction of views and in applying constraints over a field. Some patterns are used to apply common name/field pairs to types and extents to improve the design experience, such as the FoldersTable Extent (Repository.Item Module) in the Base Domain Library (BDL) and other types based on it, such as HasFolder. Using these types make data structures more consistent and their values easier to manage. Finally, some modeling patterns are used not to develop new types so much as to indicate data values specific to a particular model instance. “Quadrant” models are of this type.

See Also

Concepts

Designing Models and Domains using "M"

Other Resources

Getting Started with SQL Server Modeling CTP and Visual Studio 2010