Model Designer Object Properties

A report model consists of three parts:

  • Semantic Model: A semantic model contains your business model of the data, which is described in terms of familiar names such as Products or Customers.

  • Physical Model: A physical model contains a physical description of the database with optional transformations, such as defined queries within the Data Source View, to more closely correspond to the business model that you want.

  • Mapping: A mapping describes how the semantic model is represented within a physical model and binds semantic objects to their corresponding physical objects.

Each report model created by Report Model Designer contains exactly one semantic model, one physical model, and one mapping.

A report model is written in Semantic Model Definition Language (SMDL), which is XML-based. A SMDL file is used to create models when calling the report server Web service. The namespace URI for SMDL is https://schemas.microsoft.com/sqlserver/YYYY/MM/semanticmodeling, where YYYY/MM indicates the date of the release of that version of SMDL. The standard file extension for SMDL files is .smdl. The MimeType to use for SMDL files is simply text/xml. All identifiers in SMDL are case-sensitive and match using Invariant culture. In this documentation, SMDL elements are discussed as objects and collections.

This section discusses the different properties associated with a model and that can be assigned within Model Designer.

In This Section

Collection/Object

Properties

Description

Semantic Model Object

ID, Description, Version, Entities, Culture, Perspectives, CustomProperties, DataSourceView

Defines the entire model.

Attribute Object

Name, DataType, Nullable, Expression, SortDirection, Width, Alignment, MimeType, DataCulture, DiscourageGrouping, EnableDrillthrough, Format, ContextualName, IsAggregate, IsFilter, OmitSecurityFilters, DefaultAggregateAttributeID, ValueSelection, Binding

Defines an attribute of an entity.

AttributeReference Object

Path, AttributeID

Contains a reference to an attribute along with an optional path that can be used to reach that attribute.

Binding Object

Contains the information about how an entity, attribute, role, or inheritance binds to a physical data source.

Column Object

TableName, Name

Defines the column to which an entity or attribute is bound.

CustomProperties Collection

CustomProperty

Allows model design tools to store implementation-specific properties.

CustomProperty Object

Name, Value

Contains application-specific data.

DefaultAggregateAttributes Collection

AttributeReference

Contains references to the aggregate attributes to be shown when a summary of multiple instances of this entity is displayed.

DefaultDetailAttributes Collection

AttributeReference

Contains references to the attributes to be shown when an instance of this entity is displayed.

DefaultSecurityFilter Object

AttributeReference

Contains the attribute that is used as a filter on the entity if no security filters are present.

Entities Collection

EntityFolderItem

Contains an ordered list of entities and entity folders in the model.

Entity Object

CollectionName, UniqueConstraints, IdentifyingAttributes, DefaultDetailAttributes, DefaultAggregateAttributes, SortAttributes, InstanceSelection, IsLookup, Inheritance, DisjoinInheritance, Fields, SecurityFilters, DefaultSecurityFilter, Binding

Defines an entity within the model.

EntityFolder Object

Entities

Defines a folder that contains entities (and entity folders).

Field Object

Variations

Defines a field (attribute or role) of an entity.

FieldFolder Object

Fields

Defines a folder that contains fields (and field folders).

Fields Collection

FieldFolderItem

Contains an ordered list of fields (attributes and roles) and field folders for the entity.

HiddenFields Collection

FieldFolderItemID

Contains references to the fields and field folders that should not be displayed for the role's target entity when the role is used to reach the entity.

IdentifyingAttributes Collection

AttributeReference

Contains references to the attributes used to identify an instance of the entity to the user.

Inheritance Object

InheritsFromEntityID, Binding

Defines how the entity inherits from another entity.

Linguistics Collection

SingularName, PluralName

Defines linguistic properties of a role.

ModelItem Object

ID, Name, Description, Hidden, CustomProperties

Defines an element of the model: an entity, entity folder, field, or field folder.

ModelItems Collection

ModelItemID

Contains a list of model items in the perspective.

Perspective Object

ID, Name, Description, ModelItems, CustomProperties

Identifies a subset of the model to provide to users as a submodel.

Perspectives Collection

Perspective

Contains a list of perspectives of the model, for example, model subsets.

Recursion Object

Recursive, IncludeSelf

Defines recursive traversal properties of a role.

Relation Object

Name, RelationEnd

Defines the relation to which a Role or Inheritance is bound.

Role Object

Name, Linguistics, RelatedRoleID, Cardinality, ContextualName, HiddenFields, ExpandInline, PromoteLookup, Preferred, Recursion, Binding

Defines a role (a related entity) of an entity.

SecurityFilters Collection

AttributeReference

Contains attributes which should be used as filters on the entity.

SortAttribute Object

AttributeReference, SortDirection

Contains a reference to an attribute on which to sort.

SortAttributes Collection

SortAttribute

Contains references to attributes on which to sort.

Table Object

Name

Defines the table to which an entity is bound.

Variations Collection

Field

Contains fields which are considered variations of the containing field.