public void Process(Document input, Stage output)
        {
            input.Context.EnsureTarget(); // omdat er eerst plaatjes worden gegenereerd voorafgaand aan het document zelf.

            var generator = new ProfileTableGenerator(new ProfileKnowledgeProvider(input.Name, input.Context.Target.Directory));
            var profile = (Profile)FhirParser.ParseResourceFromXml(input.Text);
            Document result = input.CloneMetadata();
            var xmldoc = generator.Generate(profile, extensionsOnly: false);
            result.Text = xmldoc.ToString(SaveOptions.DisableFormatting);
            output.Post(result);
        }
예제 #2
0
        public void Process(Document input, Stage output)
        {
            input.Context.EnsureTarget(); // omdat er eerst plaatjes worden gegenereerd voorafgaand aan het document zelf.

            var      generator = new ProfileTableGenerator(new ProfileKnowledgeProvider(input.Name, input.Context.Target.Directory));
            var      profile   = (Profile)FhirParser.ParseResourceFromXml(input.Text);
            Document result    = input.CloneMetadata();
            var      xmldoc    = generator.Generate(profile, extensionsOnly: false);

            result.Text = xmldoc.ToString(SaveOptions.DisableFormatting);
            output.Post(result);
        }
예제 #3
0
        public void PublishLipidProfile()
        {
            //var profile = (Profile)FhirParser.ParseResourceFromXml(File.ReadAllText(@"TestData\lipid.profile.xml"));
            var profile = (Profile)FhirParser.ParseResourceFromXml(File.ReadAllText(@"TestData\profile.hvlabresult.xml"));
            var pkp = new ProfileKnowledgeProvider("hvlabres", @"c:\temp\dist\images");

            {
                var publisher = new ProfileTableGenerator(pkp);

                var result = File.ReadAllText(@"TestData\publish-header.cshtml");
                result += publisher.Generate(profile, false).ToString(System.Xml.Linq.SaveOptions.DisableFormatting);
                result += File.ReadAllText(@"TestData\publish-footer.cshtml");

                File.WriteAllText(@"c:\temp\publisher\" + pkp.GetLinkForProfileTable(profile), result);
            }

            {
                var publisher = new StructureGenerator(pkp);

                foreach (var structure in profile.Structure)
                {
                    var result = File.ReadAllText(@"TestData\publish-header.cshtml");
                    result += publisher.generateStructureTable(structure, false, profile)
                            .ToString(System.Xml.Linq.SaveOptions.DisableFormatting);
                    result += File.ReadAllText(@"TestData\publish-footer.cshtml");

                    File.WriteAllText(@"c:\temp\publisher\" + pkp.GetLinkForLocalStructure(profile, structure), result);
                }
            }

            {
                var dictgen = new DictHtmlGenerator(pkp);
                var result = File.ReadAllText(@"TestData\publish-header.cshtml");
                result += dictgen.Generate(profile)
                            .ToString(System.Xml.Linq.SaveOptions.DisableFormatting);
                result += File.ReadAllText(@"TestData\publish-footer.cshtml");

                File.WriteAllText(@"c:\temp\publisher\" + pkp.GetLinkForProfileDict(profile), result);
            }

            {
                var vs = (ValueSet)FhirParser.ParseResourceFromXml(File.ReadAllText(@"TestData\hv-laboratory-result-interpretation-v1.xml"));

                var vsGen = new ValueSetGenerator(pkp);

                var result = File.ReadAllText(@"TestData\publish-header.cshtml");
                result += vsGen.generate(vs)
                            .ToString(System.Xml.Linq.SaveOptions.DisableFormatting);
                result += File.ReadAllText(@"TestData\publish-footer.cshtml");

                File.WriteAllText(@"c:\temp\publisher\" + "hv-laboratory-result-interpretation-v1.html", result);
            }
        }
예제 #4
0
        public void PublishLipidProfile()
        {
            var source = new FileArtifactSource(true);
            var profile = (Profile)source.ReadResourceArtifact(new Uri("http://from.file/TestData/lipid.profile.xml"));

            var publisher = new ProfileTableGenerator(@"c:\temp\publisher", "test page", false);

            var result = File.ReadAllText(@"TestData\publish-header.xml");
            result += publisher.generate(profile, false).ToString(System.Xml.Linq.SaveOptions.DisableFormatting);
            result += File.ReadAllText(@"TestData\publish-footer.xml");

            File.WriteAllText(@"c:\temp\publisher\publisher.html",result);
        }