2.2.4 Complex Types

The following sections specify the set of common XML Schema complex type definitions defined by this specification. XML Schema complex type definitions that are specific to a particular operation are described with the operation.

The definitions of some complex types in this section make use of Augmented Backus-Naur Form (ABNF) representation as specified in [RFC5234].

Complex types designated as error complex types and returned as responses by the protocol server MUST be formatted as SOAP faults, as specified in [SOAP1.2-1/2007] section 5.4.

This protocol specifies additional restrictions for the Code, Reason, and Detail elements for SOAP faults as follows:

  • Code: MUST contain a Value element, which MUST be set to "s:Sender" and MAY contain a Subcode element.

  • Reason: MUST contain a Text element, which MUST be ignored by the protocol client.

  • Detail: MUST either contain the error complex type or be empty.

The following table summarizes the set of common XML schema complex type definitions defined by this specification. XML schema complex type definitions that are specific to a particular operation are described with the operation.

Complex type

Description

AccessControlEntryStruct

The AccessControlEntryStruct complex type contains information about an access control entry (ACE).

AccessDeniedException

The AccessDeniedException error complex type contains information about a protocol-server-side error caused by a violation of access control on the metadata store. This complex type MUST be included only as part of a SOAP fault as specified in section 2.2.4.

AccessDeniedExceptionState

The AccessDeniedExceptionState error complex type contains information about a protocol-server-side error caused by a violation of access control on the metadata store. This complex type MUST be included only as part of a SOAP fault as specified in section 2.2.4.

ActionParameterStruct

The ActionParameterStruct complex type contains information about an ActionParameter.

ActionStruct

The ActionStruct complex type contains information about an Action.

AdministrationMetadataCatalogStruct

The AdministrationMetadataCatalogStruct contains information about a MetadataCatalog.

ArgumentException

The ArgumentException error complex type contains information about a protocol-server-side error caused by an argument with an invalid value. This complex type MUST be included only as part of a SOAP fault, as specified in section 2.2.4.

ArgumentNullException

The ArgumentNullException error complex type contains information about a protocol-server-side error caused by a NULL value in an argument that does not accept NULL values. This complex type MUST be included only as part of a SOAP fault, as specified in section 2.2.4.

ArgumentOutOfRangeException

The ArgumentOutOfRangeException error complex type contains information about a protocol-server-side error caused by an argument with a value outside the range of permissible values. This complex type MUST be included only as part of a SOAP fault, as specified in section 2.2.4.

ArrayOfAccessControlEntryStruct

The ArrayOfAccessControlEntryStruct complex type is a list of complex types, each of which represents an ACE.

ArrayOfAssociationStruct

The ArrayOfAssociationStruct complex type is a list of complex types, each of which represents an Association.

ArrayOfEntityStruct

The ArrayOfEntityStruct complex type is a list of complex types, each of which represents an Entity.

ArrayOfLobSystemStruct

The ArrayOfLobSystemStruct complex type is a list of complex types, each of which represents an LobSystem.

ArrayOfLocalizedNameStruct

The ArrayOfLocalizedNameStruct complex type is a list of complex types, each of which represents a localized name.

ArrayOfMethodInstanceStruct

The ArrayOfMethodInstanceStruct complex type is a list of complex types, each of which represents a MethodInstance.

ArrayOfModelStruct

The ArrayOfModelStruct complex type is a list of complex types, each of which represents a Model.

ArrayOfPropertyStruct

The ArrayOfPropertyStruct complex type is a list of complex types, each of which represents a Property.

ArrayOfstring

The ArrayOfstring complex type represents a list of xs:string as specified in [XMLSCHEMA2].

ArrayOfTypeDescriptorStruct

The ArrayOfTypeDescriptorStruct complex type is a list of complex types, each of which represents a TypeDescriptor.

ArrayOfunsignedInt

The ArrayOfunsignedInt complex type represents a list of unsigned xs:unsignedInt as specified in [XMLSCHEMA2].

AssociationGroupStruct

The AssociationGroupStruct complex type contains information about an AssociationGroup. Each Association referenced by the AssociationReferences contained by the AssociationGroup is identified by the values in the same index of the following lists:

  • associationEntityNames

  • associationEntityNamespaces

  • associationNames

  • associationIds

AssociationReferenceStruct

The AssociationReferenceStruct complex type contains information about an AssociationReference.

AssociationStruct

The AssociationStruct complex type MUST contain information about an Association. A namespace at any index of the sourceEntityNamespaces element of this complex type MUST be the namespace of the Entity whose name is at the same index of the sourceEntityNames element.

BdcException

The BdcException error complex type contains information about a protocol-server-side error encountered during implementation-specific operations or caused by a violation of constraints on the metadata store. This complex type MUST be included only as part of a SOAP fault, as specified in section 2.2.4.

BdcExceptionState

