[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: XSD Schema type derived by restriction problem

  • From: "Christopher Loschen" <closchen@stanfordalumni.org>
  • To: <xml-dev@lists.xml.org>
  • Date: Fri, 20 Nov 2009 13:39:11 -0500

Re:  XSD Schema type derived by restriction problem
Hi Ken,

Thanks very much for your reply!

Yes, we do have the xs prefix mapped.

The SOAP request going out looks like this :

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 	<soapenv:Header>
 		<mes:MessageHeader
xmlns:mes="http://csi.xxx.com/CSI/Namespaces/Types/Public/MessageHeader.xsd">
 			<mes:TrackingMessageHeader>
 				<cin:version
xmlns:cin="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd">v20</cin:version>
 				<cin:messageId
xmlns:cin="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd">CSI-CES-TEST:1248272571983</cin:messageId>
 				<cin:timeToLive
xmlns:cin="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd">72000000000</cin:timeToLive>
 				<cin:dateTimeStamp
xmlns:cin="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd"
xsi:type="xs:dateTime">2009-07-22T14:22:51.983Z</cin:dateTimeStamp>
 			</mes:TrackingMessageHeader>
 			<mes:SecurityMessageHeader>
 				<cin:userName
xmlns:cin="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd">csitest</cin:userName>
 				<cin:userPassword
xmlns:cin="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd">testcsi</cin:userPassword>
 			</mes:SecurityMessageHeader>
 			<mes:SequenceMessageHeader>
 				<cin:sequenceNumber
xmlns:cin="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd">1</cin:sequenceNumber>
 				<cin:totalInSequence
xmlns:cin="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd">1</cin:totalInSequence>
 			</mes:SequenceMessageHeader>
 		</mes:MessageHeader>
 	</soapenv:Header>
 	<soapenv:Body>
 		<ech:EchoRequest
xmlns:ech="http://csi.xxx.com/CSI/Namespaces/Container/Public/EchoRequest.xsd">
 			<ech:data>H E L L O</ech:data>
 		</ech:EchoRequest>
 	</soapenv:Body>
 </soapenv:Envelope>

The response from the server looks like this :

<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:m="http://csi.xxx.com/CSI/Namespaces/Types/Public/MessageHeader.xsd"
xmlns:cer="http://csi.xxx.com/CSI/Namespaces/Types/Public/ErrorResponse.xsd">
 	<soap-env:Header>
 		<m:MessageHeader>
 			<TrackingMessageHeader
xmlns="http://csi.xxx.com/CSI/Namespaces/Types/Public/MessageHeader.xsd"
xmlns:cng="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd"
xmlns:soap="http://csi.xxx.com/CSI/Namespaces/JMS/Public/SoapFaultResponse.xsd">
 				<cng:version>v20</cng:version>
 				<cng:messageId>CSI-CES-TEST:1248272571983</cng:messageId>
 				<cng:timeToLive>72000000000</cng:timeToLive>
 			
<cng:conversationId>csitest~CNG-CSI~89ccf9d49d35d1f5:2c53d17b:122997122c9:-6dfd</cng:conversationId>
 				<cng:dateTimeStamp>2009-07-22T14:22:51.983Z</cng:dateTimeStamp>
 			</TrackingMessageHeader>
 			<SecurityMessageHeader
xmlns="http://csi.xxx.com/CSI/Namespaces/Types/Public/MessageHeader.xsd"
xmlns:cng="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd"
xmlns:soap="http://csi.xxx.com/CSI/Namespaces/JMS/Public/SoapFaultResponse.xsd">
 				<cng:userName>csitest</cng:userName>
 				<cng:userPassword>testcsi</cng:userPassword>	
 			</SecurityMessageHeader>
 			<SequenceMessageHeader
xmlns="http://csi.xxx.com/CSI/Namespaces/Types/Public/MessageHeader.xsd"
xmlns:cng="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd"
xmlns:soap="http://csi.xxx.com/CSI/Namespaces/JMS/Public/SoapFaultResponse.xsd">
 				<cng:sequenceNumber>1</cng:sequenceNumber>
 				<cng:totalInSequence>1</cng:totalInSequence>
 			</SequenceMessageHeader>
 		</m:MessageHeader>
 	</soap-env:Header>
 	<soap-env:Body>
 		<soap-env:Fault
xmlns:soap1="http://csi.xxx.com/CSI/Namespaces/Types/Public/SoapFaultDetails.xsd">
 			<faultcode>soap-env:Client</faultcode>
 			<faultstring>Unknown Error</faultstring>
 			<faultactor>soap-env:Client</faultactor>
 			<detail>
 				<soap1:CSIApplicationException>
 					<cer:Response
xmlns="http://csi.xxx.com/CSI/Namespaces/Types/Public/SoapFaultDetails.xsd"
xmlns:cng="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd"
xmlns:ns0="http://csi.xxx.com/CSI/Namespaces/Types/Public/SoapFault.xsd">
 						<cng:code>900</cng:code>
 						<cng:description>Unknown Error</cng:description>
 					</cer:Response>
 					<cer:ServiceProviderEntity
xmlns="http://csi.xxx.com/CSI/Namespaces/Types/Public/SoapFaultDetails.xsd"
xmlns:cng="http://csi.xxx.com/CSI/Namespaces/Types/Public/XXXDataModel.xsd"
xmlns:ns0="http://csi.xxx.com/CSI/Namespaces/Types/Public/SoapFault.xsd">
 						<cer:reportingServiceEntity>GATEWAY</cer:reportingServiceEntity>
 						<cer:faultDate>2009-07-22Z</cer:faultDate>
 						<cer:faultSequenceNumber>1</cer:faultSequenceNumber>
 						<cer:faultLevel>ERROR</cer:faultLevel>
 						<cer:faultCode>90000000001</cer:faultCode>
 						<cer:faultDescription>The method
[com.prft.gateway.common.XmlTransformHelper.transformRequest] raised exception
[java.lang.Exception].  java.lang.Exception: Invalid SOAP Request - Failed
Schema Validation Errors in the Header :
 Invalid xsi:type qname: 'xs:dateTime' in element
TrackingMessageHeader@http://csi.xxx.com/CSI/Namespaces/Types/Public/MessageHeader.xsd</cer:faultDescription>
 						<cer:ServiceProviderRawError>
 							<cer:code/>
 							<cer:description>The method
[com.prft.gateway.common.XmlTransformHelper.transformRequest] raised exception
[java.lang.Exception].  java.lang.Exception: Invalid SOAP Request - Failed
Schema Validation Errors in the Header :
 Invalid xsi:type qname: 'xs:dateTime' in element
TrackingMessageHeader@http://csi.xxx.com/CSI/Namespaces/Types/Public/MessageHeader.xsd</cer:description>
 						</cer:ServiceProviderRawError>
 					</cer:ServiceProviderEntity>
 				</soap1:CSIApplicationException>
 			</detail>
 		</soap-env:Fault>
 	</soap-env:Body>
 </soap-env:Envelope>

Thanks for any pointers or suggestions you might have.

Best,
Chris



Sorry, in my haste I mistyped the prefix ... you will need:

   xmlns:xs="http://www.w3.org/2001/XMLSchema"

... in your document for "xs:dateTime" to be a valid QName representing the
W3C Schema data type.

. . . . . . . . Ken

At 2009-11-20 13:14 -0500, I wrote:
>At 2009-11-20 13:10 -0500, Christopher Loschen wrote:
>>I'm working with a schema that defines a type by restricting the 
>>simple dateTime type. Our mapping rules (based on the JAX-RPC spec) 
>>map this to the class of the parent type (in this case, 
>>java.util.Calendar) rather than creating a new class to represent the 
>>derived type. Consequently, when we generate an XML message we specify 
>>that this element is of xsi:type="xs:dateTime" (that is, the parent type).
>>
>>However, when we do that, the schema validator flags the XML as 
>>invalid: it cites an invalid QName at the xsi:type="xs:dateTime" attribute.
>
>Have you declared xmlns:ns="http://www.w3.org/2001/XMLSchema" in your 
>XML document?
>
>The error message indicates that you have not, as a QName is only valid 
>if the prefix used has a namespace binding in scope.
>
>I hope this helps.
>
>. . . . . . . Ken



____________________________________________________________________
   



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.