Yes, that's a known bug which came up a little while ago. It is fixed in the drafts http://samantha.oucs.ox.ac.uk:8080/srw1-1/ (XML Spy regarded an extension of all as legal but it turns out it isn't!). I'm afraid it is still pending on me to review the drafts at http://samantha.oucs.ox.ac.uk:8080/srw1-1/, write up the changes and get Ray to update the ones on LoC (the last either weeks have been somewhat hectic.) Matthew > -----Original Message----- > From: Z39.50 Next-Generation Initiative [mailto:[log in to unmask]] > On Behalf Of Robert Sanderson > Sent: Tuesday, July 13, 2004 12:01 AM > To: [log in to unmask] > Subject: Schema issues > > Futher to my comment about not being ready for > standardisation, see below > message forwarded from Tom Habing at UIUC. > > (Summary: MSXML says our schema is fubar, and another > validator does the > wrong thing) > > Matthew, any comments? > > Rob > > ---------- Forwarded message ---------- > Date: Mon, 12 Jul 2004 11:18:42 -0500 > From: Thomas G. Habing <[log in to unmask]> > To: Robert Sanderson <[log in to unmask]> > Subject: Re: OAI-PMH registry and ZeeRex > > Hi Rob, > > Sorry its taken me so long to get around to this. However, > in looking at this > fix I seem to have discovered a potential problem with SRW XML Schema: > > http://www.loc.gov/z3950/agency/zing/srw/srw-types.xsd > > Being a good XMLer :-) I always try to validate my files > against the relevant > schemas. My tools of choice are usually the Microsoft XML > toolkit (MSXML 4.0) > and the XSV validator from > http://www.ltg.ed.ac.uk/~ht/xsv-status.html. > > The MS toolkit complains that the XML Schema is not valid, > and XSV does not > give the expected result. > > The XML Schema fragments relevant to your explainResponse are these: > > <xsd:complexType name="responseType"> > <xsd:all> > <xsd:element ref="version"/> > <xsd:element ref="diagnostics" minOccurs="0"/> > <xsd:element ref="extraResponseData" minOccurs="0"/> > </xsd:all> > </xsd:complexType> > > <xsd:complexType name="explainResponseType"> > <xsd:complexContent> > <xsd:extension base="responseType"> > <xsd:all> > <xsd:element ref="record"/> > <xsd:element ref="echoedExplainRequest" minOccurs="0"/> > </xsd:all> > </xsd:extension> > </xsd:complexContent> > </xsd:complexType> > > Assuming that these are valid (see the following), to me this > indicates that an > <explainResponse> must contain at least a <version> and a > <record>, along with > some optional stuff including <diagnostics>. Therefore, I > was surprised when > the XSV validator didn't complain about your original > suggested correction > above, because it didn't contain either a version or record > element. Then I > tried validating it using the MS XML toolkit which complained > that the XML > Schema itself was not valid. When I looked up the error > message returned by MS > XML, I got this web page > http://support.microsoft.com/default.aspx?scid=kb;EN-US;q316635 which > essentially explains that using <xsd:all> inside of an > <xsd:extension> is not > legal. > > Presumably, the developers of this schema have done some > testing with various > validators, so I would be willing to accept that Microsoft's > interpretation of > the schema spec is wrong, but it is also curious that the XSV > validator, while > it doesn't complain of an error is unable to correctly > validate against the > schema. > > My suggestions would be to avoid using extensions of all > groups, such that the > explain response becomes: > > > <xsd:complexType name="explainResponseType"> > <xsd:all> > <xsd:element ref="version"/> > <xsd:element ref="diagnostics" minOccurs="0"/> > <xsd:element ref="extraResponseData" minOccurs="0"/> > <xsd:element ref="record" minOccurs="0"/> > <xsd:element ref="echoedExplainRequest" minOccurs="0"/> > </xsd:all> > </xsd:complexType> > > Assuming that the record really should be an optional > element. The other "all > extensions" could be modified similarly. > > In any case, I've made your suggested correction, ignoring > the fact that I > can't get it to validate with the current schema. > > Kind regards, > Tom > >