The BdcExceptionState error complex type contains information about a protocol-server-side error encountered during implementation-specific operations or caused by a violation of constraints on the metadata store. This complex type MUST be included only as part of a SOAP fault, as specified in section 2.2.4.

ComplexValueStruct

The ComplexValueStruct complex type MUST contain information about the data types related to the element containing this complex type.

ConcurrentModificationExceptionState

The ConcurrentModificationExceptionState error complex type contains information about a protocol-server-side error caused by concurrent modification of a MetadataObject. This complex type MUST only be included as part of a SOAP fault as specified in section 2.2.4.

DataClassStruct

The DataClassStruct complex type MUST contain information about a DataClass.

DefaultValueStruct

The DefaultValueStruct complex type contains details of a DefaultValue of a TypeDescriptor.

DuplicateMetadataObjectExceptionState

The DuplicateMetadataObjectExceptionState error complex type contains information about a protocol-server-side error caused by duplication of a MetadataObject. This complex type MUST only be included as part of a SOAP fault, as specified in section 2.2.4.

EntityStruct

The EntityStruct complex type contains information about an Entity.

ExceededMetadataObjectLimitExceptionState

The ExceededMetadataObjectLimitExceptionState error complex type contains information about a protocol-server-side error caused when a MetadataObject exceeds an implementation-specific limit to the number of MetadataObjects that it can contain or refer to. This complex type MUST only be included as part of a SOAP fault as section 2.2.4.

Exception

The Exception error complex type contains information about a protocol-server-side error. This complex type MUST be included only as part of a SOAP fault, as specified in section 2.2.4.

FilterDescriptorStruct

The FilterDescriptorStruct complex type contains information about a FilterDescriptor.

IdentifierStruct

The IdentifierStruct complex type contains information about an Identifier.

InvalidMetadataObjectExceptionState

The InvalidMetadataObjectExceptionState error complex type contains information about a protocol-server-side error caused by invalid attributes of a MetadataObject. This complex type MUST only be included as part of a SOAP fault as specified in section 2.2.4.

InvalidMetadataPropertyExceptionState

The InvalidMetadataPropertyExceptionState error complex type contains information about a protocol-server-side error caused by an invalid Property detected in the set of Properties of a MetadataObject. This complex type MUST only be included as part of a SOAP fault as specified in section 2.2.4.

InvalidOperationException

The InvalidOperationException error complex contains information about a protocol-server-side error caused by an attempt to perform an operation that is invalid for the current state of the protocol server. This complex type MUST be included only as part of a SOAP fault, as specified in section 2.2.4.

LobSystemInstanceStruct

The LobSystemInstanceStruct complex type contains information about an LobSystemInstance.

LobSystemStruct

The LobSystemStruct complex type contains information about an LobSystem.

LocalizedNameStruct

The LocalizedNameStruct complex type contains information about a localized name.

MetadataException

The MetadataException error complex type contains information about a protocol-server-side error caused by a syntactic or semantic violation of a MetadataModel constraint in the metadata store. This complex type MUST be included only as part of a SOAP fault, as specified in section 2.2.4.

MetadataObjectNotFoundExceptionState

The MetadataObjectNotFoundExceptionState error complex type contains information about a protocol-server-side error caused when a requested MetadataObject is not found. This complex type MUST only be included as part of a SOAP fault, as specified in section 2.2.4.

MetadataObjectStruct

The MetadataObjectStruct complex type contains the attributes of the MetadataObject.

MethodInstanceStruct

The MethodInstanceStruct complex type contains information about a MethodInstance.

MethodStruct

The MethodStruct complex type contains information about a Method.

ModelStruct

The ModelStruct complex type contains information about a Model.

PackageFormatExceptionState

The PackageFormatExceptionState error complex type contains information about a protocol-server-side error caused when specified XML does not conform to the Business Data Connectivity Model File Format as specified in [MS-BDCMFFS] or the MetadataModel contained in the specified XML conforming to the Business Data Connectivity Model File Format as specified in [MS-BDCMFFS] has invalid configuration of MetadataObjects or their attributes. This complex type MUST only be included as part of a SOAP fault as specified in section 2.2.4.

ParameterStruct

The ParameterStruct complex type contains information about a Parameter.

PropertyStruct

The PropertyStruct complex type contains information about a Property.

ProxyGenerationResult

The ProxyGenerationResult complex type contains information about Business Logic Modules<1>.

SafetyNetStruct

The SafetyNetStruct complex type represents a single throttle configuration setting that encapsulates configuration information to support implementation-specific time-and-space-limiting algorithms in the protocol client when running operations against a line-of-business (LOB) system. For example, an implementation of the protocol that reads MetadataModels and uses them to run operations against an LOB system could limit the number of concurrent operations against the LOB system, abort an operation after a certain amount of time has expired, or reject operations that read or write more than a specific quantity of data.

TypeDescriptorStruct

The TypeDescriptorStruct complex type contains information about a TypeDescriptor.

Version

The Version complex type MUST contain information about the version of a DataClass.