Hello - I was hoping to get some feedback on this feature request I am planning to give to WM. What do you think?
Enable webMethods to function as Source-of-truth for Enterprise-wide Data Structures.
SUMMARY
Definitions of canonical data structures are typically maintained outside webMethods as schemas or DTDs, with tools such as XMLSpy. Maintaining schemas outside webMethods is problematic because changes need to be synced with WM. The process to synchronize these changes with existing webMethods records is manual and error prone.
In places of this process, we want webMethods to serve as source of truth for all data structures used across in the enterprise. We think webMethods is a natural fit for this role. We want to maintain enterprise-wide data structures as webMethods record structures, and export them as schemas or WSDLs. Hence, we need strong schema import/export functionality in WM.
DETAILS
webMethods offers facilities for import and export of XSD schemas - these are the ‘record creation wizard’, and ‘pub.schema:createXSD’ service respectively. However, these facilities need to be made more complete before webMethods can serve as source of truth for data structures.
Some problems with WM schema import:
The import process ignores <xsd:annotation> and <xsd:documentation> elements. Hence documentation is lost.
Schema Constraints are imported, but don’t map directly enough. For example: Schema enumerated values don’t automatically populate picklists for a record element.
Schema patterns such as <xsd:pattern> are imported correctly. However, it is possible to specify a different pattern for a record element, and that overrides the underlying pattern for a schema element.
Some problems with WM schema export:
webMethods ignores record comments (it does not generate <xsd:annotation> and <xsd:documentation> elements during export). Hence documentation is lost.
Schema pattern constraints linked to a record are not exported.
IS 4.6 has a bug in schema export (see above). Also, the same schema exported by 6.x and 4.6 looks different.
The full test of WM providing the requested functionality is when we can import a complex schema into webMethods, then re-export it with no loss of information. (i.e. the imported and exported schema are identical in functionality.)