# Package com.smartgwt.client.docs.serverds

This package is reference for all properties that may be specified in DataSource descriptor (.ds.xml file), for use with Smart GWT Pro Edition and above.

See: Description

- Class Summary
  Class | Description
  --- | ---
  AdvancedCriteria | AdvancedCriteria is a format for representing search criteria which may include operators on field values such as "less than", or may include sub-clauses such as several criteria applied to fields joined by an "OR" operator.
  Criterion | An object representing a criterion to apply to a record.
  DataSource | A DataSource is data-provider-independent description of a set of objects that will be loaded, edited and saved within the user interface of your application.
  DataSourceField | Metadata about a DataSourceField, including its type and validators.
  DSRequestModifier | An object that modifies a dsRequest based on several available values, including preceding responses from the same queue.
  Mail | A `Mail` object describes an email that will be sent automatically by the Smart GWT Server as part of a normal `DataSource` operation.
  OperationBinding | An operationBinding tells a DataSource how to execute one of the basic DS operations: fetch, add, update, remove.
  Operator | Specification of an operator for use in filtering, for example "equals".
  ServerObject | The ServerObject tells the ISC server how to find or create a server-side object involved in `DMI` (Direct Method Invocation).
  SimpleType | An atomic type such as a string or number, that is generally stored, displayed and manipulated as a single value.
  Validator | A validator describes a check that should be performed on a value the user is trying to save.
  VisibleMethod | Defines the method of the `ServerObject` if it appears in an `Application declaration file`.

## Package com.smartgwt.client.docs.serverds Description

This package is reference for all properties that may be specified in DataSource descriptor (.ds.xml file), for use with Smart GWT Pro Edition and above. Do not import this package in your Java code - it is informational only.

Each Java Class here represents an XML element, and each field is a setting that can be specified as either an attribute or a subelement.

For example, DataSource.canMultiSort can be set like this:

    <DataSource canMultiSort="true"/>

Or like this:

    <DataSource>
        <canMultiSort>true</canMultiSort>
    </DataSource>

When a class in this package has a field that is an Array of another class, it means there is a containing XML tag named after the field, then several tags named after the class. For example, DataSource.operationBindings is an Array of OperationBinding. The XML for this is:

    <DataSource>
        <operationBindings>
            <operationBinding operationType="fetch">
                ... various operationBinding settings ...
            </operationBinding>
        </operationBindings>
    </DataSource>

If the field is not an Array, it means there should be a singular tag. For example, OperationBinding.mail:

    <DataSource>
        <operationBindings>
            <operationBinding operationType="add">
                <mail to="admin@company.com" templateFile="messageTemplate.txt"/>
            </operationBinding>
        </operationBindings>
    </DataSource>

DataSource files and other Component XML files can be localized using resource bundles - see `this overview` for details.

NOTE: the settings described in the special "serverds" JavaDoc package are only usable with Smart GWT Pro Edition and above, however, the "serverds" documentation is included with Smart GWT LGPL since some parts of the documentation cover concepts and approaches that are also applicable in Smart GWT LGPL.