Jumps: IvoaResReg :: registry mail archive :: RegistryMetadata :: VOResourceV10 :: RegUpgradeSummer2006
Meetings: InterOpMay2006ResReg :: InterOpSep2006ResReg
Adapting to Corrections to the Registry Interface WSDL
Author:
RayPlante
This is draft version of a note to be submitted to the
IVOA Document Repository.
Abstract
Prior to 24 September 2008, an inconsistency was discovered in the
IVOA Registry Interface standards document (v1.00) between the text
and the actual WSDL document included in the appendix and provided on
the IVOA web site
(via
http://www.ivoa.net/wsdl/).
The Registry Working Group plans to change the WSDL to match the
text. Consequently, this has implications for current registries that
are compliant with the uncorrected WSDL. This document describes how
the WSDL is being changed as well as how we can provide backward
compatible support for currently deployed registries. In particular,
we will correct the official WSDL without changing the namespace. We describe how registry providers should indicate which versions of the WSDL are supported, how clients can learn which interface is supported, and how registries and clients may choose to support both the corrected and uncorrected interface.
1. Introduction: the Problem
The
Registry Interface v1.00 (RI) contains an inconsistency in the description of the keyword search interface between the text provided in section 2.1.3 and the WSDL spelled out in Appendix A.1. In the text description, the 3rd and 4th arguments to the
KeywordSearch operation,
from
and
max
, respectively, control which sequence of matched records are returned. The
from
parameter indicates "the minimum position in the complete set of matched records of the range of records to be returned", and
max
indicates "the maximum number of matched records to return". Thus the position of the last record returned is
from+max-1
. When a client uses this to page through a large number of matched records, the value of
from
for the next query will be
from+max
.
In the WSDL document, the 3rd and 4th parameters controling the range of matches are called
from
and
to
. The intended meaning of
from
is the same as described above, but
to
indicated the position last record to display. When paging, the value of
to
for the next query would be
to+1
.
As of 24 September 2008, the copy of the WSDL as given in the appendix has been also available on the IVOA Web site (via
http://www.ivoa.net/wsdl). Consequently, this is typically been the basis for implementations up to that date.
The discrepancy presumably resulted from an incomplete edit to the RI document. In an earlier version, both the
Search and the
KeywordSearch operations took the
from
and
to
argument parameters. After review by the working group, it was decided to change it to
from
and
max
for both of the operations. While the text was updated in both places, the WSDL was only updated for the
Search operation.
Correcting the Standard and Impact on Existing Implementations
As
from
and
max
represent the intention of the working group review, the next version of the RI document will change the WSDL to match the description in the text of section 2.1.3. To minimize the disruption to existing deployed registries and clients, the namespace for the WSDL document will
not be changed.
Normally, changing the interface defined in the WSDL to this extent would wreak havoc with existing clients. However, our working group discussions suggest in this particular case, such a change will not have a major practical impact, mainly due to the current lack of penetration of the RI standard search interface. The most extensive use of the standard search interface today is within the
Astrogrid project, specifically via its desktop environment. In this case, nearly all of the registry queries are done via the
XQuerySearch operation, and the
KeywordSearch interface is not used at all.
Other IVOA registries (e.g. from NVO and Euro-VO) are in a less mature state and would be more easily adapted.
The reference implementation of the client library provided by the NVO's
IVOARegistry package and is actively supported, though not widely used outside of the NVO Project at this time. The latest version is aware of the problem described in this Note: it pulls the WSDL from the service and attempts to analyze whether its
KeywordSearch supports the
to
or the
max
parameter and adapts its query accordingly. This analysis is not trivial nor robust, so a simpler solution for making this distinction would be helpful.
While it seems the proposed correction to the WSDL will result in few effects seen by users today, it will be important that registry server and client applications incorporate the change to prevent problems in the future. Of course, there may be some period of time, particularly for
AstroGrid registries, before all implementations of the RI can be brought into compliance with the corrected WSDL. Therefore, it is worth spelling out a plan for providing compatibility across corrected and uncorrected implementations.