class %iKnow.Filters.ContainsEntityFilter extends %iKnow.Filters.Filter

%iKnow.Filters.Filter implementation selecting sources based on whether they contain a particular entity or (optionally) any entities similar to the supplied string(s).

Filter parameters:

  1. pDomainId As %Integer
  2. pEntityList As %List - entity values to check for. At least one needs to occur in the source for it to be included in the filter. Values can also be provided as an array, in which case the top node is ignored.
  3. pIncludeSimilar As %Boolean (default 0) - if true, any sources containing an entity "similar" to the supplied ones is also withheld.
  4. pExcludeList As %List - if pIncludeSimilar=1, exclude any entity IDs in this list. Can also be provided as an array, in which case the top node is ignored.
  5. pUseIDs As %Boolean (default 0) - if 1, entity IDs are provided for pEntityList rather than entity values (cannot be combined with pIncludeSimilar=1).

Property Inventory (Including Private)

Method Inventory (Including Private)


property Entities as %List [ MultiDimensional ];
Property methods: EntitiesGet(), EntitiesIsValid(), EntitiesLogicalToOdbc(), EntitiesOdbcToLogical(), EntitiesSet()
property ExcludeList as %List [ MultiDimensional ];
Property methods: ExcludeListGet(), ExcludeListIsValid(), ExcludeListLogicalToOdbc(), ExcludeListOdbcToLogical(), ExcludeListSet()
property IncludeSimilar as %Boolean;
Property methods: IncludeSimilarDisplayToLogical(), IncludeSimilarGet(), IncludeSimilarIsValid(), IncludeSimilarLogicalToDisplay(), IncludeSimilarNormalize(), IncludeSimilarSet()
property UseIDs as %Boolean;
Property methods: UseIDsDisplayToLogical(), UseIDsGet(), UseIDsIsValid(), UseIDsLogicalToDisplay(), UseIDsNormalize(), UseIDsSet()


private method %OnNew(pDomainId As %Integer, ByRef pEntityList As %List, pIncludeSimilar As %Boolean = 0, ByRef pExcludeList As %List = "", pUseIDs As %Boolean = 0) as %Status [ Language = objectscript ]
Inherited description: This callback method is invoked by the %New() method to provide notification that a new instance of an object is being created.

If this method returns an error then the object will not be created.

It is passed the arguments provided in the %New call. When customizing this method, override the arguments with whatever variables and types you expect to receive from %New(). For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:

Method %OnNew(dob as %Date = "", name as %Name = "") as %Status If instead of returning a %Status code this returns an oref and this oref is a subclass of the current class then this oref will be the one returned to the caller of %New method.

private method BuildSourceFilter(maxOffset As %Integer) as %Status [ Language = objectscript ]
Inherited description:

This is the primary method that needs to be implemented by an actual %iKnow.Filters.Filter subclass to translate the abstract filter criteria the subclass addresses into a bitstring based on Source IDs. The subclass' implementation of this method should use SetSourceBits() for this purpose, setting the requested bitstrings for each offset up to maxOffset.

private classmethod RestoreFilterFromStringInternal(filterParams As %String) as %iKnow.Filters.Filter [ Language = objectscript ]
Inherited description:

Default implementation, with the filterParams corresponding to all %New() arguments. See also RestoreFilterFromString().

method ToString() as %String [ Language = objectscript ]
Inherited description:

Subclasses should implement this method to build a string representation of the filter instance. It should start with the filter class name, followed by a pipe (|) character and then a string representation that can be interpreted by its RestoreFilterFromStringInternal() implementation.

Inherited Members

Inherited Properties (Including Private)

Inherited Methods (Including Private)