text: /*
   * Copyright (c) 2010-2018 Evolveum and contributors
   *
   * This work is dual-licensed under the Apache License 2.0
   * and European Union Public License. See LICENSE file for details.
   */
  
  //
  // 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.05.20 at 05:41:15 PM CEST
  //
  
  package com.evolveum.prism.xml.ns._public.types_3;
  
  import java.io.Serializable;
  import javax.xml.bind.JAXBElement;
  import javax.xml.bind.annotation.XmlElementDecl;
  import javax.xml.bind.annotation.XmlRegistry;
  import javax.xml.namespace.QName;
  
  import com.evolveum.midpoint.prism.path.ItemPath;
  
  /**
   * This object contains factory methods for each
   * Java content interface and Java element interface
   * generated in the com.evolveum.prism.xml.ns._public.types_3 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.
   */
  @XmlRegistry
  public class ObjectFactory implements Serializable {
  
      private static final QName _ObjectDelta_QNAME = new QName("http://prism.evolveum.com/xml/ns/public/types-3", "objectDelta");
      private static final QName _PolyStringTypeNorm_QNAME = new QName("http://prism.evolveum.com/xml/ns/public/types-3", "norm");
      private static final QName _PolyStringTypeOrig_QNAME = new QName("http://prism.evolveum.com/xml/ns/public/types-3", "orig");
      private static final QName _ProtectedDataTypeEncryptedData_QNAME = new QName("http://prism.evolveum.com/xml/ns/public/types-3", "encryptedData");
      private static final QName _ProtectedDataTypeHashedData_QNAME = new QName("http://prism.evolveum.com/xml/ns/public/types-3", "hashedData");
      private static final QName _ItemPathType_QNAME = new QName("http://prism.evolveum.com/xml/ns/public/types-3", "path");
      private static final QName _Object_QNAME = new QName("http://prism.evolveum.com/xml/ns/public/types-3", "object");
  
      /**
       * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: com.evolveum.prism.xml.ns._public.types_3
       */
      public ObjectFactory() {
      }
  
      /**
       * Create an instance of {@link ObjectReferenceType }
       */
      public ObjectReferenceType createObjectReferenceType() {
          return new ObjectReferenceType();
      }
  
      /**
       * Create an instance of {@link ItemDeltaType }
       */
      public ItemDeltaType createItemDeltaType() {
          return new ItemDeltaType();
      }
  
      /**
       * Create an instance of {@link ObjectDeltaType }
       */
      public ObjectDeltaType createObjectDeltaType() {
          return new ObjectDeltaType();
      }
  
      /**
       * Create an instance of {@link KeyInfoType }
       */
      public KeyInfoType createKeyInfoType() {
          return new KeyInfoType();
      }
  
      /**
       * Create an instance of {@link ProtectedByteArrayType }
       */
      public ProtectedByteArrayType createProtectedByteArrayType() {
          return new ProtectedByteArrayType();
      }
  
      /**
       * Create an instance of {@link EncryptedDataType }
       */
      public EncryptedDataType createEncryptedDataType() {
          return new EncryptedDataType();
      }
  
      /**
       * Create an instance of {@link CipherDataType }
       */
      public CipherDataType createCipherDataType() {
          return new CipherDataType();
      }
  
      /**
       * Create an instance of {@link ProtectedStringType }
       */
      public ProtectedStringType createProtectedStringType() {
          return new ProtectedStringType();
      }
  
  //    public ObjectType createObjectType() {
  //        return new ObjectType();
  //    }
  
      /**
       * Create an instance of {@link EncryptionMethodType }
       */
      public EncryptionMethodType createEncryptionMethodType() {
          return new EncryptionMethodType();
      }
  
      /**
       * Create an instance of {@link ItemPathType }
       */
      public ItemPathType createItemPathType() {
          return new ItemPathType();
      }
  
      /**
       * Create an instance of {@link Extension }
       */
      public Extension createExtension() {
          return new Extension();
      }
  
      /**
       * Create an instance of {@link PolyStringType }
       */
      public PolyStringType createPolyStringType() {
          return new PolyStringType();
      }
  
  //    /**
  //     * Create an instance of {@link XPathType }
  //     *
  //     */
  //    public XPathType createXPathType() {
  //        return new XPathType();
  //    }
  
      /**
       * Create an instance of {@link ObjectReferenceType.Filter }
       */
      public ObjectReferenceType.Filter createObjectReferenceTypeFilter() {
          return new ObjectReferenceType.Filter();
      }
  
      /**
       * Create an instance of {@link ObjectDeltaType.ObjectToAdd }
       */
      public ObjectDeltaType.ObjectToAdd createObjectDeltaTypeObjectToAdd() {
          return new ObjectDeltaType.ObjectToAdd();
      }
  
      /**
       * Create an instance of {@link JAXBElement }{@code <}{@link ObjectDeltaType }{@code >}}
       */
      @XmlElementDecl(namespace = "http://prism.evolveum.com/xml/ns/public/types-3", name = "objectDelta")
      public JAXBElement<ObjectDeltaType> createObjectDelta(ObjectDeltaType value) {
          return new JAXBElement<>(_ObjectDelta_QNAME, ObjectDeltaType.class, null, value);
      }
  
      /**
       * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
       */
      @XmlElementDecl(namespace = "http://prism.evolveum.com/xml/ns/public/types-3", name = "norm", scope = PolyStringType.class)
      public JAXBElement<String> createPolyStringTypeNorm(String value) {
          return new JAXBElement<>(_PolyStringTypeNorm_QNAME, String.class, PolyStringType.class, value);
      }
  
      /**
       * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
       */
      @XmlElementDecl(namespace = "http://prism.evolveum.com/xml/ns/public/types-3", name = "orig", scope = PolyStringType.class)
      public JAXBElement<String> createPolyStringTypeOrig(String value) {
          return new JAXBElement<>(_PolyStringTypeOrig_QNAME, String.class, PolyStringType.class, value);
      }
  
      /**
       * Create an instance of {@link JAXBElement }{@code <}{@link EncryptedDataType }{@code >}}
       */
      @XmlElementDecl(namespace = "http://prism.evolveum.com/xml/ns/public/types-3", name = "encryptedData", scope = ProtectedDataType.class)
      public JAXBElement<EncryptedDataType> createProtectedDataTypeEncryptedData(EncryptedDataType value) {
          return new JAXBElement<>(_ProtectedDataTypeEncryptedData_QNAME, EncryptedDataType.class, ProtectedDataType.class, value);
      }
  
      @XmlElementDecl(namespace = "http://prism.evolveum.com/xml/ns/public/types-3", name = "encryptedData", scope = ProtectedStringType.class)
      public JAXBElement<EncryptedDataType> createProtectedStringTypeEncryptedData(EncryptedDataType value) {
          return new JAXBElement<>(_ProtectedDataTypeEncryptedData_QNAME, EncryptedDataType.class, ProtectedStringType.class, value);
      }
  
      /**
       * Create an instance of {@link JAXBElement }{@code <}{@link HashedDataType }{@code >}}
       */
      @XmlElementDecl(namespace = "http://prism.evolveum.com/xml/ns/public/types-3", name = "hashedData", scope = ProtectedDataType.class)
      public JAXBElement<HashedDataType> createProtectedDataTypeHashedData(HashedDataType value) {
          return new JAXBElement<>(_ProtectedDataTypeHashedData_QNAME, HashedDataType.class, ProtectedDataType.class, value);
      }
  
      @XmlElementDecl(namespace = "http://prism.evolveum.com/xml/ns/public/types-3", name = "hashedData", scope = ProtectedStringType.class)
      public JAXBElement<HashedDataType> createProtectedStringTypeHashedData(HashedDataType value) {
          return new JAXBElement<>(_ProtectedDataTypeHashedData_QNAME, HashedDataType.class, ProtectedStringType.class, value);
      }
  
      @XmlElementDecl(namespace = "http://prism.evolveum.com/xml/ns/public/types-3", name = "path", scope = ItemPathType.class)
      public JAXBElement<ItemPath> createItemPathType(ItemPath value) {
          return new JAXBElement<>(_ItemPathType_QNAME, ItemPath.class, ItemPathType.class, value);
      }
  
      /**
       * Create an instance of {@link JAXBElement }{@code <}{@link ObjectType }{@code >}}
       */
      @XmlElementDecl(namespace = "http://prism.evolveum.com/xml/ns/public/types-3a", name = "object")
      public JAXBElement<ObjectType> createObject(ObjectType value) {
          return new JAXBElement<>(_Object_QNAME, ObjectType.class, null, value);
      }
  
      /**
       * Create an instance of {@link SchemaDefinitionType }
       */
      public SchemaDefinitionType createSchemaDefinitionType() {
          return new SchemaDefinitionType();
      }
  
  }
  