
package com.amadeus.travelManagement.amadeus.xml._2010._06.travel_offerpricers_v1;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;


/**
 * A proposal to sell a specific set of products or Services under specific conditions, for a certain price. Can be the response to a shopping request.
 * 
 * &lt;p&gt;Java class for OfferType complex type.
 * 
 * &lt;p&gt;The following schema fragment specifies the expected content contained within this class.
 * 
 * &lt;pre&gt;
 * &amp;lt;complexType name="OfferType"&amp;gt;
 *   &amp;lt;complexContent&amp;gt;
 *     &amp;lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&amp;gt;
 *       &amp;lt;sequence&amp;gt;
 *         &amp;lt;element name="OfferID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type"/&amp;gt;
 *         &amp;lt;element name="OwnerCode" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}AirlineDesigCodeType"/&amp;gt;
 *         &amp;lt;element name="OwnerTypeCode" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}OwnerTypeCodeType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="ValidatingCarrierCode" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}AirlineDesigCodeType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="RequestedDateInd" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}IndType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="WebAddressURL" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}UniformResourceID_Type" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="RedemptionInd" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}IndType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="MatchAppText" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}TextType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="MatchType" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}CodeType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="MatchPercent" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}PercentType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="OfferExpirationDateTime" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}DateTimeType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="PaymentTimeLimitDateTime" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}DateTimeType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="PriceGuaranteeTimeLimitDateTime" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}DateTimeType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="BaggageAllowance" maxOccurs="unbounded" minOccurs="0"&amp;gt;
 *           &amp;lt;complexType&amp;gt;
 *             &amp;lt;complexContent&amp;gt;
 *               &amp;lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&amp;gt;
 *                 &amp;lt;sequence&amp;gt;
 *                   &amp;lt;element name="PaxJourneyRefID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type" maxOccurs="unbounded"/&amp;gt;
 *                   &amp;lt;element name="PaxRefID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type" maxOccurs="unbounded"/&amp;gt;
 *                   &amp;lt;element name="BaggageAllowanceRefID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type"/&amp;gt;
 *                 &amp;lt;/sequence&amp;gt;
 *               &amp;lt;/restriction&amp;gt;
 *             &amp;lt;/complexContent&amp;gt;
 *           &amp;lt;/complexType&amp;gt;
 *         &amp;lt;/element&amp;gt;
 *         &amp;lt;element name="BaggageDisclosureRefID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type" maxOccurs="99" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="Desc" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}DescType" maxOccurs="99" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="DisclosureRefID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="PenaltyRefID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type" maxOccurs="99" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="JourneyOverview" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}JourneyOverviewType" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="PTC_OfferParameters" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}PTC_OfferParametersType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="OfferItem" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}OfferItemType" maxOccurs="unbounded"/&amp;gt;
 *         &amp;lt;element name="TotalPrice" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}PriceType" minOccurs="0"/&amp;gt;
 *       &amp;lt;/sequence&amp;gt;
 *     &amp;lt;/restriction&amp;gt;
 *   &amp;lt;/complexContent&amp;gt;
 * &amp;lt;/complexType&amp;gt;
 * &lt;/pre&gt;
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "OfferType", propOrder = {
    "offerID",
    "ownerCode",
    "ownerTypeCode",
    "validatingCarrierCode",
    "requestedDateInd",
    "webAddressURL",
    "redemptionInd",
    "matchAppText",
    "matchType",
    "matchPercent",
    "offerExpirationDateTime",
    "paymentTimeLimitDateTime",
    "priceGuaranteeTimeLimitDateTime",
    "baggageAllowance",
    "baggageDisclosureRefID",
    "desc",
    "disclosureRefID",
    "penaltyRefID",
    "journeyOverview",
    "ptcOfferParameters",
    "offerItem",
    "totalPrice"
})
public class OfferType {

    @XmlElement(name = "OfferID", required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String offerID;
    @XmlElement(name = "OwnerCode", required = true)
    protected String ownerCode;
    @XmlElement(name = "OwnerTypeCode")
    @XmlSchemaType(name = "string")
    protected OwnerTypeContentType ownerTypeCode;
    @XmlElement(name = "ValidatingCarrierCode")
    protected String validatingCarrierCode;
    @XmlElement(name = "RequestedDateInd")
    protected Boolean requestedDateInd;
    @XmlElement(name = "WebAddressURL")
    @XmlSchemaType(name = "anyURI")
    protected String webAddressURL;
    @XmlElement(name = "RedemptionInd")
    protected Boolean redemptionInd;
    @XmlElement(name = "MatchAppText")
    protected String matchAppText;
    @XmlElement(name = "MatchType")
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String matchType;
    @XmlElement(name = "MatchPercent")
    protected BigDecimal matchPercent;
    @XmlElement(name = "OfferExpirationDateTime")
    protected DateTimeType offerExpirationDateTime;
    @XmlElement(name = "PaymentTimeLimitDateTime")
    protected DateTimeType paymentTimeLimitDateTime;
    @XmlElement(name = "PriceGuaranteeTimeLimitDateTime")
    protected DateTimeType priceGuaranteeTimeLimitDateTime;
    @XmlElement(name = "BaggageAllowance")
    protected List<OfferType.BaggageAllowance> baggageAllowance;
    @XmlElement(name = "BaggageDisclosureRefID")
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected List<String> baggageDisclosureRefID;
    @XmlElement(name = "Desc")
    protected List<DescType> desc;
    @XmlElement(name = "DisclosureRefID")
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String disclosureRefID;
    @XmlElement(name = "PenaltyRefID")
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected List<String> penaltyRefID;
    @XmlElement(name = "JourneyOverview")
    protected JourneyOverviewType journeyOverview;
    @XmlElement(name = "PTC_OfferParameters")
    protected List<PTCOfferParametersType> ptcOfferParameters;
    @XmlElement(name = "OfferItem", required = true)
    protected List<OfferItemType> offerItem;
    @XmlElement(name = "TotalPrice")
    protected PriceType totalPrice;

    /**
     * Gets the value of the offerID property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getOfferID() {
        return offerID;
    }

    /**
     * Sets the value of the offerID property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setOfferID(String value) {
        this.offerID = value;
    }

    /**
     * Gets the value of the ownerCode property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getOwnerCode() {
        return ownerCode;
    }

    /**
     * Sets the value of the ownerCode property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setOwnerCode(String value) {
        this.ownerCode = value;
    }

    /**
     * Gets the value of the ownerTypeCode property.
     * 
     * @return
     *     possible object is
     *     {@link OwnerTypeContentType }
     *     
     */
    public OwnerTypeContentType getOwnerTypeCode() {
        return ownerTypeCode;
    }

    /**
     * Sets the value of the ownerTypeCode property.
     * 
     * @param value
     *     allowed object is
     *     {@link OwnerTypeContentType }
     *     
     */
    public void setOwnerTypeCode(OwnerTypeContentType value) {
        this.ownerTypeCode = value;
    }

    /**
     * Gets the value of the validatingCarrierCode property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getValidatingCarrierCode() {
        return validatingCarrierCode;
    }

    /**
     * Sets the value of the validatingCarrierCode property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setValidatingCarrierCode(String value) {
        this.validatingCarrierCode = value;
    }

    /**
     * Gets the value of the requestedDateInd property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isRequestedDateInd() {
        return requestedDateInd;
    }

    /**
     * Sets the value of the requestedDateInd property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setRequestedDateInd(Boolean value) {
        this.requestedDateInd = value;
    }

    /**
     * Gets the value of the webAddressURL property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getWebAddressURL() {
        return webAddressURL;
    }

    /**
     * Sets the value of the webAddressURL property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setWebAddressURL(String value) {
        this.webAddressURL = value;
    }

    /**
     * Gets the value of the redemptionInd property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isRedemptionInd() {
        return redemptionInd;
    }

    /**
     * Sets the value of the redemptionInd property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setRedemptionInd(Boolean value) {
        this.redemptionInd = value;
    }

    /**
     * Gets the value of the matchAppText property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getMatchAppText() {
        return matchAppText;
    }

    /**
     * Sets the value of the matchAppText property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setMatchAppText(String value) {
        this.matchAppText = value;
    }

    /**
     * Gets the value of the matchType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getMatchType() {
        return matchType;
    }

    /**
     * Sets the value of the matchType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setMatchType(String value) {
        this.matchType = value;
    }

    /**
     * Gets the value of the matchPercent property.
     * 
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *     
     */
    public BigDecimal getMatchPercent() {
        return matchPercent;
    }

    /**
     * Sets the value of the matchPercent property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *     
     */
    public void setMatchPercent(BigDecimal value) {
        this.matchPercent = value;
    }

    /**
     * Gets the value of the offerExpirationDateTime property.
     * 
     * @return
     *     possible object is
     *     {@link DateTimeType }
     *     
     */
    public DateTimeType getOfferExpirationDateTime() {
        return offerExpirationDateTime;
    }

    /**
     * Sets the value of the offerExpirationDateTime property.
     * 
     * @param value
     *     allowed object is
     *     {@link DateTimeType }
     *     
     */
    public void setOfferExpirationDateTime(DateTimeType value) {
        this.offerExpirationDateTime = value;
    }

    /**
     * Gets the value of the paymentTimeLimitDateTime property.
     * 
     * @return
     *     possible object is
     *     {@link DateTimeType }
     *     
     */
    public DateTimeType getPaymentTimeLimitDateTime() {
        return paymentTimeLimitDateTime;
    }

    /**
     * Sets the value of the paymentTimeLimitDateTime property.
     * 
     * @param value
     *     allowed object is
     *     {@link DateTimeType }
     *     
     */
    public void setPaymentTimeLimitDateTime(DateTimeType value) {
        this.paymentTimeLimitDateTime = value;
    }

    /**
     * Gets the value of the priceGuaranteeTimeLimitDateTime property.
     * 
     * @return
     *     possible object is
     *     {@link DateTimeType }
     *     
     */
    public DateTimeType getPriceGuaranteeTimeLimitDateTime() {
        return priceGuaranteeTimeLimitDateTime;
    }

    /**
     * Sets the value of the priceGuaranteeTimeLimitDateTime property.
     * 
     * @param value
     *     allowed object is
     *     {@link DateTimeType }
     *     
     */
    public void setPriceGuaranteeTimeLimitDateTime(DateTimeType value) {
        this.priceGuaranteeTimeLimitDateTime = value;
    }

    /**
     * Gets the value of the baggageAllowance property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the baggageAllowance property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getBaggageAllowance().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link OfferType.BaggageAllowance }
     * 
     * 
     */
    public List<OfferType.BaggageAllowance> getBaggageAllowance() {
        if (baggageAllowance == null) {
            baggageAllowance = new ArrayList<OfferType.BaggageAllowance>();
        }
        return this.baggageAllowance;
    }

    /**
     * Gets the value of the baggageDisclosureRefID property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the baggageDisclosureRefID property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getBaggageDisclosureRefID().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getBaggageDisclosureRefID() {
        if (baggageDisclosureRefID == null) {
            baggageDisclosureRefID = new ArrayList<String>();
        }
        return this.baggageDisclosureRefID;
    }

    /**
     * Gets the value of the desc property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the desc property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getDesc().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link DescType }
     * 
     * 
     */
    public List<DescType> getDesc() {
        if (desc == null) {
            desc = new ArrayList<DescType>();
        }
        return this.desc;
    }

    /**
     * Gets the value of the disclosureRefID property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDisclosureRefID() {
        return disclosureRefID;
    }

    /**
     * Sets the value of the disclosureRefID property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDisclosureRefID(String value) {
        this.disclosureRefID = value;
    }

    /**
     * Gets the value of the penaltyRefID property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the penaltyRefID property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getPenaltyRefID().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getPenaltyRefID() {
        if (penaltyRefID == null) {
            penaltyRefID = new ArrayList<String>();
        }
        return this.penaltyRefID;
    }

    /**
     * Gets the value of the journeyOverview property.
     * 
     * @return
     *     possible object is
     *     {@link JourneyOverviewType }
     *     
     */
    public JourneyOverviewType getJourneyOverview() {
        return journeyOverview;
    }

    /**
     * Sets the value of the journeyOverview property.
     * 
     * @param value
     *     allowed object is
     *     {@link JourneyOverviewType }
     *     
     */
    public void setJourneyOverview(JourneyOverviewType value) {
        this.journeyOverview = value;
    }

    /**
     * Gets the value of the ptcOfferParameters property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the ptcOfferParameters property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getPTCOfferParameters().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link PTCOfferParametersType }
     * 
     * 
     */
    public List<PTCOfferParametersType> getPTCOfferParameters() {
        if (ptcOfferParameters == null) {
            ptcOfferParameters = new ArrayList<PTCOfferParametersType>();
        }
        return this.ptcOfferParameters;
    }

    /**
     * Gets the value of the offerItem property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the offerItem property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getOfferItem().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link OfferItemType }
     * 
     * 
     */
    public List<OfferItemType> getOfferItem() {
        if (offerItem == null) {
            offerItem = new ArrayList<OfferItemType>();
        }
        return this.offerItem;
    }

    /**
     * Gets the value of the totalPrice property.
     * 
     * @return
     *     possible object is
     *     {@link PriceType }
     *     
     */
    public PriceType getTotalPrice() {
        return totalPrice;
    }

    /**
     * Sets the value of the totalPrice property.
     * 
     * @param value
     *     allowed object is
     *     {@link PriceType }
     *     
     */
    public void setTotalPrice(PriceType value) {
        this.totalPrice = value;
    }


    /**
     * &lt;p&gt;Java class for anonymous complex type.
     * 
     * &lt;p&gt;The following schema fragment specifies the expected content contained within this class.
     * 
     * &lt;pre&gt;
     * &amp;lt;complexType&amp;gt;
     *   &amp;lt;complexContent&amp;gt;
     *     &amp;lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&amp;gt;
     *       &amp;lt;sequence&amp;gt;
     *         &amp;lt;element name="PaxJourneyRefID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type" maxOccurs="unbounded"/&amp;gt;
     *         &amp;lt;element name="PaxRefID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type" maxOccurs="unbounded"/&amp;gt;
     *         &amp;lt;element name="BaggageAllowanceRefID" type="{http://xml.amadeus.com/2010/06/Travel_OfferPriceRS_v1}ID_Type"/&amp;gt;
     *       &amp;lt;/sequence&amp;gt;
     *     &amp;lt;/restriction&amp;gt;
     *   &amp;lt;/complexContent&amp;gt;
     * &amp;lt;/complexType&amp;gt;
     * &lt;/pre&gt;
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "paxJourneyRefID",
        "paxRefID",
        "baggageAllowanceRefID"
    })
    public static class BaggageAllowance {

        @XmlElement(name = "PaxJourneyRefID", required = true)
        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
        @XmlSchemaType(name = "token")
        protected List<String> paxJourneyRefID;
        @XmlElement(name = "PaxRefID", required = true)
        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
        @XmlSchemaType(name = "token")
        protected List<String> paxRefID;
        @XmlElement(name = "BaggageAllowanceRefID", required = true)
        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
        @XmlSchemaType(name = "token")
        protected String baggageAllowanceRefID;

        /**
         * Gets the value of the paxJourneyRefID property.
         * 
         * &lt;p&gt;
         * This accessor method returns a reference to the live list,
         * not a snapshot. Therefore any modification you make to the
         * returned list will be present inside the JAXB object.
         * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the paxJourneyRefID property.
         * 
         * &lt;p&gt;
         * For example, to add a new item, do as follows:
         * &lt;pre&gt;
         *    getPaxJourneyRefID().add(newItem);
         * &lt;/pre&gt;
         * 
         * 
         * &lt;p&gt;
         * Objects of the following type(s) are allowed in the list
         * {@link String }
         * 
         * 
         */
        public List<String> getPaxJourneyRefID() {
            if (paxJourneyRefID == null) {
                paxJourneyRefID = new ArrayList<String>();
            }
            return this.paxJourneyRefID;
        }

        /**
         * Gets the value of the paxRefID property.
         * 
         * &lt;p&gt;
         * This accessor method returns a reference to the live list,
         * not a snapshot. Therefore any modification you make to the
         * returned list will be present inside the JAXB object.
         * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the paxRefID property.
         * 
         * &lt;p&gt;
         * For example, to add a new item, do as follows:
         * &lt;pre&gt;
         *    getPaxRefID().add(newItem);
         * &lt;/pre&gt;
         * 
         * 
         * &lt;p&gt;
         * Objects of the following type(s) are allowed in the list
         * {@link String }
         * 
         * 
         */
        public List<String> getPaxRefID() {
            if (paxRefID == null) {
                paxRefID = new ArrayList<String>();
            }
            return this.paxRefID;
        }

        /**
         * Gets the value of the baggageAllowanceRefID property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getBaggageAllowanceRefID() {
            return baggageAllowanceRefID;
        }

        /**
         * Sets the value of the baggageAllowanceRefID property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setBaggageAllowanceRefID(String value) {
            this.baggageAllowanceRefID = value;
        }

    }

}
