RFC 3421 (rfc3421) - Page 4 of 8
Select and Sort Extensions for the Service Location Protocol (SLP)
Alternative Format: Original Text Document
RFC 3421 Select and Sort Extensions for SLP November 2002 Step 2. Use the metrics obtained in Step 1 to sort attribute X for matching services. The SLP sort rules are adapted from the Lightweight Directory Access Protocol (LDAP) sort rules defined in RFC 2891 [RFC 2891]. Note that sort in SLP is a best effort, no sort error will be returned from a DA/SA to a UA. (1) The sort-key-list is in order of highest to lowest sort key precedence (Section 1.1 of RFC 2891). (2) Each attribute SHOULD only occur in the sort-key-list once (Section 1.1 of RFC 2891). If an attribute is included in the sort-key-list multiple times, only its first occurrence is considered, all other occurrences are ignored. (3) For a multi-valued attribute, the least value in each entry SHOULD be used in sort (Section 2.2 of RFC 2891). (4) An entry missing one or more of the sort keys is treated as having NULLs for those missing keys (Section 2.2 of RFC 2891). (5) NULL is considered as a larger value than all other valid values (Section 2.2 of RFC 2891). (6) As the attribute type in SLP is not enforced, an attribute may have inconsistent values. For the purpose of sorting, inconsistent values may exist only when an attribute is sorted as integer. Inconsistent values SHOULD be treated as NULLs. When a DA/SA receives a SrvRqst with a Sort extension, it MUST set the error code in the corresponding SrvRply to OPTION_NOT_UNDERSTOOD [RFC 2608] if the DA/SA does not support the Sort extension or cannot perform the requested sort. The DA/SA sets the error code in the corresponding SrvRply to zero if it has successfully processed the SrvRqst and performed the requested sort. We denote a Sort extension as Sort(sort-key-list). The following examples illustrate how to use the Sort extension. o Integer sort on speed (decreasing order). Sort(speed:i:-) [Note] "i" means integer sort, and "-" means decreasing order. Zhao, et. al. Experimental



