//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.12-1.0.0.0_2-1-12-ea 
// 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: 2017.02.27 at 05:33:06 PM CET 
//

package com.ejie.ainit.xml;

import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlElementDecl;
import javax.xml.bind.annotation.XmlRegistry;
import javax.xml.namespace.QName;

/**
 * This object contains factory methods for each Java content interface and Java
 * element interface generated in the com.ejie.ainit.xml package.
 * <p>
 * An ObjectFactory allows you to programatically construct new instances of the
 * Java representation for XML content. The Java representation of XML content
 * can consist of schema derived interfaces and classes representing the binding
 * of schema type definitions, element declarations and model groups. Factory
 * methods for each of these are provided in this class.
 * 
 * @author GFI-NORTE
 */
@XmlRegistry()
public class ObjectFactory {

	private final static QName _Applicant_QNAME = new QName(
			"com/ejie/ainit/xml", "applicant");
	private final static QName _AdminInitiation_QNAME = new QName(
			"com/ejie/ainit/xml", "adminInitiation");
	private final static QName _DocumentInfoOID_QNAME = new QName(
			"com/ejie/ainit/xml", "OID");

	/**
	 * Create a new ObjectFactory that can be used to create new instances of
	 * schema derived classes for package: com.ejie.ainit.xml
	 * 
	 */
	public ObjectFactory() {
	}

	/**
	 * Create an instance of {@link ThirdPartyParticipation }.
	 *
	 * @return objeto respuesta
	 */
	public ThirdPartyParticipation createThirdPartyParticipation() {
		return new ThirdPartyParticipation();
	}

	/**
	 * Create an instance of {@link DescriptionType }.
	 *
	 * @return objeto respuesta
	 */
	public DescriptionType createDescriptionType() {
		return new DescriptionType();
	}

	/**
	 * Create an instance of {@link Participation }.
	 *
	 * @return objeto respuesta
	 */
	public Participation createParticipation() {
		return new Participation();
	}

	/**
	 * Create an instance of {@link AdminInitiation }.
	 *
	 * @return objeto respuesta
	 */
	public AdminInitiation createAdminInitiation() {
		return new AdminInitiation();
	}

	/**
	 * Create an instance of {@link Person }.
	 *
	 * @return objeto respuesta
	 */
	public Person createPerson() {
		return new Person();
	}

	/**
	 * Create an instance of {@link StoredAdminInitInfo }.
	 *
	 * @return objeto respuesta
	 */
	public StoredAdminInitInfo createStoredAdminInitInfo() {
		return new StoredAdminInitInfo();
	}

	/**
	 * Create an instance of {@link Notification }.
	 *
	 * @return objeto respuesta
	 */
	public Notification createNotification() {
		return new Notification();
	}

	/**
	 * Create an instance of {@link Addressee }.
	 *
	 * @return objeto respuesta
	 */
	public Addressee createAddressee() {
		return new Addressee();
	}

	/**
	 * Create an instance of {@link Channel }.
	 *
	 * @return objeto respuesta
	 */
	public Channel createChannel() {
		return new Channel();
	}

	/**
	 * Create an instance of {@link ThirdPartyParticipation.Notices }
	 * 
	 * @return objeto respuesta
	 */
	public ThirdPartyParticipation.Notices createThirdPartyParticipationNotices() {
		return new ThirdPartyParticipation.Notices();
	}

	/**
	 * Create an instance of {@link PostalAddress }.
	 *
	 * @return objeto respuesta
	 */
	public PostalAddress createPostalAddress() {
		return new PostalAddress();
	}

	/**
	 * Create an instance of {@link Notice }.
	 *
	 * @return objeto respuesta
	 */
	public Notice createNotice() {
		return new Notice();
	}

	/**
	 * Create an instance of {@link MetadataDescriptors }.
	 *
	 * @return objeto respuesta
	 */
	public MetadataDescriptors createMetadataDescriptors() {
		return new MetadataDescriptors();
	}

	/**
	 * Create an instance of {@link MetadataDescriptorData }.
	 *
	 * @return objeto respuesta
	 */
	public MetadataDescriptorData createMetadataDescriptorData() {
		return new MetadataDescriptorData();
	}

	/**
	 * Create an instance of {@link DocumentInfo }.
	 *
	 * @return objeto respuesta
	 */
	public DocumentInfo createDocumentInfo() {
		return new DocumentInfo();
	}

