Namespace SuperOffice.Data.SQL
Classes
Add
The Add function.
AddressTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum AddressType in the database
Aggregation
The Aggregation class
Alias
This class implements the Alias class. As used when redefining the name of an Aggregation.
AllDayEventFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum AllDayEvent in the database
And
The AND class
AppAvailStateFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum AppAvailState in the database
AppointmentCautionWarningFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum AppointmentCautionWarning in the database
AppointmentPrivateFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum AppointmentPrivate in the database
AppointmentStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum AppointmentStatus in the database
AppointmentTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum AppointmentType in the database
ArchiveBehaviourFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ArchiveBehaviour in the database
Argument
The Argument class. Inherit QueryElement as part of a Visitor Pattern
ArgumentCollection
ArgumentFunction
ArgumentFunction is the base class for all functions that can work on both Parameters and FieldInfos.
ArgumentParameterCollection
This class contains a structure like (FieldInfo, Parameter). The class is used for example when dealing with insert-statements, ex:
INSERT INTO associate T0(T0.associate_id, T0.name, T0.person_id) VALUES(1, 'SuperOffice', 2)
This example will look like this when coded:
AssociateTableInfo a = TablesInfo.GetAssociateTableInfo( "a" );
Insert i = S.NewInsert();
i.FieldValuePairs.Add( a.AssociateId, S.Parameter( 1 ) );
i.FieldValuePairs.Add( a.Name, S.Parameter( "SuperOffice" ) );
i.FieldValuePairs.Add( a.PersonId, S.Parameter( 2 ) );
ArrayCompare
This class contains the advanced parameters, such as BETWEEN and IN. What is different with these two is that they both contain an array of parameters on their "side" of the node tree.
AssociateTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum AssociateType in the database
Avg
The Avg Class. Not yet implemented.
BadgeTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum BadgeType in the database
BatchSave
The BatchSave Class.
Between
Class representing the Between part of the statement.
BlobLinkTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum BlobLinkType in the database
Bool
The Bool class
CcTemplateTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum CcTemplateType in the database
ChatMessageSpecialTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ChatMessageSpecialType in the database
ChatMessageTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ChatMessageType in the database
ChatSessionFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ChatSessionFlags in the database
ChatSessionStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ChatSessionStatus in the database
ChatStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ChatStatus in the database
ChatTopicFlagFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ChatTopicFlag in the database
Compare
The Compare class
ConfigTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ConfigType in the database
Count
The Count class
CountAll
The CountAll class - the argument is used to determine table, but the actual SQL generated will be "COUNT(*)"
CredentialUsageFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum CredentialUsage in the database
CrmActorTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum CrmActorType in the database
DashTileCurrencyModeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DashTileCurrencyMode in the database
DashTileEntityTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DashTileEntityType in the database
DashTileMeasureFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DashTileMeasure in the database
DashTileTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DashTileType in the database
DashTileUsageFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DashTileUsage in the database
DatabaseFieldAttribute
A field decorated with this attribute represents a field in a database table, and should only appear in a class decorated with DatabaseTableAttribute.
DatabaseFunctions
DatabaseFunctions is the base-class for all specific database-functions we support, for example Convert.
DatabaseTableAttribute
A class decorated with this attribute represents a table in the database
DateTimeFieldInfo
Field information class for DateTime-typed fields
Day
Argument function to extract the Day component of a datetime; output is an integer value
Delete
Class representing the Delete part of the statement.
DeltaStateFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DeltaState in the database
DeltaTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DeltaType in the database
DesignTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DesignType in the database
Difference
The DIFFERENCE class describes and implements the DIFFERENCE part of a sql-query.
Distinct
Distinct describes the Distinct part of a sql-command. Note that the field passed in, simply becomes
a return field and DOES NOT influence the outcome of the DISTINCT operation, which always
applies to the entire row.
For that kind of DISTINCT, use DistinctByFields instead.
Divide
The Divide function.
DocTmplDirectionFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DocTmplDirection in the database
DocTmplInvitationTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DocTmplInvitationType in the database
DocTmplPrivacyTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DocTmplPrivacyType in the database
DocTmplQuoteTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DocTmplQuoteType in the database
DocTmplTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DocTmplType in the database
DoubleFieldInfo
Field information class for DateTime-typed fields
DurationUnitFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum DurationUnit in the database
EMailFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum EMailFlags in the database
EMailPriorityFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum EMailPriority in the database
ElementStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ElementStatus in the database
EmailAccountStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum EmailAccountStatus in the database
EmailFromTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum EmailFromType in the database
EmailReplyToTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum EmailReplyToType in the database
EmailTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum EmailType in the database
Equal
The Equal class
ErpActorTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ErpActorType in the database
ExecuteOnEventFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ExecuteOnEvent in the database
Extensions
Extension methods for SQL-related objects/purposes
FieldAccessFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum FieldAccess in the database
FieldInfo
Information about a database field. This class is mainly used as a base class for the strongly typed subclasses, corresponding to the different field types in use.
FieldInfoCollection
The FieldInfoCollection class
FieldMetadataTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum FieldMetadataType in the database
FieldTypeConvert
FieldTypeConvert contains the interface to use when you want to convert a field to another type, for example from blob to varchar.
FormSubmissionStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum FormSubmissionStatus in the database
FormTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum FormType in the database
FreeBusyFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum FreeBusy in the database
GreaterThan
The GreaterThan class
GreaterThanOrEqual
The GreaterThanOrEqual class
Greatest
The Greatest function.
GroupBy
The Divide class
HasAll
HasAll: Specialized operator for int[] data fields
HasAny
HasAny: Specialized operator for int[] data fields
Having
Not implemented
Hour
Argument function to extract the Hour component of a datetime; output is an integer value
In
Implementation of the IN-class
InAll
InAll is a special case, valid only for the int[] datatype (think TAGS), that means "all of"
InnerJoin
Class that implements the Inner Join clause of a sql-query.
Insert
Class representing the SQL INSERT Statement
InsertFromSelect
Represents an INSERT INTO / SELECT FROM statement, where all of the return fields in the select part are routed into fields in the INSERT target table. Can only be used for non-replicated targets and does not allocate new primary keys.
Int16FieldInfo
Field information class for Int16-typed fields
Int32ArrayFieldInfo
Field information class for Int32-typed fields
Int32FieldInfo
Field information class for Int32-typed fields
IntArrayOperatorBase
COmmon base class for the specialized operators for int[] fields (tags)
Intersect
The INTERSECT class describes and implements the INTERSECT part of an sql-query.
IsNotNull
IsNotNull provides the user the possibility to validate if an expression Is Not NULL.
IsNull
IsNull provides the user the possibility to validate if an expression Is NULL.
JoinCompare
This class represents a join, consisting of a) a mandatory Equal comparison that defines the join, and b) an optional, arbitrarily deep Restriction that contains additional restrictions to be part of the join clause. Concrete subclasses then define if this is an Inner, Left Outer or Right Outer join.
JoinRestriction
JoinRestriction implements the collection part of the join-clause.
JsonValue
Operator to perform value retrieval from a text field in the database, that contains JSON data.
LeftOuterJoin
The LeftOuterJoin class describes the Left Outer Join of an join-expression.
LessThan
The Less Than class
LessThanOrEqual
Operator class for the less-than-or-equal (<=) operator
LicenseTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum SuperOffice.License.LicenseType in the database
Like
The Like class
LogEventFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum LogEvent in the database
LoginFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum LoginFlags in the database
Lower
Upper allow the case of a string to be altered so that all characters are lowercase.
MailboxTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum MailboxType in the database
MathematicalExpression
The base-class for all mathematical expressions.
Max
The MAX class find the maximum value in a set of rows.
Min
The MIN class find the minimum value in a set of rows.
Minute
Argument function to extract the Minute component of a datetime; output is an integer value
MissingAll
MissingAll: Specialized operator for int[] data fields
MissingAny
MissingAny: Specialized operator for int[] data fields
ModifiedAppointmentFieldsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ModifiedAppointmentFields in the database
Month
Argument function to extract the Month component of a datetime; output is an integer value
Multiply
The Multiply function.
NavigationFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum Navigation in the database
NonCoercedArgumentFunction
Marker class for date argument functions, so we can avoid coercion of parameter type to datetime
NotBetween
The NOT BETWEEN class
NotIn
The NOT IN class
NotInAll
NotInAll is a special case, valid only for the int[] datatype (think TAGS), that means "all of"
NotLike
The NOT LIKE class
NotificationPlatformFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum NotificationPlatform in the database
NullOperators
Base-class for Null-operators.
Or
Class containing the necessary functions for the OR-operator
OrderBy
The OrderBy-class.
Parameter
The Parameter class, representing a parameter kind of Argument. A parameter has a concrete value, which can be one of a number of possible types, such as an int or a string.
PhoneTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum PhoneType in the database
PrefDescAccessFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum PrefDescAccessFlags in the database
PrefDescValueTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum PrefDescValueType in the database
PreferenceLevelFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum PreferenceLevel in the database
PrivateSave
Base-class for INSERT, UPDATE and DELETE commands. Contains abstract methods that are common for all sub-classes.
PrivateSelect
The PrivateSelect class
PublishTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum PublishType in the database
QueryElement
Ipmplementing the visitor pattern.
QuoteStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum QuoteStatus in the database
QuoteVersionStateFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum QuoteVersionState in the database
RecipientSortingFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum RecipientSorting in the database
RecurrencePatternFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum RecurrencePattern in the database
RefcountFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum RefcountFlags in the database
RelationInfo
Information about a relation in a query (e.g. Select statement).
ReplyTemplateBodyFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ReplyTemplateBodyFlags in the database
Restriction
This is the base Restriction class.
ResultModification
ResultModification contains different sub-classes that modifies the resultset according to the operator.
ReturnFieldsCollection
The ReturnFieldsCollection is a Collection that is used to contain the different fields we are interested in when we are dealing with a select-command.
ReturnFieldsIndexer
Indexer for a collection of arguments (like ReturnFieldsCollection.
RightOuterJoin
Class that implements the Right Outer Join clause of a sql query.
RoleTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum RoleType in the database
SaleDoneFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum SaleDone in the database
SaleStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum SaleStatus in the database
ScriptTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ScriptType in the database
Second
Argument function to extract the Second component of a datetime; output is an integer value
Select
Class representing the SQL SELECT Statement
SelectionSystemTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum SelectionSystemType in the database
SelectionUnionTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum SelectionUnionType in the database
SenderMailModeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum SenderMailMode in the database
ServiceAuthStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ServiceAuthStatus in the database
ShipmentAddrStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShipmentAddrStatus in the database
ShipmentLinkActionFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShipmentLinkAction in the database
ShipmentLinkTaskFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShipmentLinkTaskFlags in the database
ShipmentLinkTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShipmentLinkType in the database
ShipmentListStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShipmentListStatus in the database
ShipmentMessageTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShipmentMessageType in the database
ShipmentStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShipmentStatus in the database
ShowStateFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShowState in the database
ShowTaskItemInClientFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShowTaskItemInClient in the database
ShowWindowStateFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ShowWindowState in the database
Soundex
Soundex is a database-specific algorithm that returns a phonetic representation of the argument string expression. These values should not be stored, only used in comparisons, in order to avoid problems when moving from one database to another.
SqlCommand
Abstract class, root of all Sql commands in the NetServer OSQL abstraction layer
StringFieldInfo
Field information class for string-typed fields
Subtract
The Subtract function.
Sum
The Sum class to find the sum of a column in a row set
TableExpression
TableExpression is the parent-class to the classes that work against tables. Subclasses will be Union, Differences and Intersections.
TableInfo
Base class for typed table information classes. Each typed subclass represents a table; each instance of a subclass represents one instance of a table in a query (multiple instances are automatically assigned unique correlation identifiers in the generated SQL, and must be explicitly joined to avoid a colossal cross product).
Typed subclasses for each known table are available through the TablesInfo class and its various static factory methods. Typed table info instances are also available from Rows and Entities objects and their corresponding CustomSearch nested classes.TableInfoCollection
The TableInfoCollection class contains the necessary methods and member-variables to control the different tables associated with a sql-expression.
TargetAssignementLevelFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TargetAssignementLevel in the database
TargetEntityTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TargetEntityType in the database
TargetMeasurementUnitFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TargetMeasurementUnit in the database
TargetPeriodTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TargetPeriodType in the database
TargetedDataRecord<MainTableInfo>
TargetedInnerJoin<TargetTableInfo>
Inner Join, where it is possible to retrieve the strongly typed tableinfo for the right-hand (target) side
TargetedLeftOuterJoin<TargetTableInfo>
Outer Join, where it is possible to retrieve the strongly typed tableinfo for the right-hand (target) side
TargetedSelect<MainTableInfo>
TaskDirectionFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TaskDirection in the database
TaskListItemTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TaskListItemType in the database
TaskTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TaskType in the database
TemporaryKeyDomainFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TemporaryKeyDomain in the database
TextTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TextType in the database
TicketBaseStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketBaseStatus in the database
TicketCategoryDelegateMethodFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketCategoryDelegateMethod in the database
TicketCategoryFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketCategoryFlags in the database
TicketLogActionFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketLogAction in the database
TicketMessageCategoryFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketMessageCategory in the database
TicketMessageTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketMessageType in the database
TicketOriginFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketOrigin in the database
TicketPriorityEscalateEventFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketPriorityEscalateEvent in the database
TicketPriorityFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketPriorityFlags in the database
TicketPriorityStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketPriorityStatus in the database
TicketReadStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketReadStatus in the database
TicketSecurityLevelFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketSecurityLevel in the database
TicketStatusTimeCounterFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TicketStatusTimeCounter in the database
Top
OBSOLETE: The TOP operator is obsolete and no longer supported. Use the paging functionality on SoCommand.ExecuteReader instead.
TravelEncryptionChildFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TravelEncryptionChild in the database
TravelEncryptionOwnFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TravelEncryptionOwn in the database
Trim
TrlogTransTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TrlogTransType in the database
TtlFlagsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum TtlFlags in the database
TypedFieldInfoBase<FieldType>
UInt16FieldInfo
Field information class for UInt16-typed fields
UdefJustificationFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum UdefJustification in the database
UnEqual
The NOT EQUAL class
Union
The UNION class describes and implements the UNION part of a sql-query.
Update
Class representing the SQL update Statement
Upper
Upper allow the case of a string to be altered so that all characters are uppercase.
UrlEncodingFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum UrlEncoding in the database
ValueOverrideFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum ValueOverride in the database
VideoMeetingStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum VideoMeetingStatus in the database
WebhookStateFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum WebhookState in the database
WeekdayFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum Weekday in the database
WidgetRequiredFieldsFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum WidgetRequiredFields in the database
WidgetThemeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum WidgetTheme in the database
WorkflowDefinitionStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum WorkflowDefinitionStatus in the database
WorkflowGoalTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum WorkflowGoalType in the database
WorkflowInstanceStatusFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum WorkflowInstanceStatus in the database
WorkflowStepTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum WorkflowStepType in the database
WorkflowTriggerTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum WorkflowTriggerType in the database
WorkflowWaitForActionTypeFieldInfo
Strongly typed FieldInfo derivative, for fields that represent the enum WorkflowWaitForActionType in the database
Year
Argument function to extract the Year component of a datetime; output is an integer value
Enums
BatchSave.TravelTransactionLogging
RelationType
Description of how a relation is expressed in a query.
SqlType
Enum SqlType
Delegates
UpdateField
This delegate is used by the Data layer if it has updated - manipulated - the data in a query, and the client might wish to know.