3.1.1 Abstract Data Model

This section describes a conceptual model of possible data organization that an implementation maintains to participate in this protocol. The described organization is provided to facilitate the explanation of how the protocol behaves. This document does not mandate that implementations adhere to this model as long as their external behavior is consistent with that described in this document.

The protocol server maintains a collection of FirstClassElement objects (see [MS-PPSAS] section 2.2.4.99) indexed by unique repository locations. Each first-class element can be independently published to and read from the server. Each first-class element references its dependents by their unique repository locations. The following UML diagram describes how the FirstClassElement objects are related:

Overview of first--class elements

Figure 2: Overview of first--class elements

A first-class element’s dependents MUST be published prior to that first-class element being consumed on the server. For example, all the first-class elements that a dashboard is dependent on are published prior to that dashboard being deployed or viewed.

The following classes are defined as first-class elements:

Dashboard: A customizable landing page for a business application or workspace that uses Web Parts to display selected information. It can provide a comprehensive look at the information inside the application or workspace by consolidating lists, libraries, text, images and other data into a dynamic, customizable information portal.

Each Web Part on a dashboard displays the information specified by a single first-class element.

The Filters, Reports, and Scorecards in a Dashboard can be connected together so that changes in the state of one first-class element will change the information displayed by other first-class elements. For example, a Filter can be connected to Report Views or Scorecards so that changes to the selections made in the Filter are reflected in the information shown by those Report Views and Scorecards.

When Filters, Reports, and Scorecards are connected in a Dashboard, each connection has an explicit source and a destination. State information in a dashboard flows from a connection source or begin point in one first-class element to a connection destination or endpoint in another first-class element. Filters, Reports, and Scorecards can each have multiple begin points and endpoints. A connection is fully defined by a source element, a begin point on that element, a destination element and an endpoint on that element. For example, the member name begin point on a Filter could be connected to the row endpoint on a Scorecard.

There are limitations on the way different first-class elements can be connected in a Dashboard:

First-class element

Can be a source?

Can be a destination?

Filter

Yes

No

Report View

No

Yes

Scorecard

Yes

Yes

  • The connection cannot create a circular reference; a user cannot connect a scorecard to a filter that is already linked to the scorecard.

  • A begin point is available if:

    • It is not already connected to another begin point or it is connected but its AcceptMultipleFilterLinks property is set to true.

    • It is not already connected to the begin point. If the dashboard item is a scorecard it can accept multiple connections from the same begin point.

  • Unless the target item is a scorecard a user cannot make multiple connections from a begin point to a target.

  • Although a scorecard can accept multiple connections from the same begin point, those connections cannot be to the same endpoint on the scorecard. In other words, a user can connect a filter to a scorecard’s Row endpoint and its Column endpoint, but a user cannot connect a begin point to a scorecard’s Row endpoint twice.

Scorecard: A report type that depicts organizational performance by displaying a collection of key performance indicators (KPIs) together with performance targets for those KPIs. A scorecard can be organized hierarchically.

ReportView: A visual display of data in a dashboard that can be coordinated with other report views by using filters.

Filter: A feature that enables users to modify dashboard views by changing the subset of data that is displayed in reports or scorecards.

KPI (key performance indicator): A predefined measure that is used to track performance of a strategic goal, objective, plan, initiative, or business process. A KPI is evaluated against a target. An explicit and measurable value taken directly from a data source.

Indicator: A set of graphics, text, and colors for defining different levels of performance when comparing an actual value and a target value within a KPI.

DataSource:  A reference to a disk, file, document, or other collection of information from which data is taken or moved.

The server also maintains a collection of annotations.

Annotation: One of possibly several notations associated with a comment. Each comment is associated with a single cell in a scorecard and meant to provide related information about the value in that scorecard cell.