	/**
	 * Create an instance of {@link DocLevel3 }.
	 *
	 * @return objeto respuesta
	 */
	public DocLevel3 createDocLevel3() {
		return new DocLevel3();
	}

	/**
	 * Create an instance of {@link Contact }.
	 *
	 * @return objeto respuesta
	 */
	public Contact createContact() {
		return new Contact();
	}

	/**
	 * Create an instance of {@link GeneralData }.
	 *
	 * @return objeto respuesta
	 */
	public GeneralData createGeneralData() {
		return new GeneralData();
	}

	/**
	 * Create an instance of {@link RelationInfo }.
	 *
	 * @return objeto respuesta
	 */
	public RelationInfo createRelationInfo() {
		return new RelationInfo();
	}

	/**
	 * Create an instance of {@link DescriptionType.Language }
	 * 
	 * @return objeto respuesta
	 */
	public DescriptionType.Language createDescriptionTypeLanguage() {
		return new DescriptionType.Language();
	}

	/**
	 * Create an instance of {@link Participation.Persons }
	 * 
	 * @return objeto respuesta
	 */
	public Participation.Persons createParticipationPersons() {
		return new Participation.Persons();
	}

	/**
	 * Create an instance of {@link Participation.Notices }
	 * 
	 * @return objeto respuesta
	 */
	public Participation.Notices createParticipationNotices() {
		return new Participation.Notices();
	}

	/**
	 * Create an instance of {@link AdminInitiation.Applicants }
	 * 
	 * @return objeto respuesta
	 */
	public AdminInitiation.Applicants createAdminInitiationApplicants() {
		return new AdminInitiation.Applicants();
	}

	/**
	 * Create an instance of {@link AdminInitiation.ThirdPartyParticipations }
	 * 
	 * @return objeto respuesta
	 */
	public AdminInitiation.ThirdPartyParticipations createAdminInitiationThirdPartyParticipations() {
		return new AdminInitiation.ThirdPartyParticipations();
	}

	/**
	 * Create an instance of {@link AdminInitiation.Documents }
	 * 
	 * @return objeto respuesta
	 */
	public AdminInitiation.Documents createAdminInitiationDocuments() {
		return new AdminInitiation.Documents();
	}

	/**
	 * Create an instance of {@link AdminInitiation.Relations }
	 * 
	 * @return objeto respuesta
	 */
	public AdminInitiation.Relations createAdminInitiationRelations() {
		return new AdminInitiation.Relations();
	}

	/**
	 * Create an instance of {@link Person.Contacts }
	 * 
	 * @return objeto respuesta
	 */
	public Person.Contacts createPersonContacts() {
		return new Person.Contacts();
	}

	/**
	 * Create an instance of {@link JAXBElement }{@code <}{@link Participation }
	 * {@code >}}.
	 *
	 * @param value            Participation
	 * @return JAXBElement<Participation>
	 */
	@XmlElementDecl(namespace = "com/ejie/ainit/xml", name = "applicant")
	public JAXBElement<Participation> createApplicant(Participation value) {
		return new JAXBElement<Participation>(_Applicant_QNAME,
				Participation.class, null, value);
	}

	/**
	 * Create an instance of {@link JAXBElement }{@code <}{@link AdminInitiation
	 * }{@code >}}.
	 *
	 * @param value            AdminInitiation
	 * @return JAXBElement<AdminInitiation>
	 */
	@XmlElementDecl(namespace = "com/ejie/ainit/xml", name = "adminInitiation")
	public JAXBElement<AdminInitiation> createAdminInitiation(
			AdminInitiation value) {
		return new JAXBElement<AdminInitiation>(_AdminInitiation_QNAME,
				AdminInitiation.class, null, value);
	}

	/**
	 * Create an instance of {@link JAXBElement }{@code <}{@link String }
	 * {@code >}}.
	 *
	 * @param value            String
	 * @return JAXBElement<String>
	 */
	@XmlElementDecl(namespace = "com/ejie/ainit/xml", name = "OID", scope = DocumentInfo.class)
	public JAXBElement<String> createDocumentInfoOID(String value) {
		return new JAXBElement<String>(_DocumentInfoOID_QNAME, String.class,
				DocumentInfo.class, value);
	}

}
