
package com.ejie.ab63.clientesWS.X43ExpedienteElectronico;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;

/**
 * <p>
 * Java class for TDocument complex type.
 * 
 * <p>
 * The following schema fragment specifies the expected content contained within
 * this class.
 * 
 * <pre>
 * &lt;complexType name="TDocument">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="isObligatory" type="{com/ejie/x43s/v2/ttn/xml}TBoolean" minOccurs="0"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}isSupport" minOccurs="0"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}documentType"/>
 *         &lt;element name="documentTypeName" type="{com/ejie/x43s/v2/ttn/xml}TTextI18N"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}documentID"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}documentName"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}dokusiID"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}documentRoleID"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}documentRoleName"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}author" minOccurs="0"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}title" minOccurs="0"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}nature" minOccurs="0"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}language" minOccurs="0"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}sourceName"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}extensionList"/>
 *         &lt;element name="format" type="{com/ejie/x43s/v2/ttn/xml}TDocFormatType"/>
 *         &lt;element name="documentDate" type="{com/ejie/x43s/v2/ttn/xml}TDateTime" minOccurs="0"/>
 *         &lt;element name="status" type="{com/ejie/x43s/v2/ttn/xml}TDocStatus"/>
 *         &lt;element name="statusAD" type="{com/ejie/x43s/v2/ttn/xml}TDocADStatus"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}documentPath"/>
 *         &lt;choice>
 *           &lt;element ref="{com/ejie/x43s/v2/ttn/xml}isScanned"/>
 *           &lt;element name="signerList" type="{com/ejie/x43s/v2/ttn/xml}TSignerList"/>
 *         &lt;/choice>
 *         &lt;element ref="{com/ejie/x43s/v2/ree/xml}study" minOccurs="0"/>
 *         &lt;element ref="{com/ejie/x43s/v2/ree/xml}annulment" minOccurs="0"/>
 *         &lt;choice minOccurs="0">
 *           &lt;element ref="{com/ejie/x43s/v2/ree/xml}commited"/>
 *           &lt;element ref="{com/ejie/x43s/v2/ree/xml}authorization"/>
 *         &lt;/choice>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "TDocument", propOrder = { "isObligatory", "isSupport", "documentType", "documentTypeName",
		"documentID", "documentName", "dokusiID", "documentRoleID", "documentRoleName", "author", "title", "nature",
		"language", "sourceName", "extensionList", "format", "documentDate", "status", "statusAD", "documentPath",
		"isScanned", "signerList", "study", "annulment", "commited", "authorization" })
public class TDocument {

	protected TBoolean isObligatory;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml")
	protected TBoolean isSupport;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
	protected TDocumentType documentType;
	@XmlElement(required = true)
	protected TTextI18N documentTypeName;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
	@XmlJavaTypeAdapter(CollapsedStringAdapter.class)
	protected String documentID;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
	protected TTextI18N documentName;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
	@XmlJavaTypeAdapter(CollapsedStringAdapter.class)
	protected String dokusiID;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
	@XmlJavaTypeAdapter(CollapsedStringAdapter.class)
	protected String documentRoleID;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
	protected TTextI18N documentRoleName;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml")
	protected String author;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml")
	protected String title;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml")
	protected TDocNatureType nature;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml")
	protected TLanguage language;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
	protected String sourceName;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
	protected TStringList extensionList;
	@XmlElement(required = true)
	protected TDocFormatType format;
	protected String documentDate;
	@XmlElement(required = true)
	protected TDocStatus status;
	@XmlElement(required = true)
	protected TDocADStatus statusAD;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
	protected String documentPath;
	@XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml")
	protected TBoolean isScanned;
	protected TSignerList signerList;
	protected TDocumentStudy study;
	protected TDocumentAnnulment annulment;
	protected TDocumentCommited commited;
	protected TAuthorization authorization;

	/**
	 * Gets the value of the isObligatory property.
	 * 
	 * @return possible object is {@link TBoolean }
	 * 
	 */
	public TBoolean getIsObligatory() {
		return isObligatory;
	}

	/**
	 * Sets the value of the isObligatory property.
	 * 
	 * @param value
	 *            allowed object is {@link TBoolean }
	 * 
	 */
	public void setIsObligatory(TBoolean value) {
		this.isObligatory = value;
	}

	/**
	 * Gets the value of the isSupport property.
	 * 
	 * @return possible object is {@link TBoolean }
	 * 
	 */
	public TBoolean getIsSupport() {
		return isSupport;
	}

	/**
	 * Sets the value of the isSupport property.
	 * 
	 * @param value
	 *            allowed object is {@link TBoolean }
	 * 
	 */
	public void setIsSupport(TBoolean value) {
		this.isSupport = value;
	}

	/**
	 * Gets the value of the documentType property.
	 * 
	 * @return possible object is {@link TDocumentType }
	 * 
	 */
	public TDocumentType getDocumentType() {
		return documentType;
	}

	/**
	 * Sets the value of the documentType property.
	 * 
	 * @param value
	 *            allowed object is {@link TDocumentType }
	 * 
	 */
	public void setDocumentType(TDocumentType value) {
		this.documentType = value;
	}

	/**
	 * Gets the value of the documentTypeName property.
	 * 
	 * @return possible object is {@link TTextI18N }
	 * 
	 */
	public TTextI18N getDocumentTypeName() {
		return documentTypeName;
	}

	/**
	 * Sets the value of the documentTypeName property.
	 * 
	 * @param value
	 *            allowed object is {@link TTextI18N }
	 * 
	 */
	public void setDocumentTypeName(TTextI18N value) {
		this.documentTypeName = value;
	}

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

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

	/**
	 * Gets the value of the documentName property.
	 * 
	 * @return possible object is {@link TTextI18N }
	 * 
	 */
	public TTextI18N getDocumentName() {
		return documentName;
	}

	/**
	 * Sets the value of the documentName property.
	 * 
	 * @param value
	 *            allowed object is {@link TTextI18N }
	 * 
	 */
	public void setDocumentName(TTextI18N value) {
		this.documentName = value;
	}

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

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

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

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

	/**
	 * Gets the value of the documentRoleName property.
	 * 
	 * @return possible object is {@link TTextI18N }
	 * 
	 */
	public TTextI18N getDocumentRoleName() {
		return documentRoleName;
	}

	/**
	 * Sets the value of the documentRoleName property.
	 * 
	 * @param value
	 *            allowed object is {@link TTextI18N }
	 * 
	 */
	public void setDocumentRoleName(TTextI18N value) {
		this.documentRoleName = value;
	}

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

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

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

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

	/**
	 * Gets the value of the nature property.
	 * 
	 * @return possible object is {@link TDocNatureType }
	 * 
	 */
	public TDocNatureType getNature() {
		return nature;
	}

	/**
	 * Sets the value of the nature property.
	 * 
	 * @param value
	 *            allowed object is {@link TDocNatureType }
	 * 
	 */
	public void setNature(TDocNatureType value) {
		this.nature = value;
	}

	/**
	 * Gets the value of the language property.
	 * 
	 * @return possible object is {@link TLanguage }
	 * 
	 */
	public TLanguage getLanguage() {
		return language;
	}

	/**
	 * Sets the value of the language property.
	 * 
	 * @param value
	 *            allowed object is {@link TLanguage }
	 * 
	 */
	public void setLanguage(TLanguage value) {
		this.language = value;
	}

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

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

	/**
	 * Gets the value of the extensionList property.
	 * 
	 * @return possible object is {@link TStringList }
	 * 
	 */
	public TStringList getExtensionList() {
		return extensionList;
	}

	/**
	 * Sets the value of the extensionList property.
	 * 
	 * @param value
	 *            allowed object is {@link TStringList }
	 * 
	 */
	public void setExtensionList(TStringList value) {
		this.extensionList = value;
	}

	/**
	 * Gets the value of the format property.
	 * 
	 * @return possible object is {@link TDocFormatType }
	 * 
	 */
	public TDocFormatType getFormat() {
		return format;
	}

	/**
	 * Sets the value of the format property.
	 * 
	 * @param value
	 *            allowed object is {@link TDocFormatType }
	 * 
	 */
	public void setFormat(TDocFormatType value) {
		this.format = value;
	}

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

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

	/**
	 * Gets the value of the status property.
	 * 
	 * @return possible object is {@link TDocStatus }
	 * 
	 */
	public TDocStatus getStatus() {
		return status;
	}

	/**
	 * Sets the value of the status property.
	 * 
	 * @param value
	 *            allowed object is {@link TDocStatus }
	 * 
	 */
	public void setStatus(TDocStatus value) {
		this.status = value;
	}

	/**
	 * Gets the value of the statusAD property.
	 * 
	 * @return possible object is {@link TDocADStatus }
	 * 
	 */
	public TDocADStatus getStatusAD() {
		return statusAD;
	}

	/**
	 * Sets the value of the statusAD property.
	 * 
	 * @param value
	 *            allowed object is {@link TDocADStatus }
	 * 
	 */
	public void setStatusAD(TDocADStatus value) {
		this.statusAD = value;
	}

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

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

	/**
	 * Gets the value of the isScanned property.
	 * 
	 * @return possible object is {@link TBoolean }
	 * 
	 */
	public TBoolean getIsScanned() {
		return isScanned;
	}

	/**
	 * Sets the value of the isScanned property.
	 * 
	 * @param value
	 *            allowed object is {@link TBoolean }
	 * 
	 */
	public void setIsScanned(TBoolean value) {
		this.isScanned = value;
	}

	/**
	 * Gets the value of the signerList property.
	 * 
	 * @return possible object is {@link TSignerList }
	 * 
	 */
	public TSignerList getSignerList() {
		return signerList;
	}

	/**
	 * Sets the value of the signerList property.
	 * 
	 * @param value
	 *            allowed object is {@link TSignerList }
	 * 
	 */
	public void setSignerList(TSignerList value) {
		this.signerList = value;
	}

	/**
	 * Gets the value of the study property.
	 * 
	 * @return possible object is {@link TDocumentStudy }
	 * 
	 */
	public TDocumentStudy getStudy() {
		return study;
	}

	/**
	 * Sets the value of the study property.
	 * 
	 * @param value
	 *            allowed object is {@link TDocumentStudy }
	 * 
	 */
	public void setStudy(TDocumentStudy value) {
		this.study = value;
	}

	/**
	 * Gets the value of the annulment property.
	 * 
	 * @return possible object is {@link TDocumentAnnulment }
	 * 
	 */
	public TDocumentAnnulment getAnnulment() {
		return annulment;
	}

	/**
	 * Sets the value of the annulment property.
	 * 
	 * @param value
	 *            allowed object is {@link TDocumentAnnulment }
	 * 
	 */
	public void setAnnulment(TDocumentAnnulment value) {
		this.annulment = value;
	}

	/**
	 * Gets the value of the commited property.
	 * 
	 * @return possible object is {@link TDocumentCommited }
	 * 
	 */
	public TDocumentCommited getCommited() {
		return commited;
	}

	/**
	 * Sets the value of the commited property.
	 * 
	 * @param value
	 *            allowed object is {@link TDocumentCommited }
	 * 
	 */
	public void setCommited(TDocumentCommited value) {
		this.commited = value;
	}

	/**
	 * Gets the value of the authorization property.
	 * 
	 * @return possible object is {@link TAuthorization }
	 * 
	 */
	public TAuthorization getAuthorization() {
		return authorization;
	}

	/**
	 * Sets the value of the authorization property.
	 * 
	 * @param value
	 *            allowed object is {@link TAuthorization }
	 * 
	 */
	public void setAuthorization(TAuthorization value) {
		this.authorization = value;
	}

}
