001    
002    package org.w3._2005._08.addressing;
003    
004    import java.util.HashMap;
005    import java.util.Map;
006    import javax.xml.bind.annotation.XmlAccessType;
007    import javax.xml.bind.annotation.XmlAccessorType;
008    import javax.xml.bind.annotation.XmlAnyAttribute;
009    import javax.xml.bind.annotation.XmlAttribute;
010    import javax.xml.bind.annotation.XmlType;
011    import javax.xml.bind.annotation.XmlValue;
012    import javax.xml.namespace.QName;
013    
014    
015    /**
016     * <p>Java class for RelatesToType complex type.
017     * 
018     * <p>The following schema fragment specifies the expected content contained within this class.
019     * 
020     * <pre>
021     * &lt;complexType name="RelatesToType">
022     *   &lt;simpleContent>
023     *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>anyURI">
024     *       &lt;attribute name="RelationshipType" type="{http://www.w3.org/2005/08/addressing}RelationshipTypeOpenEnum" default="http://www.w3.org/2005/08/addressing/reply" />
025     *     &lt;/extension>
026     *   &lt;/simpleContent>
027     * &lt;/complexType>
028     * </pre>
029     * 
030     * 
031     */
032    @XmlAccessorType(XmlAccessType.FIELD)
033    @XmlType(name = "RelatesToType", propOrder = {
034        "value"
035    })
036    public class RelatesToType {
037    
038        @XmlValue
039        protected String value;
040        @XmlAttribute(name = "RelationshipType")
041        protected String relationshipType;
042        @XmlAnyAttribute
043        private Map<QName, String> otherAttributes = new HashMap<QName, String>();
044    
045        /**
046         * Gets the value of the value property.
047         * 
048         * @return
049         *     possible object is
050         *     {@link String }
051         *     
052         */
053        public String getValue() {
054            return value;
055        }
056    
057        /**
058         * Sets the value of the value property.
059         * 
060         * @param value
061         *     allowed object is
062         *     {@link String }
063         *     
064         */
065        public void setValue(String value) {
066            this.value = value;
067        }
068    
069        /**
070         * Gets the value of the relationshipType property.
071         * 
072         * @return
073         *     possible object is
074         *     {@link String }
075         *     
076         */
077        public String getRelationshipType() {
078            if (relationshipType == null) {
079                return "http://www.w3.org/2005/08/addressing/reply";
080            } else {
081                return relationshipType;
082            }
083        }
084    
085        /**
086         * Sets the value of the relationshipType property.
087         * 
088         * @param value
089         *     allowed object is
090         *     {@link String }
091         *     
092         */
093        public void setRelationshipType(String value) {
094            this.relationshipType = value;
095        }
096    
097        /**
098         * Gets a map that contains attributes that aren't bound to any typed property on this class.
099         * 
100         * <p>
101         * the map is keyed by the name of the attribute and 
102         * the value is the string value of the attribute.
103         * 
104         * the map returned by this method is live, and you can add new attribute
105         * by updating the map directly. Because of this design, there's no setter.
106         * 
107         * 
108         * @return
109         *     always non-null
110         */
111        public Map<QName, String> getOtherAttributes() {
112            return otherAttributes;
113        }
114    
115    }