Represents information, used in conjunction with a PropertyFilter object, for controlling which properties of a Content Engine object (and with what level of detail) to return from the server during an object retrieval or an object refresh. Because the number and size of properties may be large for certain objects, using a property filter to retrieve a subset of the available properties can result in better performance by reducing the amount of data that is retrieved from the server.

In order to create a property filter, a FilterElement object must be created for each set of properties that you wish to add. First, create a PropertyFilter object, then call its AddIncludeProperty or AddIncludeType methods to specify one or more FilterElement objects. Depending on which method you choose to use, you can either create a FilterElement object directly and pass it as a method parameter or let the server create the object for you based on the values that you provide for the method parameters.

A FilterElement object can specify one or more properties, either by identifier or by type. When specifying properties by identifier, a FilterElement object is created by setting a parameter of the appropriate constructor to a space-separated list of symbolic names. When specifying properties by type, a FilterElement object is created by setting a parameter of the appropriate constructor to a space-separated list of type specifiers or a FilteredPropertyType constant.

In addition, a FilterElement object also has attributes you can set that control how property values are retrieved. These attributes override any global attributes that may be specified by the associated PropertyFilter object. If an attribute is not set in a FilterElement object, the attribute's global value in the PropertyFilter object will be used instead. If a global value is unspecified, a default value applies. The following attributes are set by the parameters of a FilterElement constructor:

  • levelDependents: A Boolean that specifies whether the recursion level to use when retrieving a dependent object is the same as that of the independent object to which it belongs (True) or one level deeper (False).
  • maxRecursion: A zero-based Integer that specifies the maximum allowable recursion depth to use when retrieving property relationships. This attribute determines the level of depth at which property values are included. If unspecified, the default is zero.
  • maxSize: A Long that specifies the maximum size, in bytes, of content data that can be returned when properties that hold content data are retrieved. If the amount of content data held by retrieved properties exceeds this size, no content data is returned. If unspecified, the default is to return all content data, no matter how large.
  • pageSize: An Integer that specifies the iterator page size for independent object sets returned by PropertyIndependentObjectSet properties. The iterator page size determines how many elements of an independent object set are retrieved from the server during each fetch. If unspecified, all of the elements in an independent object set are retrieved during a single fetch.

Namespace:  FileNet.Api.Property
Assembly:  FileNet.Api (in FileNet.Api.dll)

ToggleSyntax

Visual Basic (Declaration)
<SerializableAttribute> _
Public Class FilterElement _
	Implements ISerializable
C#
[SerializableAttribute]
public class FilterElement : ISerializable
Visual C++
[SerializableAttribute]
public ref class FilterElement : ISerializable
JavaScript
FileNet.Api.Property.FilterElement = function();

Type.createClass(
	'FileNet.Api.Property.FilterElement',
	null,
	ISerializable);

ToggleInheritance Hierarchy

System..::.Object
  FileNet.Api.Property..::.FilterElement

ToggleSee Also