Data model

Data model objects

Collection

A Collection is a container of Objects. It contains one or more Objects and is defined by a set of properties. A Collection can contain different types of Objects. A Collection is defined using a Collection Type.

A Collection is, for example, a collection of invoices or a collection of purchase orders.

For information on how to define a Collection Type, see Define a Collection Type.

Object

An Object is an entity used in the user application domain. It is composed of a set of elements that is organized in a hierarchical tree structure. Each Object is defined by a set of properties. An Object can only belong to one Collection. An Object is defined using an Object Type.

An Object is, for example, a purchase order, an invoice.

Headers and Footers are optional Objects that are used to store general information that is common to all the Objects in the Collection. They allow files organized as [header - content - footer] to be easily imported.

For information on how to define an Object Type, see Define an Object Type.

Virtual Object

InterPlay creates a "Virtual Object" at import time when there is no corresponding record in the input file from which data is imported. The Virtual Object is used to transform an input flat structure into a hierarchical structure in which common information is not repeated. It groups together all the elements whose inherited properties have the same value.

To use Virtual Objects, it is required to define each inherited property type as criteria (set Criteria field to YES).

Element

An Element is the basic structure that makes up an Object. Elements can be nested within each other and as such contain multiple sub-elements. Each element is defined by a set of properties. All elements together comprise a unique Object.

An Element is, for example, a line of a purchase order or a line of an invoice.

Property

A Property is a name-value pair. To define a property, you must give it a name and define various attributes such as data type, representation formats, default value, restrictions, and so on.

There are 3 kinds of properties:

  • System properties are predefined properties, such as the status of the invoice or its creation date.
  • User properties are properties that you define to store values, for example the amount of an invoice item.
  • Computed properties are properties whose values are computed from other property values of sub elements. For instance, the total amount computed property can be defined on an invoice to compute the sum of the amount of the invoice items. The total amount will be updated when the amount on one item is modified.

Document

A Document is an input XML, or flat data file (fixed or variable) that stores business information, that is imported into Objects. A Document represents a Collection that contains a tree of Objects and Elements.

InterPlay:

  • Imports Documents to create Collections.
  • Exports Collections into Documents.

Error

Errors are system objects that can be attached to a Collection, an Object or an Element. Errors are generated at injection time or generated in InterPlay.

Objects in error can be easily identified by the error icons on the line where the error occurred.

  • Each Error object is created with an Error relationship. To view the Errors linked to an Object Type or Element, you need a function with the Input tag AllTypes, based on a goToChildren default navigation function, using the Error relationship.
  • To ensure navigation from the Errors back to the original Object type or Element, you must create a function having as input the Object type Error, based on the goToParents default navigation function, using the Error relationship.

For information about default functions, read About

default functions. For an example of how to create them, check out the Function creation example

Comments

Comments are system objects that can be attached to a Collection, an Object or an Element. Comments are created by users to mark query results.

For information on how to add a comment to a query result, see Add comments to query results.

  • To view the Comments linked to an Object Type or Element, you need a function with the Input tag AllTypes, based on a goToChildren default navigation function, using the Comment relationship.
  • To ensure navigation from the Comments back to the original Object type or Element, you must create a function having as input the Object type Comment, based on the goToParents default navigation function, using the Comment relationship.

For information about default functions, read About default functions. For an example of how to create them, check out the Function creation example

Related Links