| 3.1 Add a new "order by" clause to the Optional Request Arguments of Section 7
A new subsection entitled "Order By" should be added to the Optional Request Arguments of Section 7.4. The OrderBy argument requests the server to provide the results of the query in a specified sequence.
Order By ::= (field [Asc|Desc]) *(,field [Asc|Desc])
This parameter is used to determine which field(s) are to be used to determine the sequencing of results returned by the query. The field(s) specified MUST be a system name or standard name field (as determined by the StandardNames flag) for which the Sortable Field in the Metadata Content Table is set to true. (See proposal 3.2 below for additional information on the Sortable Field.)
An optional directional indicator MAY be used to determine whether the list is sorted in Ascending (Asc) or Descending (Desc) order. If omitted, ascending order is assumed.
If the Server indicates that a field is Sortable in the metadata content, it MUST honor the client request for sorting by a single field. However, if the client requests multiple sorts columns which may create an undo burden on the server, the Server MAY return an error code or simply sort on the first field requested. If the field requested is not a Sortable field, the Server MUST return an error code. (See proposal 3.3 for suggested changes to error codes.)
: The collation sequence is implementation specific and not controllable by the client.
Example: Order By=ListPrice Desc
Instructs the server to return the result set with the highest priced property at top of the list.
3.2 Add a new "sortable" value to the Table metadata
| Field Name | Content Type | Descriptions |
| Sortable | Boolean | A truth-value which indicates that the field is sortable |
3.3 Add two new Reply Codes to Section 7.8
| Reply Code | Meaning |
| TBD | The requested Order By field is not a sortable value |
| TBD | The sort requested is too complex to be honored |
|