1 package org.fosstrak.epcis.model; 2 3 import java.util.ArrayList; 4 import java.util.HashMap; 5 import java.util.List; 6 import java.util.Map; 7 import javax.xml.bind.annotation.XmlAccessType; 8 import javax.xml.bind.annotation.XmlAccessorType; 9 import javax.xml.bind.annotation.XmlAnyAttribute; 10 import javax.xml.bind.annotation.XmlAnyElement; 11 import javax.xml.bind.annotation.XmlAttribute; 12 import javax.xml.bind.annotation.XmlElement; 13 import javax.xml.bind.annotation.XmlSchemaType; 14 import javax.xml.bind.annotation.XmlType; 15 import javax.xml.namespace.QName; 16 import org.w3c.dom.Element; 17 18 /** 19 * <p> 20 * Java class for VocabularyType complex type. 21 * <p> 22 * The following schema fragment specifies the expected content contained within 23 * this class. 24 * 25 * <pre> 26 * <complexType name="VocabularyType"> 27 * <complexContent> 28 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> 29 * <sequence> 30 * <element name="VocabularyElementList" type="{urn:epcglobal:epcis-masterdata:xsd:1}VocabularyElementListType" minOccurs="0"/> 31 * <element name="extension" type="{urn:epcglobal:epcis-masterdata:xsd:1}VocabularyExtensionType" minOccurs="0"/> 32 * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> 33 * </sequence> 34 * <attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> 35 * <anyAttribute processContents='lax'/> 36 * </restriction> 37 * </complexContent> 38 * </complexType> 39 * </pre> 40 */ 41 @XmlAccessorType(XmlAccessType.FIELD) 42 @XmlType(name = "VocabularyType", namespace = "urn:epcglobal:epcis-masterdata:xsd:1", propOrder = { 43 "vocabularyElementList", "extension", "any" }) 44 public class VocabularyType { 45 46 @XmlElement(name = "VocabularyElementList") 47 protected VocabularyElementListType vocabularyElementList; 48 protected VocabularyExtensionType extension; 49 @XmlAnyElement(lax = true) 50 protected List<Object> any; 51 @XmlAttribute(name = "type", required = true) 52 @XmlSchemaType(name = "anyURI") 53 protected String type; 54 @XmlAnyAttribute 55 private Map<QName, String> otherAttributes = new HashMap<QName, String>(); 56 57 /** 58 * Gets the value of the vocabularyElementList property. 59 * 60 * @return possible object is {@link VocabularyElementListType } 61 */ 62 public VocabularyElementListType getVocabularyElementList() { 63 return vocabularyElementList; 64 } 65 66 /** 67 * Sets the value of the vocabularyElementList property. 68 * 69 * @param value 70 * allowed object is {@link VocabularyElementListType } 71 */ 72 public void setVocabularyElementList(VocabularyElementListType value) { 73 this.vocabularyElementList = value; 74 } 75 76 /** 77 * Gets the value of the extension property. 78 * 79 * @return possible object is {@link VocabularyExtensionType } 80 */ 81 public VocabularyExtensionType getExtension() { 82 return extension; 83 } 84 85 /** 86 * Sets the value of the extension property. 87 * 88 * @param value 89 * allowed object is {@link VocabularyExtensionType } 90 */ 91 public void setExtension(VocabularyExtensionType value) { 92 this.extension = value; 93 } 94 95 /** 96 * Gets the value of the any property. 97 * <p> 98 * This accessor method returns a reference to the live list, not a 99 * snapshot. Therefore any modification you make to the returned list will 100 * be present inside the JAXB object. This is why there is not a 101 * <CODE>set</CODE> method for the any property. 102 * <p> 103 * For example, to add a new item, do as follows: 104 * 105 * <pre> 106 * getAny().add(newItem); 107 * </pre> 108 * <p> 109 * Objects of the following type(s) are allowed in the list {@link Element } 110 * {@link Object } 111 */ 112 public List<Object> getAny() { 113 if (any == null) { 114 any = new ArrayList<Object>(); 115 } 116 return this.any; 117 } 118 119 /** 120 * Gets the value of the type property. 121 * 122 * @return possible object is {@link String } 123 */ 124 public String getType() { 125 return type; 126 } 127 128 /** 129 * Sets the value of the type property. 130 * 131 * @param value 132 * allowed object is {@link String } 133 */ 134 public void setType(String value) { 135 this.type = value; 136 } 137 138 /** 139 * Gets a map that contains attributes that aren't bound to any typed 140 * property on this class. 141 * <p> 142 * the map is keyed by the name of the attribute and the value is the string 143 * value of the attribute. the map returned by this method is live, and you 144 * can add new attribute by updating the map directly. Because of this 145 * design, there's no setter. 146 * 147 * @return always non-null 148 */ 149 public Map<QName, String> getOtherAttributes() { 150 return otherAttributes; 151 } 152 153 }