Issue for document containing recursive complex type support

Hi

I am trying to create IS document type from an XML Schema containing recursive complex type.

ISC.0082.9106U “Complex type is recursive. webMethods Integration Server does not support creating a document type from an XSD with a recursive complex type.”

Is there any other solution to circumvent this problem ?

Thanks.
Djibril.

Djibril,

What version of IS are you running? For IS 6.0.1 a fix added the ability to override the recursive checking, the fix is 6.0.1 SP1 Fix 32 [it adds a parameter watt.core.schema.detectRecursive]. This fix is included with 6.1, so you could set this to false and you should be able to import your schema.

James…

I had this same issue on 6.1 and still had the same problem. Either this patch was not included in 6.1 or this problem has not been resolved.

Recursive Complex types are not supported in the IS 6.1. I have heard it will be supported in the 6.5 release coming out this spring. Contact support to find out if this is still the case.

Below shows a work around example that shows how you could modify your schema to preserve schema validity, but not use the Recursive Complex types. This example is based on OAG 8.

----------------- Example ---------------------------
The following examples based on OAG 8 are described based on the following webMethods usage scenarios. We have proposed at least one workaround for each of this issue.

Use Case 1 [UC-1]:
Validate XML Node using IS Schema, created using XML Schema Documents

Use Case 2 [UC-2]:
Create Records (or Flows, Specs, Service I/O Signatures, etc.) using XML Schema Documents

Recursive Complex Types:
OAG Release 8 uses recursive complex types. This is legal per XML
Schema and webMethods IS has support in [UC-1] above. However, it impacts [UC-2] and is a known issue. Here is a sample from release 8 that uses recursive complex types.

Source - line 1832, OAGIS8.0\OAGIS\Resources\Components.xsd

 
	
	A fully generic means of identifying an organizational unit. Can
	be an actual business unit (at any level) or an area of
	responsibility. Each is described with respect to others,
	via the ProximalUnit construct.
 
 
	
	
	
	
	
 


 
	
		
			Defines the
			relationship between this related unit and the preceeding
			unit,
		
	
	
                                      ^^^^^^^^^^^^^^^^^^
 

Suggested Workarounds:

Calls for 2 changes,

[Change 1] Create a new global element decl for ‘RelatedUnit’. That is,


[Change 2] Within ‘OrganizationUnit’ complex type, replace �RelatedUnit’ local element decl with an element decl that uses the global element decl ‘RelatedUnit’ by reference. That is, replace

	<xs:element name="RelatedUnit" type="RelatedUnitType"
                                             ^^^^^^^^^^^^^^^

with

	<xs:element ref="RelatedUnit"