ApplyPoliciesAndReturnTransactionRequest

The operation input is ApplyPoliciesAndReturnTransactionRequest. This is the root element of the request for the ApplyPoliciesAndReturnTransactionRequest command. This request is used to update the provided transaction with the provided Product information.

ParameterTypeConstraintsDescription
TransactionTransactionRequiredA container for transaction information.
RequestIDstringRequiredA string of data that contains the Request ID.

Element tns:ApplyPoliciesAndReturnTransactionRequest

<xs:element name="ApplyPoliciesAndReturnTransactionRequest">
		<xs:annotation>
			<xs:documentation>The root element of the request for the ApplyPoliciesAndReturnTransactionRequest command.  This request is used to update the provided transaction with the provided Product information.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Transaction">
					<xs:annotation>
						<xs:documentation>A container for transaction information.</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="Data">
								<xs:annotation>
									<xs:documentation>Contains the transaction data  conforming to the ExpereTxn schema.</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
									</xs:sequence>
									<xs:anyAttribute/>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element ref="RequestID" minOccurs="0"/>
				<xs:element name="Product">
					<xs:annotation>
						<xs:documentation>A container for product information.  A product is a set of policies used to update transaction data.</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:choice>
								<xs:sequence>
									<xs:element ref="OppsaOrganizationName"/>
									<xs:element ref="OppsaProductName" minOccurs="0" maxOccurs="unbounded"/>
								</xs:sequence>
								<xs:sequence>
									<xs:element name="Policies">
										<xs:annotation>
											<xs:documentation>A collection of policies to be applied to the transaction.  This is what is stored in a Product.</xs:documentation>
										</xs:annotation>
										<xs:complexType>
											<xs:sequence>
												<xs:element name="OppsaPolicy" maxOccurs="unbounded">
													<xs:annotation>
														<xs:documentation>An individual Policy</xs:documentation>
													</xs:annotation>
													<xs:complexType>
														<xs:sequence>
															<xs:element name="DataItems">
																<xs:annotation>
																	<xs:documentation>A collection of DataItems to be applied to the transaction</xs:documentation>
																</xs:annotation>
																<xs:complexType>
																	<xs:sequence>
																		<xs:element name="DataItem" maxOccurs="unbounded">
																			<xs:complexType>
																				<xs:sequence>
																					<xs:element name="XPath" type="xs:string" minOccurs="0">
																						<xs:annotation>
																							<xs:documentation>XPath to the location in the transaction to add the specified value.  This will be ignored if the transactiuon already has a value at this location.</xs:documentation>
																						</xs:annotation>
																					</xs:element>
																					<xs:element name="VisibilityTag" type="xs:boolean" minOccurs="0"/>
																					<xs:element name="CreateIfXPaths" minOccurs="0">
																						<xs:complexType>
																							<xs:sequence>
																								<xs:element name="CreateIfXPath" type="xs:string"/>
																							</xs:sequence>
																						</xs:complexType>
																					</xs:element>
																					<xs:element name="Values">
																						<xs:complexType>
																							<xs:sequence>
																								<xs:element name="Value" type="xs:string" maxOccurs="unbounded">
																									<xs:annotation>
																										<xs:documentation>Value to add at the specified XPath location</xs:documentation>
																									</xs:annotation>
																								</xs:element>
																							</xs:sequence>
																						</xs:complexType>
																					</xs:element>
																				</xs:sequence>
																				<xs:attribute name="BindingId" type="xs:int" use="optional"/>
																				<xs:attribute name="Name" type="xs:string" use="optional"/>
																			</xs:complexType>
																		</xs:element>
																	</xs:sequence>
																</xs:complexType>
															</xs:element>
														</xs:sequence>
													</xs:complexType>
												</xs:element>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:choice>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>