3.1.4.110 TypeDescriptorReadXml

This operation is used to create the TypeDescriptors contained by the specified MetadataModel, along with their Properties and localized names, in the metadata store. The MetadataModel MUST be specified as a Well-Formed External Parsed Entity according to [XML] section 4.3.2 and MUST have as a root element the TypeDescriptor element as specified in [MS-BDCMFFS] section 2.1.3.43.

The following is the WSDL port type specification of the TypeDescriptorReadXml WSDL operation.

 <wsdl:operation name="TypeDescriptorReadXml" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
   <wsdl:input wsaw:Action="http://www.microsoft.com/Office/2009/BusinessDataCatalog/BusinessDataCatalogSharedService/TypeDescriptorReadXml" message="tns:BusinessDataCatalogSharedService_TypeDescriptorReadXml_InputMessage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/>
   <wsdl:output wsaw:Action="http://www.microsoft.com/Office/2009/BusinessDataCatalog/BusinessDataCatalogSharedService/TypeDescriptorReadXmlResponse" message="tns:BusinessDataCatalogSharedService_TypeDescriptorReadXml_OutputMessage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/>
   <wsdl:fault wsaw:Action="http://www.microsoft.com/Office/2009/BusinessDataCatalog/BusinessDataCatalogSharedService/TypeDescriptorReadXmlArgumentExceptionFault" name="ArgumentExceptionFault" message="tns:BusinessDataCatalogSharedService_TypeDescriptorReadXml_ArgumentExceptionFault_FaultMessage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/>
   <wsdl:fault wsaw:Action="http://www.microsoft.com/Office/2009/BusinessDataCatalog/BusinessDataCatalogSharedService/TypeDescriptorReadXmlArgumentNullExceptionFault" name="ArgumentNullExceptionFault" message="tns:BusinessDataCatalogSharedService_TypeDescriptorReadXml_ArgumentNullExceptionFault_FaultMessage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/>
   <wsdl:fault wsaw:Action="http://www.microsoft.com/Office/2009/BusinessDataCatalog/BusinessDataCatalogSharedService/TypeDescriptorReadXmlArgumentOutOfRangeExceptionFault" name="ArgumentOutOfRangeExceptionFault" message="tns:BusinessDataCatalogSharedService_TypeDescriptorReadXml_ArgumentOutOfRangeExceptionFault_FaultMessage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/>
   <wsdl:fault wsaw:Action="http://www.microsoft.com/Office/2009/BusinessDataCatalog/BusinessDataCatalogSharedService/TypeDescriptorReadXmlBdcExceptionStateFault" name="BdcExceptionStateFault" message="tns:BusinessDataCatalogSharedService_TypeDescriptorReadXml_BdcExceptionStateFault_FaultMessage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/>
   <wsdl:fault wsaw:Action="http://www.microsoft.com/Office/2009/BusinessDataCatalog/BusinessDataCatalogSharedService/TypeDescriptorReadXmlInvalidOperationExceptionFault" name="InvalidOperationExceptionFault" message="tns:BusinessDataCatalogSharedService_TypeDescriptorReadXml_InvalidOperationExceptionFault_FaultMessage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/>
   <wsdl:fault wsaw:Action="http://www.microsoft.com/Office/2009/BusinessDataCatalog/BusinessDataCatalogSharedService/TypeDescriptorReadXmlMetadataExceptionStateFault" name="MetadataExceptionStateFault" message="tns:BusinessDataCatalogSharedService_TypeDescriptorReadXml_MetadataExceptionStateFault_FaultMessage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/>
   <wsdl:fault wsaw:Action="http://www.microsoft.com/Office/2009/BusinessDataCatalog/BusinessDataCatalogSharedService/TypeDescriptorReadXmlPackageFormatExceptionStateFault" name="PackageFormatExceptionStateFault" message="tns:BusinessDataCatalogSharedService_TypeDescriptorReadXml_PackageFormatExceptionStateFault_FaultMessage" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/>
 </wsdl:operation>

The protocol client sends a BusinessDataCatalogSharedService_TypeDescriptorReadXml_InputMessage request message, and the protocol server MUST respond with a BusinessDataCatalogSharedService_TypeDescriptorReadXml_OutputMessage response message, unless any one of the conditions in the following table is met.

If any one of the conditions in the following table is met, the protocol server MUST instead respond with a SOAP fault containing the corresponding error complex type, serialized as specified in Complex Types (section 2.2.4). If more than one error condition is encountered, the protocol server MUST respond with exactly one error complex type, determined in an implementation-specific manner.

Error Complex Type

Condition

AccessDeniedExceptionState (section 2.2.4.3)

The security principal (2) in whose context the protocol client is operating is not authorized to modify the Method containing the specified Parameter.

ArgumentException (section 2.2.4.7)

One of the following conditions applies:

  • The "Model" value is not specified in the packageContents element.

  • The data type referenced by a TypeDescriptor contained by the MetadataModel is invalid. This happens when the identifier of the data type is not in the correct format, or the protocol server cannot access or load the specified data type.

  • The MetadataModel contains a TypeDescriptor that has "IsCollection" flag set and contains another TypeDescriptor that has "IsCollection" flag set.

  • The specified TypeDescriptor has "IsCollection" flag set and the TypeDescriptor which correspond to the specified MetadataModel also has "IsCollection" flag set.

  • The specified TypeDescriptor has "IsCollection" flag set and already contains a TypeDescriptor.

  • The specified TypeDescriptor is NULL and the specified Parameter already has a root TypeDescriptor.

  • The specified TypeDescriptor is not contained by the specified Parameter.

  • The specified MetadataModel contains a TypeDescriptor that has "ReadOnly" flag set and the specified Parameter has direction "In".

DuplicateMetadataObjectExceptionState (section 2.2.4.30)

The specified TypeDescriptor already contains another TypeDescriptor with the same name as the TypeDescriptor which corresponds to the MetadataModel.

ExceededMetadataObjectLimitExceptionState (section 2.2.4.32)

One of the following conditions applies:

  • The specified MetadataModel contains a TypeDescriptor that contains more TypeDescriptors than the implementation-specific maximum number of TypeDescriptors.

  • The specified TypeDescriptor contains implementation-specific maximum number of TypeDescriptors.

InvalidOperationException (section 2.2.4.38)

One of the following conditions applies:

  • The Entity containing the Method that contains the specified Parameter is active. <109>

  • The specified Parameter does not exist.

MetadataObjectNotFoundExceptionState (section 2.2.4.43)

The specified TypeDescriptor does not exist.

PackageFormatExceptionState (section 2.2.4.48)

One of the following conditions applies:

  • The specified XML does not conform to the format specified in [MS-BDCMFFS].

  • The Method containing the specified Parameter does not contain the FilterDescriptor referenced by the specified MetadataModel.