Problem/Motivation

XML elements defined with minOccurs="0" not recognized as optional

Proposed resolution

Identify XML elements defined with minOccurs="0". Make a mapping of these for storage and later use.

Remaining tasks

While this maps the base field to the operation, what is done with it will be up to individual implementation as and when needed.

Issue fork wsdl_docs-3285460

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

robertoperezsoriano created an issue. See original summary.

robertoperezsoriano’s picture

robertoperezsoriano’s picture

Status: Active » Needs review
robertoperezsoriano’s picture

Updated patch with new function parameter declaration.

robertoperezsoriano’s picture

Cleaned up patch. No additional changes.

robertoperezsoriano’s picture

Updated patch with conditional to get the schema URI from the namespace. The missing conditional altered result of the array of optional parameters.

kbrinner made their first commit to this issue’s fork.

robertoperezsoriano’s picture

Updated patch. Considering elements without an "extension" base when populating the array of optional parameters.

leslie.cordell’s picture

I've added a completely different patch Roberto, this will revamp the way the required fields are handled by loading in all of the xsd files and parsing all of the elements, extracting some additional attributes including the minOccurs value, and the maxOccurs value, and then cross-referencing these with the $data_types array to build out a proper mapping to account for namespacing when a complex type shares the same name across files.

kbrinner’s picture

Currently holding on this until final patch is tested.

codesquatch’s picture

Version: 3.1.2 » 4.0.0
Status: Needs review » Fixed

This patch has been merged into core and released in https://www.drupal.org/project/wsdl_docs/releases/4.0.0

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.