org.apache.xmlbeans.impl.inst2xsd

## Class RussianDollStrategy

- java.lang.Object
- - org.apache.xmlbeans.impl.inst2xsd.RussianDollStrategy

- All Implemented Interfaces:
    XsdGenStrategy
  Direct Known Subclasses:
    SalamiSliceStrategy, VenetianBlindStrategy

      public class RussianDollStrategy
      extends Object
      implements XsdGenStrategy

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `RussianDollStrategy.SCTValidationContext`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RussianDollStrategy()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected Element` | `addGlobalElement(Element withElem, TypeSystemHolder typeSystemHolder, Inst2XsdOptions options)`
    `protected void` | `checkIfAttributeReferenceIsNeeded(Attribute attribute, String parentNamespace, TypeSystemHolder typeSystemHolder)`
    `protected void` | `checkIfElementReferenceIsNeeded(Element child, String parentNamespace, TypeSystemHolder typeSystemHolder, Inst2XsdOptions options)`
    `protected void` | `checkIfReferenceToGlobalTypeIsNeeded(Element elem, TypeSystemHolder typeSystemHolder, Inst2XsdOptions options)`
    `protected void` | `combineAttributesOfTypes(Type into, Type from)`
    `protected void` | `combineElementComments(Element into, Element with)`
    `protected void` | `combineElementsOfTypes(Type into, Type from, Inst2XsdOptions options)`
    `protected void` | `combineSimpleTypes(Type into, Type with, Inst2XsdOptions options)`
    `protected QName` | `combineToMoreGeneralSimpleType(QName t1, QName t2)`
    `protected void` | `combineTypes(Type into, Type with, Inst2XsdOptions options)`
    `protected Attribute` | `processAttribute(XmlCursor xc, Inst2XsdOptions options, String parentNamespace, TypeSystemHolder typeSystemHolder)`
    `protected void` | `processAttributesInComplexType(Type elemType, List<Attribute> attributes)`
    `void` | `processDoc(XmlObject[] instances, Inst2XsdOptions options, TypeSystemHolder typeSystemHolder)`
    `protected Element` | `processElement(XmlCursor xc, String comment, Inst2XsdOptions options, TypeSystemHolder typeSystemHolder)`
    `protected void` | `processElementsInComplexType(Type elemType, List<Element> children, String parentNamespace, TypeSystemHolder typeSystemHolder, Inst2XsdOptions options)`
    `protected QName` | `processSimpleContentType(String lexicalValue, Inst2XsdOptions options, XmlCursor xc)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### RussianDollStrategy

          public RussianDollStrategy()

  - ### Method Detail

    - #### processDoc

          public void processDoc(XmlObject[] instances,
                                 Inst2XsdOptions options,
                                 TypeSystemHolder typeSystemHolder)

      Specified by:
        `processDoc` in interface `XsdGenStrategy`

    - #### addGlobalElement

          protected Element addGlobalElement(Element withElem,
                                             TypeSystemHolder typeSystemHolder,
                                             Inst2XsdOptions options)

    - #### processElement

          protected Element processElement(XmlCursor xc,
                                           String comment,
                                           Inst2XsdOptions options,
                                           TypeSystemHolder typeSystemHolder)

    - #### processElementsInComplexType

          protected void processElementsInComplexType(Type elemType,
                                                      List<Element> children,
                                                      String parentNamespace,
                                                      TypeSystemHolder typeSystemHolder,
                                                      Inst2XsdOptions options)

    - #### checkIfElementReferenceIsNeeded

          protected void checkIfElementReferenceIsNeeded(Element child,
                                                         String parentNamespace,
                                                         TypeSystemHolder typeSystemHolder,
                                                         Inst2XsdOptions options)

    - #### checkIfReferenceToGlobalTypeIsNeeded

          protected void checkIfReferenceToGlobalTypeIsNeeded(Element elem,
                                                              TypeSystemHolder typeSystemHolder,
                                                              Inst2XsdOptions options)

    - #### processAttributesInComplexType

          protected void processAttributesInComplexType(Type elemType,
                                                        List<Attribute> attributes)

    - #### processAttribute

          protected Attribute processAttribute(XmlCursor xc,
                                               Inst2XsdOptions options,
                                               String parentNamespace,
                                               TypeSystemHolder typeSystemHolder)

    - #### checkIfAttributeReferenceIsNeeded

          protected void checkIfAttributeReferenceIsNeeded(Attribute attribute,
                                                           String parentNamespace,
                                                           TypeSystemHolder typeSystemHolder)

    - #### processSimpleContentType

          protected QName processSimpleContentType(String lexicalValue,
                                                   Inst2XsdOptions options,
                                                   XmlCursor xc)

    - #### combineTypes

          protected void combineTypes(Type into,
                                      Type with,
                                      Inst2XsdOptions options)

    - #### combineSimpleTypes

          protected void combineSimpleTypes(Type into,
                                            Type with,
                                            Inst2XsdOptions options)

    - #### combineToMoreGeneralSimpleType

          protected QName combineToMoreGeneralSimpleType(QName t1,
                                                         QName t2)

    - #### combineAttributesOfTypes

          protected void combineAttributesOfTypes(Type into,
                                                  Type from)

    - #### combineElementsOfTypes

          protected void combineElementsOfTypes(Type into,
                                                Type from,
                                                Inst2XsdOptions options)

    - #### combineElementComments

          protected void combineElementComments(Element into,
                                                Element with)