//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2012.07.24 at 11:42:28 PM CEST
//
package eu.prestoprime.model.ext.qa;
import java.io.Serializable;
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.XmlElements;
import javax.xml.bind.annotation.XmlType;
/**
* <p>
* Java class for PersonType complex type.
*
* <p>
* The following schema fragment specifies the expected content contained within
* this class.
*
* <pre>
* <complexType name="PersonType">
* <complexContent>
* <extension base="{urn:mpeg:mpeg7:schema:2004}AgentType">
* <sequence>
* <choice maxOccurs="unbounded">
* <element name="Name" type="{urn:mpeg:mpeg7:schema:2004}PersonNameType"/>
* <element name="NameTerm" type="{urn:mpeg:mpeg7:schema:2004}ControlledTermUseType"/>
* </choice>
* <element name="Affiliation" maxOccurs="unbounded" minOccurs="0">
* <complexType>
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <choice>
* <element name="Organization" type="{urn:mpeg:mpeg7:schema:2004}OrganizationType"/>
* <element name="PersonGroup" type="{urn:mpeg:mpeg7:schema:2004}PersonGroupType"/>
* </choice>
* </restriction>
* </complexContent>
* </complexType>
* </element>
* <element name="Citizenship" type="{urn:mpeg:mpeg7:schema:2004}countryCode" maxOccurs="unbounded" minOccurs="0"/>
* <element name="Address" type="{urn:mpeg:mpeg7:schema:2004}PlaceType" minOccurs="0"/>
* <element name="ElectronicAddress" type="{urn:mpeg:mpeg7:schema:2004}ElectronicAddressType" maxOccurs="unbounded" minOccurs="0"/>
* <element name="PersonDescription" type="{urn:mpeg:mpeg7:schema:2004}TextualType" minOccurs="0"/>
* <element name="Nationality" type="{urn:mpeg:mpeg7:schema:2004}countryCode" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "PersonType", propOrder = { "nameOrNameTerm", "affiliation", "citizenship", "address", "electronicAddress", "personDescription", "nationality" })
public class PersonType extends AgentType implements Serializable {
private final static long serialVersionUID = 1L;
@XmlElements({ @XmlElement(name = "Name", type = PersonNameType.class), @XmlElement(name = "NameTerm", type = ControlledTermUseType.class) })
protected List<Serializable> nameOrNameTerm;
@XmlElement(name = "Affiliation")
protected List<PersonType.Affiliation> affiliation;
@XmlElement(name = "Citizenship")
protected List<String> citizenship;
@XmlElement(name = "Address")
protected PlaceType address;
@XmlElement(name = "ElectronicAddress")
protected List<ElectronicAddressType> electronicAddress;
@XmlElement(name = "PersonDescription")
protected TextualType personDescription;
@XmlElement(name = "Nationality")
protected String nationality;
/**
* Gets the value of the nameOrNameTerm property.
*
* <p>
* 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
* <CODE>set</CODE> method for the nameOrNameTerm property.
*
* <p>
* For example, to add a new item, do as follows:
*
* <pre>
* getNameOrNameTerm().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link PersonNameType } {@link ControlledTermUseType }
*
*
*/
public List<Serializable> getNameOrNameTerm() {
if (nameOrNameTerm == null) {
nameOrNameTerm = new ArrayList<Serializable>();
}
return this.nameOrNameTerm;
}
/**
* Gets the value of the affiliation property.
*
* <p>
* 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
* <CODE>set</CODE> method for the affiliation property.
*
* <p>
* For example, to add a new item, do as follows:
*
* <pre>
* getAffiliation().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link PersonType.Affiliation }
*
*
*/
public List<PersonType.Affiliation> getAffiliation() {
if (affiliation == null) {
affiliation = new ArrayList<PersonType.Affiliation>();
}
return this.affiliation;
}
/**
* Gets the value of the citizenship property.
*
* <p>
* 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
* <CODE>set</CODE> method for the citizenship property.
*
* <p>
* For example, to add a new item, do as follows:
*
* <pre>
* getCitizenship().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list {@link String }
*
*
*/
public List<String> getCitizenship() {
if (citizenship == null) {
citizenship = new ArrayList<String>();
}
return this.citizenship;
}
/**
* Gets the value of the address property.
*
* @return possible object is {@link PlaceType }
*
*/
public PlaceType getAddress() {
return address;
}
/**
* Sets the value of the address property.
*
* @param value
* allowed object is {@link PlaceType }
*
*/
public void setAddress(PlaceType value) {
this.address = value;
}
/**
* Gets the value of the electronicAddress property.
*
* <p>
* 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
* <CODE>set</CODE> method for the electronicAddress property.
*
* <p>
* For example, to add a new item, do as follows:
*
* <pre>
* getElectronicAddress().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link ElectronicAddressType }
*
*
*/
public List<ElectronicAddressType> getElectronicAddress() {
if (electronicAddress == null) {
electronicAddress = new ArrayList<ElectronicAddressType>();
}
return this.electronicAddress;
}
/**
* Gets the value of the personDescription property.
*
* @return possible object is {@link TextualType }
*
*/
public TextualType getPersonDescription() {
return personDescription;
}
/**
* Sets the value of the personDescription property.
*
* @param value
* allowed object is {@link TextualType }
*
*/
public void setPersonDescription(TextualType value) {
this.personDescription = value;
}
/**
* Gets the value of the nationality property.
*
* @return possible object is {@link String }
*
*/
public String getNationality() {
return nationality;
}
/**
* Sets the value of the nationality property.
*
* @param value
* allowed object is {@link String }
*
*/
public void setNationality(String value) {
this.nationality = value;
}
/**
* <p>
* Java class for anonymous complex type.
*
* <p>
* The following schema fragment specifies the expected content contained
* within this class.
*
* <pre>
* <complexType>
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <choice>
* <element name="Organization" type="{urn:mpeg:mpeg7:schema:2004}OrganizationType"/>
* <element name="PersonGroup" type="{urn:mpeg:mpeg7:schema:2004}PersonGroupType"/>
* </choice>
* </restriction>
* </complexContent>
* </complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "organization", "personGroup" })
public static class Affiliation implements Serializable {
private final static long serialVersionUID = 1L;
@XmlElement(name = "Organization")
protected OrganizationType organization;
@XmlElement(name = "PersonGroup")
protected PersonGroupType personGroup;
/**
* Gets the value of the organization property.
*
* @return possible object is {@link OrganizationType }
*
*/
public OrganizationType getOrganization() {
return organization;
}
/**
* Sets the value of the organization property.
*
* @param value
* allowed object is {@link OrganizationType }
*
*/
public void setOrganization(OrganizationType value) {
this.organization = value;
}
/**
* Gets the value of the personGroup property.
*
* @return possible object is {@link PersonGroupType }
*
*/
public PersonGroupType getPersonGroup() {
return personGroup;
}
/**
* Sets the value of the personGroup property.
*
* @param value
* allowed object is {@link PersonGroupType }
*
*/
public void setPersonGroup(PersonGroupType value) {
this.personGroup = value;
}
}
}