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(); } }