package org.whole.lang.xsd.codebase;
import org.whole.lang.builders.IBuilderOperation;
import org.whole.lang.templates.AbstractTemplateFactory;
public class SchemaActions extends AbstractTemplateFactory<org.whole.lang.actions.model.LanguageActionFactory> {
public void apply(IBuilderOperation op) {
org.whole.lang.actions.builders.IActionsBuilder b0 = (org.whole.lang.actions.builders.IActionsBuilder) op.wGetBuilder(org.whole.lang.actions.reflect.ActionsLanguageKit.URI);
b0.LanguageActionFactory_();
b0.URI("whole:org.whole.lang.xsd.codebase:SchemaActions");
b0.Namespace("org.whole.lang.xsd.codebase");
b0.Name("Schema Actions");
org.whole.lang.commons.builders.ICommonsBuilder b1 = (org.whole.lang.commons.builders.ICommonsBuilder) op.wGetBuilder(org.whole.lang.commons.reflect.CommonsLanguageKit.URI);
b1.Resolver();
b0.URI("http://www.w3.org/2001/XMLSchema");
b0.ToolbarActions_();
b1.Resolver();
b0.SimpleAction_();
b0.Label("Normalize");
org.whole.lang.queries.builders.IQueriesBuilder b2 = (org.whole.lang.queries.builders.IQueriesBuilder) op.wGetBuilder(org.whole.lang.queries.reflect.QueriesLanguageKit.URI);
b2.Block_(19);
b2.Filter_();
b2.StringLiteral("http://www.w3.org/2001/XMLSchema");
b2.VariableTest("XML_SCHEMA_NS_URI");
b2._Filter();
b2.Filter_();
b2.StringLiteral("http://www.w3.org/XML/1998/namespace");
b2.VariableTest("XML_NS_URI");
b2._Filter();
b2.Filter_();
b2.StringLiteral("xml");
b2.VariableTest("XML_NS_PREFIX");
b2._Filter();
b2.Path_(3);
b2.FeatureStep("namespaces");
b2.Filter_();
b2.ChildStep();
b2.ExpressionTest_();
b2.Equals_();
b2.Singleton_();
b2.FeatureStep("uri");
b2._Singleton();
b2.VariableRefStep("XML_SCHEMA_NS_URI");
b2._Equals();
b2._ExpressionTest();
b2._Filter();
b2.Filter_();
b2.FeatureStep("prefix");
b2.VariableTest("XML_SCHEMA_NS_PREFIX");
b2._Filter();
b2._Path();
b2.Filter_();
b2.Choose_(2);
b2.If_();
b2.ExpressionTest_();
b2.Filter_();
b2.VariableRefStep("XML_SCHEMA_NS_PREFIX");
b2.KindTest("RESOLVER");
b2._Filter();
b2._ExpressionTest();
b2.StringLiteral("anyType");
b2._If();
b2.Do_();
b2.Addition_();
b2.VariableRefStep("XML_SCHEMA_NS_PREFIX");
b2.StringLiteral(":anyType");
b2._Addition();
b2._Do();
b2._Choose();
b2.VariableTest("ANY_TYPE_QNAME");
b2._Filter();
b2.Filter_();
b2.Choose_(2);
b2.If_();
b2.ExpressionTest_();
b2.Filter_();
b2.VariableRefStep("XML_SCHEMA_NS_PREFIX");
b2.KindTest("RESOLVER");
b2._Filter();
b2._ExpressionTest();
b2.StringLiteral("anySimpleType");
b2._If();
b2.Do_();
b2.Addition_();
b2.VariableRefStep("XML_SCHEMA_NS_PREFIX");
b2.StringLiteral(":anySimpleType");
b2._Addition();
b2._Do();
b2._Choose();
b2.VariableTest("ANY_SIMPLE_TYPE_QNAME");
b2._Filter();
b2.QueryDeclaration_();
b2.Name("hasPrefix");
b2.Names_(3);
b2.Name("prefix");
b2.Name("qname");
b2.Name("prefixString");
b2._Names();
b2.Block_(2);
b2.Filter_();
b2.SelfStep();
b2.VariableTest("qname");
b2._Filter();
b2.Choose_(2);
b2.If_();
b2.ExpressionTest_();
b2.Filter_();
b2.VariableRefStep("prefix");
b2.KindTest("RESOLVER");
b2._Filter();
b2._ExpressionTest();
b2.Filter_();
b2.VariableRefStep("qname");
b2.ExpressionTest_();
b2.Equals_();
b1.SameStageFragment_();
org.whole.lang.workflows.builders.IWorkflowsBuilder b3 = (org.whole.lang.workflows.builders.IWorkflowsBuilder) op.wGetBuilder(org.whole.lang.workflows.reflect.WorkflowsLanguageKit.URI);
b3.InvokeJavaInstanceMethod_();
b3.Text("index of \":\" in qname");
b1.Resolver();
b3.Variable("qname");
b1.Resolver();
b3.StringLiteral("java.lang.String");
b3.StringLiteral("indexOf(java.lang.String)");
b3.Expressions_(1);
b3.StringLiteral(":");
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b1._SameStageFragment();
b2.IntLiteral(-1);
b2._Equals();
b2._ExpressionTest();
b2._Filter();
b2._If();
b2.Do_();
b2.Filter_();
b2.VariableRefStep("qname");
b2.ExpressionTest_();
b1.SameStageFragment_();
b3.InvokeJavaInstanceMethod_();
b3.Text("qname starts with prefix?");
b1.Resolver();
b3.Variable("qname");
b1.Resolver();
b3.StringLiteral("java.lang.String");
b3.StringLiteral("startsWith(java.lang.String)");
b3.Expressions_(1);
b1.SameStageFragment_();
b2.Addition_();
b2.VariableRefStep("prefix");
b2.StringLiteral(":");
b2._Addition();
b1._SameStageFragment();
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b1._SameStageFragment();
b2._ExpressionTest();
b2._Filter();
b2._Do();
b2._Choose();
b2._Block();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("replacePrefixesInDescendants");
b2.Names_(2);
b2.Name("prefix");
b2.Name("newPrefix");
b2._Names();
b2.Block_(3);
b2.QueryDeclaration_();
b2.Name("replacePrefix");
b2.Names_(3);
b2.Name("prefix");
b2.Name("qname");
b2.Name("baseName");
b2._Names();
b2.Block_(3);
b2.Filter_();
b2.SelfStep();
b2.VariableTest("qname");
b2._Filter();
b2.Filter_();
b1.SameStageFragment_();
b3.InvokeJavaInstanceMethod_();
b3.Text("extract baseName from qname");
b1.Resolver();
b3.Variable("qname");
b1.Resolver();
b3.StringLiteral("java.lang.String");
b3.StringLiteral("replaceFirst(java.lang.String, java.lang.String)");
b3.Expressions_(2);
b3.StringLiteral("[^:]+:");
b3.StringLiteral("");
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b1._SameStageFragment();
b2.VariableTest("baseName");
b2._Filter();
b2.PointwiseUpdate_();
b2.SelfStep();
b2.Choose_(2);
b2.If_();
b2.ExpressionTest_();
b2.Filter_();
b2.VariableRefStep("prefix");
b2.KindTest("RESOLVER");
b2._Filter();
b2._ExpressionTest();
b2.VariableRefStep("baseName");
b2._If();
b2.Do_();
b2.Addition_();
b2.Addition_();
b2.VariableRefStep("prefix");
b2.StringLiteral(":");
b2._Addition();
b2.VariableRefStep("baseName");
b2._Addition();
b2._Do();
b2._Choose();
b2._PointwiseUpdate();
b2._Block();
b2._QueryDeclaration();
b2.For_();
b2.Path_(1);
b2.Filter_();
b2.DescendantStep();
b2.And_(3);
b2.TypeTest("http://www.w3.org/2001/XMLSchema#QName");
b2.KindTest("IMPL");
b2.ExpressionTest_();
b2.Call_();
b2.Name("hasPrefix");
b2.Expressions_(1);
b2.VariableRefStep("prefix");
b2._Expressions();
b2._Call();
b2._ExpressionTest();
b2._And();
b2._Filter();
b2._Path();
b2.Call_();
b2.Name("replacePrefix");
b2.Expressions_(1);
b2.VariableRefStep("newPrefix");
b2._Expressions();
b2._Call();
b2._For();
b2.SelfStep();
b2._Block();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("resolveInclusions");
b2.Names_(3);
b2.Name("schema");
b2.Name("prefix");
b2.Name("includedSchema");
b2._Names();
b2.Block_(6);
b2.QueryDeclaration_();
b2.Name("performInclusions");
b2.Names_(3);
b2.Name("schema");
b2.Name("prefix");
b2.Name("includedSchema");
b2._Names();
b2.Block_(6);
b2.QueryDeclaration_();
b2.Name("updateComponent");
b2.Names_(4);
b2.Name("schema");
b2.Name("prefix");
b2.Name("ed");
b2.Name("name");
b2._Names();
b2.Block_(3);
b2.Filter_();
b2.FeatureStep("name");
b2.VariableTest("name");
b2._Filter();
b2.Filter_();
b1.SameStageFragment_();
b3.InvokeJavaInstanceMethod_();
b3.Text("get self entity descriptor");
b1.Resolver();
b3.Variable("self");
b1.Resolver();
b3.StringLiteral("org.whole.lang.model.IEntity");
b3.StringLiteral("wGetEntityDescriptor()");
b1.Resolver();
b3._InvokeJavaInstanceMethod();
b1._SameStageFragment();
b2.VariableTest("ed");
b2._Filter();
b2.If_();
b2.Not_();
b2.ExpressionTest_();
b2.Path_(2);
b2.VariableRefStep("schema");
b2.Filter_();
b2.FeatureStep("components");
b2.Some_();
b2.ChildStep();
b2.And_(2);
b2.ExpressionTest_();
b2.Filter_();
b2.FeatureStep("name");
b2.VariableTest("name");
b2._Filter();
b2._ExpressionTest();
b2.ExpressionTest_();
b2.Singleton_();
b1.SameStageFragment_();
b3.InvokeJavaClassMethod_();
b3.Text("match entity descriptor");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.matchers.Matcher");
b3.StringLiteral("match(org.whole.lang.reflect.EntityDescriptor, org.whole.lang.model.IEntity)");
b3.Expressions_(2);
b3.Variable("ed");
b3.Variable("self");
b3._Expressions();
b3._InvokeJavaClassMethod();
b1._SameStageFragment();
b2._Singleton();
b2._ExpressionTest();
b2._And();
b2._Some();
b2._Filter();
b2._Path();
b2._ExpressionTest();
b2._Not();
b2.PointwiseInsert_();
b2.Placement("INTO");
b2.Path_(2);
b2.VariableRefStep("schema");
b2.FeatureStep("components");
b2._Path();
b2.Path_(1);
b2.Call_();
b2.Name("replacePrefixesInDescendants");
b2.Expressions_(2);
b2.StringLiteral("");
b2.VariableRefStep("prefix");
b2._Expressions();
b2._Call();
b2._Path();
b2._PointwiseInsert();
b2._If();
b2._Block();
b2._QueryDeclaration();
b2.If_();
b2.TypeTest("http://www.w3.org/2001/XMLSchema#Redefine");
b1.SameStageFragment_();
org.whole.lang.java.builders.IJavaBuilder b4 = (org.whole.lang.java.builders.IJavaBuilder) op.wGetBuilder(org.whole.lang.java.reflect.JavaLanguageKit.URI);
b4.ThrowStatement_();
b4.ClassInstanceCreation_();
b1.Resolver();
b1.Resolver();
b4.SimpleType("IllegalStateException");
b4.Arguments_(1);
b4.StringLiteral("Xsd redefine directive not implemented yet");
b4._Arguments();
b1.Resolver();
b4._ClassInstanceCreation();
b4._ThrowStatement();
b1._SameStageFragment();
b2._If();
b1.SameStageFragment_();
b3.InvokeOperation_();
b3.Text("normalize schema");
b3.Variable("includedSchema");
b3.Operation("NORMALIZER");
b1.Resolver();
b3._InvokeOperation();
b1._SameStageFragment();
b2.CartesianUpdate_();
b2.Path_(4);
b2.VariableRefStep("includedSchema");
b2.FeatureStep("components");
b2.ChildStep();
b2.FeatureStep("namespaces");
b2._Path();
b2.Path_(2);
b2.VariableRefStep("includedSchema");
b2.FeatureStep("namespaces");
b2._Path();
b2._CartesianUpdate();
b2.For_();
b2.Path_(3);
b2.VariableRefStep("includedSchema");
b2.FeatureStep("components");
b2.ChildStep();
b2._Path();
b2.Call_();
b2.Name("updateComponent");
b2.Expressions_(2);
b2.VariableRefStep("schema");
b2.VariableRefStep("prefix");
b2._Expressions();
b2._Call();
b2._For();
b2.SelfStep();
b2._Block();
b2._QueryDeclaration();
b2.Path_(4);
b2.Filter_();
b2.SelfStep();
b2.VariableTest("schema");
b2._Filter();
b2.FeatureStep("namespaces");
b2.Filter_();
b2.ChildStep();
b2.ExpressionTest_();
b2.PointwiseEquals_();
b2.FeatureStep("uri");
b2.Path_(2);
b2.VariableRefStep("schema");
b2.FeatureStep("targetNamespace");
b2._Path();
b2._PointwiseEquals();
b2._ExpressionTest();
b2._Filter();
b2.Filter_();
b2.FeatureStep("prefix");
b2.VariableTest("prefix");
b2._Filter();
b2._Path();
b2.Filter_();
b1.SameStageFragment_();
org.whole.lang.environment.builders.IEnvironmentBuilder b5 = (org.whole.lang.environment.builders.IEnvironmentBuilder) op.wGetBuilder(org.whole.lang.environment.reflect.EnvironmentLanguageKit.URI);
b5.ObjectData((Object) null);
b1._SameStageFragment();
b2.VariableTest("lsResourceResolver");
b2._Filter();
b2.For_();
b2.Path_(2);
b2.FeatureStep("directives");
b2.Filter_();
b2.ChildStep();
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#Include");
b2._Filter();
b2._Path();
b2.Path_(2);
b2.Filter_();
b1.SameStageFragment_();
b3.InvokeJavaClassMethod_();
b3.Text("load schema");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.util.SchemaUtils");
b3.StringLiteral("load(java.lang.String, java.lang.String, java.lang.String, org.whole.lang.xml.util.ResourceResolver)");
b3.Expressions_(4);
b1.SameStageFragment_();
b2.Path_(2);
b2.VariableRefStep("schema");
b2.FeatureStep("targetNamespace");
b2._Path();
b1._SameStageFragment();
b1.SameStageFragment_();
b2.FeatureStep("schemaLocation");
b1._SameStageFragment();
b3.Variable("folderLocation");
b3.Variable("lsResourceResolver");
b3._Expressions();
b3._InvokeJavaClassMethod();
b1._SameStageFragment();
b2.TypeTest("http://www.w3.org/2001/XMLSchema#Schema");
b2._Filter();
b2.Call_();
b2.Name("performInclusions");
b2.Expressions_(3);
b2.VariableRefStep("schema");
b2.VariableRefStep("prefix");
b2.SelfStep();
b2._Expressions();
b2._Call();
b2._Path();
b2._For();
b2.Delete_();
b2.Path_(2);
b2.FeatureStep("directives");
b2.Filter_();
b2.ChildStep();
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#Include");
b2._Filter();
b2._Path();
b2._Delete();
b2.SelfStep();
b2._Block();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("removeEmptyParticles");
b1.Resolver();
b2.Delete_();
b2.Path_(3);
b2.FeatureStep("components");
b2.ChildStep();
b2.Filter_();
b2.DescendantStep();
b2.And_(2);
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#Particle");
b2.ExpressionTest_();
b2.Filter_();
b2.FeatureStep("maxOccurs");
b2.ExpressionTest_();
b1.StageUpFragment_();
org.whole.lang.xsd.builders.IXsdBuilder b6 = (org.whole.lang.xsd.builders.IXsdBuilder) op.wGetBuilder(org.whole.lang.xsd.reflect.XsdLanguageKit.URI);
b6.Bounded(0);
b1._StageUpFragment();
b2._ExpressionTest();
b2._Filter();
b2._ExpressionTest();
b2._And();
b2._Filter();
b2._Path();
b2._Delete();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("bottomUp");
b1.Resolver();
b2.Sequence_(2);
b2.Path_(2);
b2.ChildStep();
b2.Call_();
b2.Name("bottomUp");
b1.Resolver();
b2._Call();
b2._Path();
b2.Filter_();
b2.SelfStep();
b2.And_(2);
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#NSContainer");
b2.KindTest("IMPL");
b2._And();
b2._Filter();
b2._Sequence();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("pullUpNamespaces");
b2.Names_(4);
b2.Name("NSContainer");
b2.Name("outerNSContainer");
b2.Name("prefixesFreshNameGen");
b2.Name("prefix");
b2._Names();
b2.Block_(8);
b2.QueryDeclaration_();
b2.Name("isUnusedNamespace");
b2.Names_(2);
b2.Name("NSContainer");
b2.Name("prefix");
b2._Names();
b2.Block_(2);
b2.Filter_();
b2.FeatureStep("prefix");
b2.VariableTest("prefix");
b2._Filter();
b2.Filter_();
b2.VariableRefStep("NSContainer");
b2.Or_(1);
b2.Not_();
b2.ExpressionTest_();
b2.Filter_();
b2.DescendantStep();
b2.And_(3);
b2.TypeTest("http://www.w3.org/2001/XMLSchema#QName");
b2.KindTest("IMPL");
b2.ExpressionTest_();
b2.Call_();
b2.Name("hasPrefix");
b2.Expressions_(1);
b2.VariableRefStep("prefix");
b2._Expressions();
b2._Call();
b2._ExpressionTest();
b2._And();
b2._Filter();
b2._ExpressionTest();
b2._Not();
b2._Or();
b2._Filter();
b2._Block();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("isDuplicateNamespace");
b2.Names_(2);
b2.Name("outerNSContainer");
b2.Name("namespace");
b2._Names();
b2.Block_(2);
b2.Filter_();
b2.SelfStep();
b2.VariableTest("namespace");
b2._Filter();
b2.Path_(3);
b2.VariableRefStep("outerNSContainer");
b2.FeatureStep("namespaces");
b2.Filter_();
b2.ChildStep();
b2.VariableTest("namespace");
b2._Filter();
b2._Path();
b2._Block();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("needsMergeNamespace");
b2.Names_(5);
b2.Name("outerNSContainer");
b2.Name("NSContainer");
b2.Name("uri");
b2.Name("prefix");
b2.Name("mergePrefix");
b2._Names();
b2.Block_(3);
b2.Filter_();
b2.FeatureStep("uri");
b2.VariableTest("uri");
b2._Filter();
b2.Filter_();
b2.FeatureStep("prefix");
b2.VariableTest("prefix");
b2._Filter();
b2.If_();
b2.ExpressionTest_();
b2.Path_(4);
b2.VariableRefStep("outerNSContainer");
b2.FeatureStep("namespaces");
b2.Filter_();
b2.ChildStep();
b2.ExpressionTest_();
b2.Filter_();
b2.FeatureStep("uri");
b2.VariableTest("uri");
b2._Filter();
b2._ExpressionTest();
b2._Filter();
b2.Filter_();
b2.FeatureStep("prefix");
b2.VariableTest("mergePrefix");
b2._Filter();
b2._Path();
b2._ExpressionTest();
b2.Path_(2);
b2.VariableRefStep("NSContainer");
b2.Call_();
b2.Name("replacePrefixesInDescendants");
b2.Expressions_(2);
b2.VariableRefStep("prefix");
b2.VariableRefStep("mergePrefix");
b2._Expressions();
b2._Call();
b2._Path();
b2._If();
b2._Block();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("needsForkNamespace");
b2.Names_(6);
b2.Name("outerNSContainer");
b2.Name("NSContainer");
b2.Name("prefixesFreshNameGen");
b2.Name("uri");
b2.Name("prefix");
b2.Name("forkPrefix");
b2._Names();
b2.Block_(3);
b2.Filter_();
b2.FeatureStep("uri");
b2.VariableTest("uri");
b2._Filter();
b2.Filter_();
b2.FeatureStep("prefix");
b2.VariableTest("prefix");
b2._Filter();
b2.If_();
b2.ExpressionTest_();
b2.Path_(3);
b2.VariableRefStep("outerNSContainer");
b2.FeatureStep("namespaces");
b2.Filter_();
b2.ChildStep();
b2.ExpressionTest_();
b2.Filter_();
b2.FeatureStep("prefix");
b2.VariableTest("prefix");
b2._Filter();
b2._ExpressionTest();
b2._Filter();
b2._Path();
b2._ExpressionTest();
b2.Block_(3);
b2.Filter_();
b2.Choose_(2);
b2.If_();
b2.ExpressionTest_();
b2.Filter_();
b2.VariableRefStep("prefix");
b2.KindTest("RESOLVER");
b2._Filter();
b2._ExpressionTest();
b1.SameStageFragment_();
b3.InvokeJavaInstanceMethod_();
b3.Text("calculate a fresh forkPrefix");
b1.Resolver();
b3.Variable("prefixesFreshNameGen");
b1.Resolver();
b3.StringLiteral("org.whole.lang.util.FreshNameGenerator");
b3.StringLiteral("nextFreshName(java.lang.String)");
b3.Expressions_(1);
b3.StringLiteral("ns");
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b1._SameStageFragment();
b2._If();
b2.Do_();
b1.SameStageFragment_();
b3.InvokeJavaInstanceMethod_();
b3.Text("calculate forkPrefix using prefix");
b1.Resolver();
b3.Variable("prefixesFreshNameGen");
b1.Resolver();
b3.StringLiteral("org.whole.lang.util.FreshNameGenerator");
b3.StringLiteral("nextFreshName(java.lang.String)");
b3.Expressions_(1);
b3.Variable("prefix");
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b1._SameStageFragment();
b2._Do();
b2._Choose();
b2.VariableTest("forkPrefix");
b2._Filter();
b2.PointwiseInsert_();
b2.Placement("INTO");
b2.Path_(2);
b2.VariableRefStep("outerNSContainer");
b2.FeatureStep("namespaces");
b2._Path();
b1.StageUpFragment_();
b6.NamespaceDecl_();
b1.Variable_();
b1.VarType("http://www.w3.org/2001/XMLSchema#Name");
b1.VarName("forkPrefix");
b1.Quantifier("!");
b1._Variable();
b1.Variable_();
b1.VarType("http://www.w3.org/2001/XMLSchema#AnyURI");
b1.VarName("uri");
b1.Quantifier("!");
b1._Variable();
b6._NamespaceDecl();
b1._StageUpFragment();
b2._PointwiseInsert();
b2.Path_(2);
b2.VariableRefStep("NSContainer");
b2.Call_();
b2.Name("replacePrefixesInDescendants");
b2.Expressions_(2);
b2.VariableRefStep("prefix");
b2.VariableRefStep("forkPrefix");
b2._Expressions();
b2._Call();
b2._Path();
b2._Block();
b2._If();
b2._Block();
b2._QueryDeclaration();
b2.Filter_();
b2.SelfStep();
b2.VariableTest("NSContainer");
b2._Filter();
b2.Filter_();
b2.AncestorStep();
b2.And_(3);
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#NSContainer");
b2.ExpressionTest_();
b2.Path_(2);
b2.FeatureStep("namespaces");
b2.ChildStep();
b2._Path();
b2._ExpressionTest();
b2.VariableTest("outerNSContainer");
b2._And();
b2._Filter();
b2.If_();
b2.ExpressionTest_();
b2.Path_(1);
b2.VariableRefStep("outerNSContainer");
b2._Path();
b2._ExpressionTest();
b2.Block_(6);
b2.Filter_();
b1.SameStageFragment_();
b3.CreateJavaClassInstance_();
b3.Text("create a fresh prefix name generator");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.util.FreshNameGenerator");
b3.StringLiteral("FreshNameGenerator()");
b1.Resolver();
b3._CreateJavaClassInstance();
b1._SameStageFragment();
b2.VariableTest("prefixesFreshNameGen");
b2._Filter();
b2.For_();
b2.Path_(4);
b2.VariableRefStep("outerNSContainer");
b2.FeatureStep("namespaces");
b2.ChildStep();
b2.Filter_();
b2.FeatureStep("prefix");
b2.And_(2);
b2.KindTest("IMPL");
b2.VariableTest("prefix");
b2._And();
b2._Filter();
b2._Path();
b1.SameStageFragment_();
b3.InvokeJavaInstanceMethod_();
b3.Text("add bound prefix");
b1.Resolver();
b3.Variable("prefixesFreshNameGen");
b1.Resolver();
b3.StringLiteral("org.whole.lang.util.FreshNameGenerator");
b3.StringLiteral("addBoundName(java.lang.String)");
b3.Expressions_(1);
b3.Variable("prefix");
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b1._SameStageFragment();
b2._For();
b2.Delete_();
b2.Path_(2);
b2.FeatureStep("namespaces");
b2.Filter_();
b2.ChildStep();
b2.ExpressionTest_();
b2.Choose_(2);
b2.Call_();
b2.Name("isUnusedNamespace");
b2.Expressions_(1);
b2.VariableRefStep("NSContainer");
b2._Expressions();
b2._Call();
b2.Call_();
b2.Name("isDuplicateNamespace");
b2.Expressions_(1);
b2.VariableRefStep("outerNSContainer");
b2._Expressions();
b2._Call();
b2._Choose();
b2._ExpressionTest();
b2._Filter();
b2._Path();
b2._Delete();
b2.Delete_();
b2.Path_(2);
b2.FeatureStep("namespaces");
b2.Filter_();
b2.ChildStep();
b2.ExpressionTest_();
b2.Call_();
b2.Name("needsForkNamespace");
b2.Expressions_(3);
b2.VariableRefStep("outerNSContainer");
b2.VariableRefStep("NSContainer");
b2.VariableRefStep("prefixesFreshNameGen");
b2._Expressions();
b2._Call();
b2._ExpressionTest();
b2._Filter();
b2._Path();
b2._Delete();
b2.Delete_();
b2.Path_(2);
b2.FeatureStep("namespaces");
b2.Filter_();
b2.ChildStep();
b2.ExpressionTest_();
b2.Call_();
b2.Name("needsMergeNamespace");
b2.Expressions_(2);
b2.VariableRefStep("outerNSContainer");
b2.VariableRefStep("NSContainer");
b2._Expressions();
b2._Call();
b2._ExpressionTest();
b2._Filter();
b2._Path();
b2._Delete();
b2.CartesianInsert_();
b2.Placement("INTO");
b2.Path_(2);
b2.VariableRefStep("outerNSContainer");
b2.FeatureStep("namespaces");
b2._Path();
b2.Delete_();
b2.Path_(3);
b2.VariableRefStep("NSContainer");
b2.FeatureStep("namespaces");
b2.ChildStep();
b2._Path();
b2._Delete();
b2._CartesianInsert();
b2._Block();
b2._If();
b2.SelfStep();
b2._Block();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("applyDefaults");
b1.Resolver();
b2.Block_(2);
b2.Choose_(5);
b2.If_();
b2.TypeTest("http://www.w3.org/2001/XMLSchema#ComplexTypeDef");
b2.CartesianUpdate_();
b2.Filter_();
b2.FeatureStep("abstract");
b2.KindTest("RESOLVER");
b2._Filter();
b1.StageUpFragment_();
b6.BooleanData(false);
b1._StageUpFragment();
b2._CartesianUpdate();
b2._If();
b2.If_();
b2.And_(2);
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#Particle");
b2.Not_();
b2.ExpressionTest_();
b2.Filter_();
b2.ParentStep();
b2.Or_(2);
b2.TypeTest("http://www.w3.org/2001/XMLSchema#ModelGroupDef");
b2.TypeTest("http://www.w3.org/2001/XMLSchema#SchemaComponents");
b2._Or();
b2._Filter();
b2._ExpressionTest();
b2._Not();
b2._And();
b2.Sequence_(2);
b2.CartesianUpdate_();
b2.Filter_();
b2.Sequence_(2);
b2.FeatureStep("minOccurs");
b2.FeatureStep("maxOccurs");
b2._Sequence();
b2.KindTest("RESOLVER");
b2._Filter();
b2.Do_();
b1.StageUpFragment_();
b6.Bounded(1);
b1._StageUpFragment();
b2._Do();
b2._CartesianUpdate();
b2.If_();
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#Wildcard");
b2.Sequence_(2);
b2.CartesianUpdate_();
b2.Filter_();
b2.FeatureStep("processContents");
b2.KindTest("RESOLVER");
b2._Filter();
b1.StageUpFragment_();
b6.ProcessContents("strict");
b1._StageUpFragment();
b2._CartesianUpdate();
b2.CartesianUpdate_();
b2.Filter_();
b2.FeatureStep("namespaceSpecs");
b2.KindTest("RESOLVER");
b2._Filter();
b1.StageUpFragment_();
b6.AnyNamespaceSpecs();
b1._StageUpFragment();
b2._CartesianUpdate();
b2._Sequence();
b2._If();
b2._Sequence();
b2._If();
b2.If_();
b2.Or_(2);
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#AttributeUse");
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#AttributeDecl");
b2._Or();
b2.Sequence_(2);
b2.CartesianUpdate_();
b2.Filter_();
b2.FeatureStep("use");
b2.KindTest("RESOLVER");
b2._Filter();
b1.StageUpFragment_();
b6.Use("optional");
b1._StageUpFragment();
b2._CartesianUpdate();
b2.CartesianUpdate_();
b2.Filter_();
b2.FeatureStep("simpleType");
b2.And_(2);
b2.KindTest("RESOLVER");
b2.ExpressionTest_();
b2.Path_(2);
b2.ParentStep();
b2.Filter_();
b2.FeatureStep("simpleTypeDef");
b2.KindTest("RESOLVER");
b2._Filter();
b2._Path();
b2._ExpressionTest();
b2._And();
b2._Filter();
b2.VariableRefStep("ANY_SIMPLE_TYPE_QNAME");
b2._CartesianUpdate();
b2._Sequence();
b2._If();
b2.If_();
b2.TypeTest("http://www.w3.org/2001/XMLSchema#AnyAttribute");
b2.Sequence_(2);
b2.CartesianUpdate_();
b2.Filter_();
b2.FeatureStep("namespaceSpecs");
b2.KindTest("RESOLVER");
b2._Filter();
b1.StageUpFragment_();
b6.AnyNamespaceSpecs();
b1._StageUpFragment();
b2._CartesianUpdate();
b2.CartesianUpdate_();
b2.Filter_();
b2.FeatureStep("processContents");
b2.KindTest("RESOLVER");
b2._Filter();
b1.StageUpFragment_();
b6.ProcessContents("strict");
b1._StageUpFragment();
b2._CartesianUpdate();
b2._Sequence();
b2._If();
b2.If_();
b2.TypeTest("http://www.w3.org/2001/XMLSchema#Schema");
b2.Sequence_(2);
b2.CartesianUpdate_();
b2.Filter_();
b2.FeatureStep("attributeFormDefault");
b2.KindTest("RESOLVER");
b2._Filter();
b1.StageUpFragment_();
b6.Qualify("unqualified");
b1._StageUpFragment();
b2._CartesianUpdate();
b2.CartesianUpdate_();
b2.Filter_();
b2.FeatureStep("elementFormDefault");
b2.KindTest("RESOLVER");
b2._Filter();
b1.StageUpFragment_();
b6.Qualify("unqualified");
b1._StageUpFragment();
b2._CartesianUpdate();
b2._Sequence();
b2._If();
b2._Choose();
b2.SelfStep();
b2._Block();
b2._QueryDeclaration();
b2.QueryDeclaration_();
b2.Name("introduceCompositeSequences");
b1.Resolver();
b2.Path_(3);
b2.Choose_(2);
b2.CartesianUpdate_();
b2.Filter_();
b2.SelfStep();
b2.Or_(2);
b2.And_(4);
b2.SubtypeTest("http://www.w3.org/2001/XMLSchema#Particle");
b2.Not_();
b2.TypeTest("http://www.w3.org/2001/XMLSchema#Sequence");
b2._Not();
b2.Not_();
b2.ExpressionTest_();
b2.Filter_();
b2.FeatureStep("maxOccurs");
b2.ExpressionTest_();
b1.StageUpFragment_();
b6.Bounded(1);
b1._StageUpFragment();
b2._ExpressionTest();
b2._Filter();
b2._ExpressionTest();
b2._Not();
b2.Not_();
b2.ExpressionTest_();
b2.Filter_();
b2.ParentStep();
b2.TypeTest("http://www.w3.org/2001/XMLSchema#ModelGroupDef");
b2._Filter();
b2._ExpressionTest();
b2._Not();
b2._And();
b2.And_(4);
b2.TypeTest("http://www.w3.org/2001/XMLSchema#Sequence");
b2.Not_();
b2.ExpressionTest_();
b2.Filter_();
b2.FeatureStep("maxOccurs");
b2.ExpressionTest_();
b1.StageUpFragment_();
b6.Bounded(1);
b1._StageUpFragment();
b2._ExpressionTest();
b2._Filter();
b2._ExpressionTest();
b2._Not();
b2.Not_();
b2.ExpressionTest_();
b2.Filter_();
b2.ParentStep();
b2.TypeTest("http://www.w3.org/2001/XMLSchema#ModelGroupDef");
b2._Filter();
b2._ExpressionTest();
b2._Not();
b2.ExpressionTest_();
b2.Path_(2);
b2.FeatureStep("particles");
b2.Filter_();
b2.ChildStep();
b2.IndexTest_();
b2.IntLiteral(1);
b2._IndexTest();
b2._Filter();
b2._Path();
b2._ExpressionTest();
b2._And();
b2._Or();
b2._Filter();
b1.StageUpFragment_();
b6.Sequence_();
b1.Resolver();
b1.Resolver();
b1.Resolver();
b1.StageDownFragment_();
b2.FeatureStep("minOccurs");
b1._StageDownFragment();
b1.StageDownFragment_();
b2.FeatureStep("maxOccurs");
b1._StageDownFragment();
b1.StageDownFragment_();
b2.Call_();
b2.Name("getAppInfo");
b1.Resolver();
b2._Call();
b1._StageDownFragment();
b6.Particles_(1);
b1.StageDownFragment_();
b2.Block_(4);
b2.PointwiseUpdate_();
b2.FeatureStep("minOccurs");
b1.StageUpFragment_();
b6.Bounded(1);
b1._StageUpFragment();
b2._PointwiseUpdate();
b2.PointwiseUpdate_();
b2.FeatureStep("maxOccurs");
b1.StageUpFragment_();
b6.Bounded(1);
b1._StageUpFragment();
b2._PointwiseUpdate();
b2.Delete_();
b2.Call_();
b2.Name("getAppInfo");
b1.Resolver();
b2._Call();
b2._Delete();
b2.SelfStep();
b2._Block();
b1._StageDownFragment();
b6._Particles();
b6._Sequence();
b1._StageUpFragment();
b2._CartesianUpdate();
b2.SelfStep();
b2._Choose();
b2.ChildStep();
b2.Call_();
b2.Name("introduceCompositeSequences");
b1.Resolver();
b2._Call();
b2._Path();
b2._QueryDeclaration();
b2.Call_();
b2.Name("resolveInclusions");
b1.Resolver();
b2._Call();
b2.Call_();
b2.Name("removeEmptyParticles");
b1.Resolver();
b2._Call();
b2.Path_(3);
b2.Call_();
b2.Name("bottomUp");
b1.Resolver();
b2._Call();
b2.Call_();
b2.Name("pullUpNamespaces");
b1.Resolver();
b2._Call();
b2.Call_();
b2.Name("applyDefaults");
b1.Resolver();
b2._Call();
b2._Path();
b2.Path_(4);
b2.FeatureStep("components");
b2.ChildStep();
b2.ChildStep();
b2.Call_();
b2.Name("introduceCompositeSequences");
b1.Resolver();
b2._Call();
b2._Path();
b2.SelfStep();
b2._Block();
b0._SimpleAction();
b1.Resolver();
b0.SimpleAction_();
b0.Label("Interpret");
b2.Block_(11);
b2.Filter_();
b1.SameStageFragment_();
b3.InvokeJavaClassMethod_();
b3.Text("get default strategy");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.XsdDeployStrategies");
b3.StringLiteral("getDefault()");
b1.Resolver();
b3._InvokeJavaClassMethod();
b1._SameStageFragment();
b2.VariableTest("deployStrategy");
b2._Filter();
b2.Filter_();
b1.SameStageFragment_();
b5.ObjectData((Object) null);
b1._SameStageFragment();
b2.VariableTest("lsResourceResolver");
b2._Filter();
b2.Path_(3);
b2.FeatureStep("directives");
b2.Filter_();
b2.ChildStep();
b2.And_(2);
b2.TypeTest("http://www.w3.org/2001/XMLSchema#Import");
b2.Or_(2);
b2.ExpressionTest_();
b2.Equals_();
b2.VariableRefStep("deployStrategy");
b2.StringLiteral("ALL");
b2._Equals();
b2._ExpressionTest();
b2.And_(2);
b2.ExpressionTest_();
b2.Equals_();
b2.VariableRefStep("deployStrategy");
b2.StringLiteral("MISSING");
b2._Equals();
b2._ExpressionTest();
b2.Not_();
b2.ExpressionTest_();
b2.Singleton_();
b1.SameStageFragment_();
b3.Sequence_();
b3.Text("retrive target schmea");
b3.FlowObjects_(2);
b3.InvokeJavaClassMethod_();
b3.Text("get XsdRegistry instance");
b3.Variable("schemaRegistry");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.resources.XsdRegistry");
b3.StringLiteral("instance()");
b1.Resolver();
b3._InvokeJavaClassMethod();
b3.InvokeJavaInstanceMethod_();
b3.Text("contains schema for namespace");
b1.Resolver();
b3.Variable("schemaRegistry");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.resources.XsdRegistry");
b3.StringLiteral("containsSchemaFor(java.lang.String)");
b3.Expressions_(1);
b1.SameStageFragment_();
b2.FeatureStep("namespace");
b1._SameStageFragment();
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b3._FlowObjects();
b3._Sequence();
b1._SameStageFragment();
b2._Singleton();
b2._ExpressionTest();
b2._Not();
b2._And();
b2._Or();
b2._And();
b2._Filter();
b1.SameStageFragment_();
b3.InvokeJavaClassMethod_();
b3.Text("deploy schema");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.util.SchemaUtils");
b3.StringLiteral("deploy(java.lang.String, java.lang.String, java.lang.String, org.whole.lang.xml.util.ResourceResolver)");
b3.Expressions_(4);
b1.SameStageFragment_();
b2.FeatureStep("namespace");
b1._SameStageFragment();
b1.SameStageFragment_();
b2.FeatureStep("schemaLocation");
b1._SameStageFragment();
b3.Variable("folderLocation");
b3.Variable("lsResourceResolver");
b3._Expressions();
b3._InvokeJavaClassMethod();
b1._SameStageFragment();
b2._Path();
b2.Filter_();
b2.StringLiteral("");
b2.VariableTest("fileLocationURI");
b2._Filter();
b2.Filter_();
b2.StringLiteral("");
b2.VariableTest("fileName");
b2._Filter();
b2.Path_(2);
b1.SameStageFragment_();
b3.Sequence_();
b3.Text("create an annotated copy of the schema");
b3.FlowObjects_(3);
b3.CreateJavaClassInstance_();
b3.Text("create a AnnotateXmlSchemaQuery factory");
b3.Variable("annotateXmlSchemaQueryFactory");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.AnnotateXmlSchemaQuery");
b3.StringLiteral("AnnotateXmlSchemaQuery()");
b1.Resolver();
b3._CreateJavaClassInstance();
b3.InvokeJavaInstanceMethod_();
b3.Text("create a AnnotateXmlSchemaQuery");
b3.Variable("annotateXmlSchema");
b3.Variable("annotateXmlSchemaQueryFactory");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.AnnotateXmlSchemaQuery");
b3.StringLiteral("create()");
b1.Resolver();
b3._InvokeJavaInstanceMethod();
b3.InvokeJavaClassMethod_();
b3.Text("clone self model");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.util.EntityUtils");
b3.StringLiteral("clone(org.whole.lang.model.IEntity)");
b3.Expressions_(1);
b3.Variable("self");
b3._Expressions();
b3._InvokeJavaClassMethod();
b3._FlowObjects();
b3._Sequence();
b1._SameStageFragment();
b2.Filter_();
b2.Call_();
b2.Name("annotateXmlSchema");
b1.Resolver();
b2._Call();
b2.VariableTest("annotatedSchema");
b2._Filter();
b2._Path();
b2.Filter_();
b2.BooleanLiteral(false);
b2.VariableTest("predeployed");
b2._Filter();
b1.SameStageFragment_();
b3.Sequence_();
b3.Text("update the schema registry with the annotated schema");
b3.FlowObjects_(2);
b3.InvokeJavaClassMethod_();
b3.Text("get an XsdRegistry instance");
b3.Variable("XsdRegistry");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.resources.XsdRegistry");
b3.StringLiteral("instance()");
b1.Resolver();
b3._InvokeJavaClassMethod();
b3.InvokeJavaInstanceMethod_();
b3.Text("update the XsdRegistry");
b1.Resolver();
b3.Variable("XsdRegistry");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.resources.XsdRegistry");
b3.StringLiteral("putSchema(java.lang.String, org.whole.lang.xsd.model.Schema, boolean)");
b3.Expressions_(3);
b3.Variable("fileLocationURI");
b3.Variable("annotatedSchema");
b3.Variable("predeployed");
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b3._FlowObjects();
b3._Sequence();
b1._SameStageFragment();
b1.SameStageFragment_();
b3.Sequence_();
b3.Text("istantiate the mapping query");
b3.FlowObjects_(2);
b3.CreateJavaClassInstance_();
b3.Text("create a AnnotatedXmlSchemaToModelsAndMappingQuery factory");
b3.Variable("annotatedXmlSchemaToModelsAndMappingQueryFactory");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.AnnotatedXmlSchemaToModelsAndMappingQuery");
b3.StringLiteral("AnnotatedXmlSchemaToModelsAndMappingQuery()");
b1.Resolver();
b3._CreateJavaClassInstance();
b3.InvokeJavaInstanceMethod_();
b3.Text("create a AnnotatedXmlSchemaToModelsAndMappingQuery");
b3.Variable("annotatedXmlSchemaToModelsAndMapping");
b3.Variable("annotatedXmlSchemaToModelsAndMappingQueryFactory");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.ModelToXmlSchemaQuery");
b3.StringLiteral("create()");
b1.Resolver();
b3._InvokeJavaInstanceMethod();
b3._FlowObjects();
b3._Sequence();
b1._SameStageFragment();
b2.Path_(3);
b2.VariableRefStep("annotatedSchema");
b2.Call_();
b2.Name("annotatedXmlSchemaToModelsAndMapping");
b1.Resolver();
b2._Call();
b2.Sequence_(2);
b2.Path_(2);
b2.Filter_();
b2.ChildStep();
b2.IndexTest_();
b2.IntLiteral(0);
b2._IndexTest();
b2._Filter();
b1.SameStageFragment_();
b3.InvokeOperation_();
b3.Text("interpret the model");
b3.Variable("self");
b3.Operation("INTERPRETER");
b1.Resolver();
b3._InvokeOperation();
b1._SameStageFragment();
b2._Path();
b2.Path_(2);
b2.Filter_();
b2.ChildStep();
b2.IndexTest_();
b2.IntLiteral(1);
b2._IndexTest();
b2._Filter();
b1.SameStageFragment_();
b3.InvokeOperation_();
b3.Text("interpret the mapping strategy");
b3.Variable("self");
b3.Operation("INTERPRETER");
b1.Resolver();
b3._InvokeOperation();
b1._SameStageFragment();
b2._Path();
b2._Sequence();
b2._Path();
b2.SelfStep();
b2._Block();
b0._SimpleAction();
b0.SimpleAction_();
b0.Label("Generate");
b2.Block_(10);
b2.Filter_();
b1.SameStageFragment_();
b3.InvokeJavaClassMethod_();
b3.Text("get default strategy");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.XsdDeployStrategies");
b3.StringLiteral("getDefault()");
b1.Resolver();
b3._InvokeJavaClassMethod();
b1._SameStageFragment();
b2.VariableTest("deployStrategy");
b2._Filter();
b2.Filter_();
b1.SameStageFragment_();
b5.ObjectData((Object) null);
b1._SameStageFragment();
b2.VariableTest("lsResourceResolver");
b2._Filter();
b2.Path_(3);
b2.FeatureStep("directives");
b2.Filter_();
b2.ChildStep();
b2.And_(2);
b2.TypeTest("http://www.w3.org/2001/XMLSchema#Import");
b2.Or_(2);
b2.ExpressionTest_();
b2.Equals_();
b2.VariableRefStep("deployStrategy");
b2.StringLiteral("ALL");
b2._Equals();
b2._ExpressionTest();
b2.And_(2);
b2.ExpressionTest_();
b2.Equals_();
b2.VariableRefStep("deployStrategy");
b2.StringLiteral("MISSING");
b2._Equals();
b2._ExpressionTest();
b2.Not_();
b2.ExpressionTest_();
b2.Singleton_();
b1.SameStageFragment_();
b3.Sequence_();
b3.Text("retrive target schmea");
b3.FlowObjects_(2);
b3.InvokeJavaClassMethod_();
b3.Text("get XsdRegistry instance");
b3.Variable("schemaRegistry");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.resources.XsdRegistry");
b3.StringLiteral("instance()");
b1.Resolver();
b3._InvokeJavaClassMethod();
b3.InvokeJavaInstanceMethod_();
b3.Text("contains schema for namespace");
b1.Resolver();
b3.Variable("schemaRegistry");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.resources.XsdRegistry");
b3.StringLiteral("containsSchemaFor(java.lang.String)");
b3.Expressions_(1);
b1.SameStageFragment_();
b2.FeatureStep("namespace");
b1._SameStageFragment();
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b3._FlowObjects();
b3._Sequence();
b1._SameStageFragment();
b2._Singleton();
b2._ExpressionTest();
b2._Not();
b2._And();
b2._Or();
b2._And();
b2._Filter();
b1.SameStageFragment_();
b3.InvokeJavaClassMethod_();
b3.Text("deploy schema");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.util.SchemaUtils");
b3.StringLiteral("deploy(java.lang.String, java.lang.String, java.lang.String, org.whole.lang.xml.util.ResourceResolver)");
b3.Expressions_(4);
b1.SameStageFragment_();
b2.FeatureStep("namespace");
b1._SameStageFragment();
b1.SameStageFragment_();
b2.FeatureStep("schemaLocation");
b1._SameStageFragment();
b3.Variable("folderLocation");
b3.Variable("lsResourceResolver");
b3._Expressions();
b3._InvokeJavaClassMethod();
b1._SameStageFragment();
b2._Path();
b2.Filter_();
b2.StringLiteral("");
b2.VariableTest("fileLocationURI");
b2._Filter();
b2.Filter_();
b2.StringLiteral("");
b2.VariableTest("fileName");
b2._Filter();
b2.Path_(2);
b1.SameStageFragment_();
b3.Sequence_();
b3.Text("create an annotated copy of the schema");
b3.FlowObjects_(3);
b3.CreateJavaClassInstance_();
b3.Text("create a AnnotateXmlSchemaQuery factory");
b3.Variable("annotateXmlSchemaQueryFactory");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.AnnotateXmlSchemaQuery");
b3.StringLiteral("AnnotateXmlSchemaQuery()");
b1.Resolver();
b3._CreateJavaClassInstance();
b3.InvokeJavaInstanceMethod_();
b3.Text("create a AnnotateXmlSchemaQuery");
b3.Variable("annotateXmlSchema");
b3.Variable("annotateXmlSchemaQueryFactory");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.AnnotateXmlSchemaQuery");
b3.StringLiteral("create()");
b1.Resolver();
b3._InvokeJavaInstanceMethod();
b3.InvokeJavaClassMethod_();
b3.Text("clone self model");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.util.EntityUtils");
b3.StringLiteral("clone(org.whole.lang.model.IEntity)");
b3.Expressions_(1);
b3.Variable("self");
b3._Expressions();
b3._InvokeJavaClassMethod();
b3._FlowObjects();
b3._Sequence();
b1._SameStageFragment();
b2.Filter_();
b2.Call_();
b2.Name("annotateXmlSchema");
b1.Resolver();
b2._Call();
b2.VariableTest("annotatedSchema");
b2._Filter();
b2._Path();
b1.SameStageFragment_();
b3.Sequence_();
b3.Text("update the schema registry with the annotated schema");
b3.FlowObjects_(2);
b3.InvokeJavaClassMethod_();
b3.Text("get an XsdRegistry instance");
b3.Variable("XsdRegistry");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.resources.XsdRegistry");
b3.StringLiteral("instance()");
b1.Resolver();
b3._InvokeJavaClassMethod();
b3.InvokeJavaInstanceMethod_();
b3.Text("update the XsdRegistry");
b1.Resolver();
b3.Variable("XsdRegistry");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.resources.XsdRegistry");
b3.StringLiteral("putSchema(java.lang.String, org.whole.lang.xsd.model.Schema)");
b3.Expressions_(2);
b3.Variable("fileLocationURI");
b3.Variable("annotatedSchema");
b3._Expressions();
b3._InvokeJavaInstanceMethod();
b3._FlowObjects();
b3._Sequence();
b1._SameStageFragment();
b1.SameStageFragment_();
b3.Sequence_();
b3.Text("istantiate the mapping query");
b3.FlowObjects_(2);
b3.CreateJavaClassInstance_();
b3.Text("create a AnnotatedXmlSchemaToModelsAndMappingQuery factory");
b3.Variable("annotatedXmlSchemaToModelsAndMappingQueryFactory");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.AnnotatedXmlSchemaToModelsAndMappingQuery");
b3.StringLiteral("AnnotatedXmlSchemaToModelsAndMappingQuery()");
b1.Resolver();
b3._CreateJavaClassInstance();
b3.InvokeJavaInstanceMethod_();
b3.Text("create a AnnotatedXmlSchemaToModelsAndMappingQuery");
b3.Variable("annotatedXmlSchemaToModelsAndMapping");
b3.Variable("annotatedXmlSchemaToModelsAndMappingQueryFactory");
b1.Resolver();
b3.StringLiteral("org.whole.lang.xsd.codebase.ModelToXmlSchemaQuery");
b3.StringLiteral("create()");
b1.Resolver();
b3._InvokeJavaInstanceMethod();
b3._FlowObjects();
b3._Sequence();
b1._SameStageFragment();
b2.Path_(3);
b2.VariableRefStep("annotatedSchema");
b2.Call_();
b2.Name("annotatedXmlSchemaToModelsAndMapping");
b1.Resolver();
b2._Call();
b2.Sequence_(2);
b2.Path_(2);
b2.Filter_();
b2.ChildStep();
b2.IndexTest_();
b2.IntLiteral(0);
b2._IndexTest();
b2._Filter();
b1.SameStageFragment_();
b3.InvokeOperation_();
b3.Text("generate the model");
b3.Variable("self");
b3.Operation("INTERPRETER");
b1.Resolver();
b3._InvokeOperation();
b1._SameStageFragment();
b2._Path();
b2.Path_(2);
b2.Filter_();
b2.ChildStep();
b2.IndexTest_();
b2.IntLiteral(1);
b2._IndexTest();
b2._Filter();
b1.SameStageFragment_();
b3.InvokeOperation_();
b3.Text("generate the mapping strategy");
b3.Variable("self");
b3.Operation("INTERPRETER");
b1.Resolver();
b3._InvokeOperation();
b1._SameStageFragment();
b2._Path();
b2._Sequence();
b2._Path();
b2.Select_();
b1.StageUpFragment_();
org.whole.lang.artifacts.builders.IArtifactsBuilder b7 = (org.whole.lang.artifacts.builders.IArtifactsBuilder) op.wGetBuilder(org.whole.lang.artifacts.reflect.ArtifactsLanguageKit.URI);
b7.Workspace_();
b1.Resolver();
b7.Projects_(1);
b7.Project_();
b1.Variable_();
b1.VarType("http://lang.whole.org/Artifacts#Name");
b1.VarName("projectName");
b1.Quantifier("!");
b1._Variable();
b7.Natures_(1);
b1.Resolver();
b7._Natures();
b1.Resolver();
b7.Artifacts_(1);
b7.FolderArtifact_();
b1.Variable_();
b1.VarType("http://lang.whole.org/Artifacts#Name");
b1.VarName("sourceFolderName");
b1.Quantifier("!");
b1._Variable();
b1.Resolver();
b7.Artifacts_(1);
b7.PackageArtifact_();
b1.Variable_();
b1.VarType("http://lang.whole.org/Artifacts#Name");
b1.VarName("packageName");
b1.Quantifier("!");
b1._Variable();
b1.Resolver();
b7.Artifacts_(2);
b7.FileArtifact_();
b7.NameWithExtension_();
b1.Variable_();
b1.VarType("http://lang.whole.org/Artifacts#Name");
b1.VarName("modelName");
b1.Quantifier("?");
b1._Variable();
b7.Extension("java");
b7._NameWithExtension();
b7.Metadata_();
b1.Resolver();
b1.Resolver();
b1.Resolver();
b1.Resolver();
b7.PersistenceKitId("org.whole.lang.java.codebase.JavaBuilderPersistenceKit");
b7._Metadata();
b1.StageUpFragment_();
b1.Variable_();
b1.VarType("http://lang.whole.org/Commons#Any");
b1.VarName("modelContents");
b1.Quantifier("?");
b1._Variable();
b1._StageUpFragment();
b7._FileArtifact();
b7.FileArtifact_();
b7.NameWithExtension_();
b1.Variable_();
b1.VarType("http://lang.whole.org/Artifacts#Name");
b1.VarName("mappingStrategyName");
b1.Quantifier("?");
b1._Variable();
b7.Extension("java");
b7._NameWithExtension();
b7.Metadata_();
b1.Resolver();
b1.Resolver();
b1.Resolver();
b1.Resolver();
b7.PersistenceKitId("org.whole.lang.java.codebase.JavaBuilderPersistenceKit");
b7._Metadata();
b1.StageUpFragment_();
b1.Variable_();
b1.VarType("http://lang.whole.org/Commons#Any");
b1.VarName("mappingStrategyContents");
b1.Quantifier("?");
b1._Variable();
b1._StageUpFragment();
b7._FileArtifact();
b7._Artifacts();
b7._PackageArtifact();
b7._Artifacts();
b7._FolderArtifact();
b7._Artifacts();
b1.Resolver();
b7._Project();
b7._Projects();
b7._Workspace();
b1._StageUpFragment();
b2.Path_(2);
b2.VariableRefStep("annotatedSchema");
b2.Call_();
b2.Name("annotatedXmlSchemaToModelsAndMapping");
b1.Resolver();
b2._Call();
b2._Path();
b2.Sequence_(5);
b2.Filter_();
b1.SameStageFragment_();
b3.InvokeJavaClassMethod_();
b3.Text("calculate base name from schema file name");
b1.Resolver();
b1.Resolver();
b3.StringLiteral("org.whole.lang.util.StringUtils");
b3.StringLiteral("toEntityName(java.lang.String)");
b3.Expressions_(1);
b3.Variable("fileName");
b3._Expressions();
b3._InvokeJavaClassMethod();
b1._SameStageFragment();
b2.VariableTest("baseFileName");
b2._Filter();
b2.Filter_();
b2.Addition_();
b2.VariableRefStep("baseFileName");
b2.StringLiteral("Model");
b2._Addition();
b2.VariableTest("modelName");
b2._Filter();
b2.Filter_();
b2.ChildStep();
b2.And_(2);
b2.IndexTest_();
b2.IntLiteral(0);
b2._IndexTest();
b2.VariableTest("modelContents");
b2._And();
b2._Filter();
b2.Filter_();
b2.Addition_();
b2.VariableRefStep("baseFileName");
b2.StringLiteral("MappingStrategy");
b2._Addition();
b2.VariableTest("mappingStrategyName");
b2._Filter();
b2.Filter_();
b2.ChildStep();
b2.And_(2);
b2.IndexTest_();
b2.IntLiteral(1);
b2._IndexTest();
b2.VariableTest("mappingStrategyContents");
b2._And();
b2._Filter();
b2._Sequence();
b2.TemplateNames();
b2._Select();
b2._Block();
b0._SimpleAction();
b0._ToolbarActions();
b0.ContextMenuActions_();
b0.MenuActions_(0);
b0._MenuActions();
b0.MenuActions_(0);
b0._MenuActions();
b0.MenuActions_(0);
b0._MenuActions();
b0.MenuActions_(0);
b0._MenuActions();
b0.MenuActions_(0);
b0._MenuActions();
b1.Resolver();
b0._ContextMenuActions();
b0._LanguageActionFactory();
}
}