Пример #1
0
    //this function is not used. it was originally intended to add params dynamically to the hashtable depending on the depth...
    protected void iterate(string xmlPath, string xslPath, XmlElement root, XmlNode nodeTarget, Hashtable xsltParams, string filePath)
    {
        XmlNodeList targets = nodeTarget.SelectNodes("options/option");

        foreach (XmlNode node in targets)
        {
            filePath = filePath + node.Attributes["value"].Value + "/";
            string content = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
            makeFile(filePath + "index.html", content);
            iterate(xmlPath, xslPath, root, root.SelectSingleNode("//*[@id = '" + node.Attributes["target"].Value + "']"), xsltParams, filePath);
        }
    }
Пример #2
0
    protected void Page_Init(object sender, EventArgs e)
    {
        string    xmlPath    = Server.MapPath("housing.xml");
        string    xslPath    = Server.MapPath("cla.xsl");
        Hashtable xsltParams = new Hashtable();

        // the following functions build each section in turn

        build(Server.MapPath("housing.xml"), xslPath, "housing");
        build(Server.MapPath("debt.xml"), xslPath, "debt");
        build(Server.MapPath("discrimination.xml"), xslPath, "discrimination");
        build(Server.MapPath("consumer.xml"), xslPath, "consumer");
        build(Server.MapPath("education.xml"), xslPath, "education");
        build(Server.MapPath("employment.xml"), xslPath, "employment");
        build(Server.MapPath("family.xml"), xslPath, "family");
        build(Server.MapPath("immigration.xml"), xslPath, "immigration");
        build(Server.MapPath("welfare.xml"), xslPath, "welfare");

        if (Context.Request.QueryString["id"] != null)
        {
            xsltParams.Add("id", Context.Request.QueryString["id"]);
        }
        else
        {
            xsltParams.Add("id", "index"); //will render pre-start page
        }

        if (Context.Request.QueryString["id1"] != null)
        {
            xsltParams.Add("id1", Context.Request.QueryString["id1"]);
        }
        if (Context.Request.QueryString["a1"] != null)
        {
            xsltParams.Add("a1", Context.Request.QueryString["a1"]);
        }
        if (Context.Request.QueryString["id2"] != null)
        {
            xsltParams.Add("id2", Context.Request.QueryString["id2"]);
        }
        if (Context.Request.QueryString["a2"] != null)
        {
            xsltParams.Add("a2", Context.Request.QueryString["a2"]);
        }
        if (Context.Request.QueryString["id3"] != null)
        {
            xsltParams.Add("id3", Context.Request.QueryString["id3"]);
        }
        if (Context.Request.QueryString["a3"] != null)
        {
            xsltParams.Add("a3", Context.Request.QueryString["a3"]);
        }
        if (Context.Request.QueryString["id4"] != null)
        {
            xsltParams.Add("id4", Context.Request.QueryString["id4"]);
        }
        if (Context.Request.QueryString["a4"] != null)
        {
            xsltParams.Add("a4", Context.Request.QueryString["a4"]);
        }
        if (Context.Request.QueryString["id5"] != null)
        {
            xsltParams.Add("id5", Context.Request.QueryString["id5"]);
        }
        if (Context.Request.QueryString["a5"] != null)
        {
            xsltParams.Add("a5", Context.Request.QueryString["a5"]);
        }
        if (Context.Request.QueryString["id6"] != null)
        {
            xsltParams.Add("id6", Context.Request.QueryString["id6"]);
        }
        if (Context.Request.QueryString["a6"] != null)
        {
            xsltParams.Add("a6", Context.Request.QueryString["a6"]);
        }
        if (Context.Request.QueryString["id7"] != null)
        {
            xsltParams.Add("id7", Context.Request.QueryString["id7"]);
        }
        if (Context.Request.QueryString["a7"] != null)
        {
            xsltParams.Add("a7", Context.Request.QueryString["a7"]);
        }
        if (Context.Request.QueryString["id8"] != null)
        {
            xsltParams.Add("id8", Context.Request.QueryString["id8"]);
        }
        if (Context.Request.QueryString["a8"] != null)
        {
            xsltParams.Add("a8", Context.Request.QueryString["a8"]);
        }
        if (Context.Request.QueryString["id9"] != null)
        {
            xsltParams.Add("id9", Context.Request.QueryString["id9"]);
        }
        if (Context.Request.QueryString["a9"] != null)
        {
            xsltParams.Add("a9", Context.Request.QueryString["a9"]);
        }
        if (Context.Request.QueryString["id10"] != null)
        {
            xsltParams.Add("id10", Context.Request.QueryString["id10"]);
        }
        if (Context.Request.QueryString["a10"] != null)
        {
            xsltParams.Add("a10", Context.Request.QueryString["a10"]);
        }
        if (Context.Request.QueryString["id11"] != null)
        {
            xsltParams.Add("id11", Context.Request.QueryString["id11"]);
        }
        if (Context.Request.QueryString["a11"] != null)
        {
            xsltParams.Add("a11", Context.Request.QueryString["a11"]);
        }
        if (Context.Request.QueryString["id12"] != null)
        {
            xsltParams.Add("id12", Context.Request.QueryString["id12"]);
        }
        if (Context.Request.QueryString["a12"] != null)
        {
            xsltParams.Add("a12", Context.Request.QueryString["a12"]);
        }
        if (Context.Request.QueryString["id13"] != null)
        {
            xsltParams.Add("id13", Context.Request.QueryString["id13"]);
        }
        if (Context.Request.QueryString["a13"] != null)
        {
            xsltParams.Add("a13", Context.Request.QueryString["a13"]);
        }
        if (Context.Request.QueryString["id14"] != null)
        {
            xsltParams.Add("id14", Context.Request.QueryString["id14"]);
        }
        if (Context.Request.QueryString["a14"] != null)
        {
            xsltParams.Add("a14", Context.Request.QueryString["a14"]);
        }
        if (Context.Request.QueryString["id15"] != null)
        {
            xsltParams.Add("id15", Context.Request.QueryString["id15"]);
        }
        if (Context.Request.QueryString["a15"] != null)
        {
            xsltParams.Add("a15", Context.Request.QueryString["a15"]);
        }

        //DO XSLT 2.0 TRANSFORM
        string result1 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");

        Response.Write(result1);
    }
Пример #3
0
    protected void build(string xmlPath, string xslPath, string filePathString)
    {
        string filePath = filePathString;

        Hashtable xsltParams = new Hashtable();

        xsltParams.Add("id", filePathString);
        xsltParams.Add("id1", "q1");

        string firstContent = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");

        makeFile(filePath + "/index.html", firstContent);

        XmlDocument doc = new XmlDocument();

        doc.Load(xmlPath);
        XmlElement root = doc.DocumentElement;

        XmlNode     Question1 = root.SelectSingleNode("//*[@id = 'q1']");
        XmlNodeList targets   = Question1.SelectNodes("options/option");

        foreach (XmlNode node in targets)
        {
            xsltParams.Clear();
            filePath = "/" + filePathString + "/" + node.Attributes["value"].Value + "/";
            string id1 = "q1";
            string a1  = node.Attributes["value"].Value;
            string id2 = node.Attributes["target"].Value;
            xsltParams.Add("id", filePathString);
            xsltParams.Add("id1", id1);
            xsltParams.Add("a1", a1);
            xsltParams.Add("id2", id2);
            string content = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
            makeFile(filePath + "index.html", content);

            XmlNode     Question2 = root.SelectSingleNode("//*[@id = '" + node.Attributes["target"].Value + "']");
            XmlNodeList targets2  = Question2.SelectNodes("options/option");
            foreach (XmlNode node2 in targets2)
            {
                xsltParams.Clear();
                string filePath2 = filePath + node2.Attributes["value"].Value + "/";
                string a2        = node2.Attributes["value"].Value;
                string id3       = node2.Attributes["target"].Value;
                xsltParams.Add("id", filePathString);
                xsltParams.Add("id1", id1);
                xsltParams.Add("a1", a1);
                xsltParams.Add("id2", id2);
                xsltParams.Add("a2", a2);
                xsltParams.Add("id3", id3);
                string content2 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                makeFile(filePath2 + "index.html", content2);

                XmlNode     Question3 = root.SelectSingleNode("//*[@id = '" + node2.Attributes["target"].Value + "']");
                XmlNodeList targets3  = Question3.SelectNodes("options/option");
                foreach (XmlNode node3 in targets3)
                {
                    xsltParams.Clear();
                    string filePath3 = filePath2 + node3.Attributes["value"].Value + "/";
                    string a3        = node3.Attributes["value"].Value;
                    string id4       = node3.Attributes["target"].Value;
                    xsltParams.Add("id", filePathString);
                    xsltParams.Add("id1", id1);
                    xsltParams.Add("a1", a1);
                    xsltParams.Add("id2", id2);
                    xsltParams.Add("a2", a2);
                    xsltParams.Add("id3", id3);
                    xsltParams.Add("a3", a3);
                    xsltParams.Add("id4", id4);
                    string content3 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                    makeFile(filePath3 + "index.html", content3);

                    XmlNode     Question4 = root.SelectSingleNode("//*[@id = '" + node3.Attributes["target"].Value + "']");
                    XmlNodeList targets4  = Question4.SelectNodes("options/option");
                    foreach (XmlNode node4 in targets4)
                    {
                        xsltParams.Clear();
                        string filePath4 = filePath3 + node4.Attributes["value"].Value + "/";
                        string a4        = node4.Attributes["value"].Value;
                        string id5       = node4.Attributes["target"].Value;
                        xsltParams.Add("id", filePathString);
                        xsltParams.Add("id1", id1);
                        xsltParams.Add("a1", a1);
                        xsltParams.Add("id2", id2);
                        xsltParams.Add("a2", a2);
                        xsltParams.Add("id3", id3);
                        xsltParams.Add("a3", a3);
                        xsltParams.Add("id4", id4);
                        xsltParams.Add("a4", a4);
                        xsltParams.Add("id5", id5);
                        string content4 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                        makeFile(filePath4 + "index.html", content4);

                        XmlNode     Question5 = root.SelectSingleNode("//*[@id = '" + node4.Attributes["target"].Value + "']");
                        XmlNodeList targets5  = Question5.SelectNodes("options/option");
                        foreach (XmlNode node5 in targets5)
                        {
                            xsltParams.Clear();
                            string filePath5 = filePath4 + node5.Attributes["value"].Value + "/";
                            string a5        = node5.Attributes["value"].Value;
                            string id6       = node5.Attributes["target"].Value;
                            xsltParams.Add("id", filePathString);
                            xsltParams.Add("id1", id1);
                            xsltParams.Add("a1", a1);
                            xsltParams.Add("id2", id2);
                            xsltParams.Add("a2", a2);
                            xsltParams.Add("id3", id3);
                            xsltParams.Add("a3", a3);
                            xsltParams.Add("id4", id4);
                            xsltParams.Add("a4", a4);
                            xsltParams.Add("id5", id5);
                            xsltParams.Add("a5", a5);
                            xsltParams.Add("id6", id6);
                            string content5 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                            makeFile(filePath5 + "index.html", content5);

                            XmlNode     Question6 = root.SelectSingleNode("//*[@id = '" + node5.Attributes["target"].Value + "']");
                            XmlNodeList targets6  = Question6.SelectNodes("options/option");
                            foreach (XmlNode node6 in targets6)
                            {
                                xsltParams.Clear();
                                string filePath6 = filePath5 + node6.Attributes["value"].Value + "/";
                                string a6        = node6.Attributes["value"].Value;
                                string id7       = node6.Attributes["target"].Value;
                                xsltParams.Add("id", filePathString);
                                xsltParams.Add("id1", id1);
                                xsltParams.Add("a1", a1);
                                xsltParams.Add("id2", id2);
                                xsltParams.Add("a2", a2);
                                xsltParams.Add("id3", id3);
                                xsltParams.Add("a3", a3);
                                xsltParams.Add("id4", id4);
                                xsltParams.Add("a4", a4);
                                xsltParams.Add("id5", id5);
                                xsltParams.Add("a5", a5);
                                xsltParams.Add("id6", id6);
                                xsltParams.Add("a6", a6);
                                xsltParams.Add("id7", id7);
                                string content6 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                makeFile(filePath6 + "index.html", content6);

                                XmlNode     Question7 = root.SelectSingleNode("//*[@id = '" + node6.Attributes["target"].Value + "']");
                                XmlNodeList targets7  = Question7.SelectNodes("options/option");
                                foreach (XmlNode node7 in targets7)
                                {
                                    xsltParams.Clear();
                                    string filePath7 = filePath6 + node7.Attributes["value"].Value + "/";
                                    string a7        = node7.Attributes["value"].Value;
                                    string id8       = node7.Attributes["target"].Value;
                                    xsltParams.Add("id", filePathString);
                                    xsltParams.Add("id1", id1);
                                    xsltParams.Add("a1", a1);
                                    xsltParams.Add("id2", id2);
                                    xsltParams.Add("a2", a2);
                                    xsltParams.Add("id3", id3);
                                    xsltParams.Add("a3", a3);
                                    xsltParams.Add("id4", id4);
                                    xsltParams.Add("a4", a4);
                                    xsltParams.Add("id5", id5);
                                    xsltParams.Add("a5", a5);
                                    xsltParams.Add("id6", id6);
                                    xsltParams.Add("a6", a6);
                                    xsltParams.Add("id7", id7);
                                    xsltParams.Add("a7", a7);
                                    xsltParams.Add("id8", id8);
                                    string content7 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                    makeFile(filePath7 + "index.html", content7);

                                    XmlNode     Question8 = root.SelectSingleNode("//*[@id = '" + node7.Attributes["target"].Value + "']");
                                    XmlNodeList targets8  = Question8.SelectNodes("options/option");
                                    foreach (XmlNode node8 in targets8)
                                    {
                                        xsltParams.Clear();
                                        string filePath8 = filePath7 + node8.Attributes["value"].Value + "/";
                                        string a8        = node8.Attributes["value"].Value;
                                        string id9       = node8.Attributes["target"].Value;
                                        xsltParams.Add("id", filePathString);
                                        xsltParams.Add("id1", id1);
                                        xsltParams.Add("a1", a1);
                                        xsltParams.Add("id2", id2);
                                        xsltParams.Add("a2", a2);
                                        xsltParams.Add("id3", id3);
                                        xsltParams.Add("a3", a3);
                                        xsltParams.Add("id4", id4);
                                        xsltParams.Add("a4", a4);
                                        xsltParams.Add("id5", id5);
                                        xsltParams.Add("a5", a5);
                                        xsltParams.Add("id6", id6);
                                        xsltParams.Add("a6", a6);
                                        xsltParams.Add("id7", id7);
                                        xsltParams.Add("a7", a7);
                                        xsltParams.Add("id8", id8);
                                        xsltParams.Add("a8", a8);
                                        xsltParams.Add("id9", id9);
                                        string content8 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                        makeFile(filePath8 + "index.html", content8);

                                        XmlNode     Question9 = root.SelectSingleNode("//*[@id = '" + node8.Attributes["target"].Value + "']");
                                        XmlNodeList targets9  = Question9.SelectNodes("options/option");
                                        foreach (XmlNode node9 in targets9)
                                        {
                                            xsltParams.Clear();
                                            string filePath9 = filePath8 + node9.Attributes["value"].Value + "/";
                                            string a9        = node9.Attributes["value"].Value;
                                            string id10      = node9.Attributes["target"].Value;
                                            xsltParams.Add("id", filePathString);
                                            xsltParams.Add("id1", id1);
                                            xsltParams.Add("a1", a1);
                                            xsltParams.Add("id2", id2);
                                            xsltParams.Add("a2", a2);
                                            xsltParams.Add("id3", id3);
                                            xsltParams.Add("a3", a3);
                                            xsltParams.Add("id4", id4);
                                            xsltParams.Add("a4", a4);
                                            xsltParams.Add("id5", id5);
                                            xsltParams.Add("a5", a5);
                                            xsltParams.Add("id6", id6);
                                            xsltParams.Add("a6", a6);
                                            xsltParams.Add("id7", id7);
                                            xsltParams.Add("a7", a7);
                                            xsltParams.Add("id8", id8);
                                            xsltParams.Add("a8", a8);
                                            xsltParams.Add("id9", id9);
                                            xsltParams.Add("a9", a9);
                                            xsltParams.Add("id10", id10);
                                            string content9 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                            makeFile(filePath9 + "index.html", content9);

                                            XmlNode     Question10 = root.SelectSingleNode("//*[@id = '" + node9.Attributes["target"].Value + "']");
                                            XmlNodeList targets10  = Question10.SelectNodes("options/option");
                                            foreach (XmlNode node10 in targets10)
                                            {
                                                xsltParams.Clear();
                                                string filePath10 = filePath9 + node10.Attributes["value"].Value + "/";
                                                string a10        = node10.Attributes["value"].Value;
                                                string id11       = node10.Attributes["target"].Value;
                                                xsltParams.Add("id", filePathString);
                                                xsltParams.Add("id1", id1);
                                                xsltParams.Add("a1", a1);
                                                xsltParams.Add("id2", id2);
                                                xsltParams.Add("a2", a2);
                                                xsltParams.Add("id3", id3);
                                                xsltParams.Add("a3", a3);
                                                xsltParams.Add("id4", id4);
                                                xsltParams.Add("a4", a4);
                                                xsltParams.Add("id5", id5);
                                                xsltParams.Add("a5", a5);
                                                xsltParams.Add("id6", id6);
                                                xsltParams.Add("a6", a6);
                                                xsltParams.Add("id7", id7);
                                                xsltParams.Add("a7", a7);
                                                xsltParams.Add("id8", id8);
                                                xsltParams.Add("a8", a8);
                                                xsltParams.Add("id9", id9);
                                                xsltParams.Add("a9", a9);
                                                xsltParams.Add("id10", id10);
                                                xsltParams.Add("a10", a10);
                                                xsltParams.Add("id11", id11);
                                                string content10 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                                makeFile(filePath10 + "index.html", content10);

                                                XmlNode     Question11 = root.SelectSingleNode("//*[@id = '" + node10.Attributes["target"].Value + "']");
                                                XmlNodeList targets11  = Question11.SelectNodes("options/option");
                                                foreach (XmlNode node11 in targets11)
                                                {
                                                    xsltParams.Clear();
                                                    string filePath11 = filePath10 + node11.Attributes["value"].Value + "/";
                                                    string a11        = node11.Attributes["value"].Value;
                                                    string id12       = node11.Attributes["target"].Value;
                                                    xsltParams.Add("id", filePathString);
                                                    xsltParams.Add("id1", id1);
                                                    xsltParams.Add("a1", a1);
                                                    xsltParams.Add("id2", id2);
                                                    xsltParams.Add("a2", a2);
                                                    xsltParams.Add("id3", id3);
                                                    xsltParams.Add("a3", a3);
                                                    xsltParams.Add("id4", id4);
                                                    xsltParams.Add("a4", a4);
                                                    xsltParams.Add("id5", id5);
                                                    xsltParams.Add("a5", a5);
                                                    xsltParams.Add("id6", id6);
                                                    xsltParams.Add("a6", a6);
                                                    xsltParams.Add("id7", id7);
                                                    xsltParams.Add("a7", a7);
                                                    xsltParams.Add("id8", id8);
                                                    xsltParams.Add("a8", a8);
                                                    xsltParams.Add("id9", id9);
                                                    xsltParams.Add("a9", a9);
                                                    xsltParams.Add("id10", id10);
                                                    xsltParams.Add("a10", a10);
                                                    xsltParams.Add("id11", id11);
                                                    xsltParams.Add("a11", a11);
                                                    xsltParams.Add("id12", id12);
                                                    string content11 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                                    makeFile(filePath11 + "index.html", content11);

                                                    XmlNode     Question12 = root.SelectSingleNode("//*[@id = '" + node11.Attributes["target"].Value + "']");
                                                    XmlNodeList targets12  = Question12.SelectNodes("options/option");
                                                    foreach (XmlNode node12 in targets12)
                                                    {
                                                        xsltParams.Clear();
                                                        string filePath12 = filePath11 + node12.Attributes["value"].Value + "/";
                                                        string a12        = node12.Attributes["value"].Value;
                                                        string id13       = node12.Attributes["target"].Value;
                                                        xsltParams.Add("id", filePathString);
                                                        xsltParams.Add("id1", id1);
                                                        xsltParams.Add("a1", a1);
                                                        xsltParams.Add("id2", id2);
                                                        xsltParams.Add("a2", a2);
                                                        xsltParams.Add("id3", id3);
                                                        xsltParams.Add("a3", a3);
                                                        xsltParams.Add("id4", id4);
                                                        xsltParams.Add("a4", a4);
                                                        xsltParams.Add("id5", id5);
                                                        xsltParams.Add("a5", a5);
                                                        xsltParams.Add("id6", id6);
                                                        xsltParams.Add("a6", a6);
                                                        xsltParams.Add("id7", id7);
                                                        xsltParams.Add("a7", a7);
                                                        xsltParams.Add("id8", id8);
                                                        xsltParams.Add("a8", a8);
                                                        xsltParams.Add("id9", id9);
                                                        xsltParams.Add("a9", a9);
                                                        xsltParams.Add("id10", id10);
                                                        xsltParams.Add("a10", a10);
                                                        xsltParams.Add("id11", id11);
                                                        xsltParams.Add("a11", a11);
                                                        xsltParams.Add("id12", id12);
                                                        xsltParams.Add("a12", a12);
                                                        xsltParams.Add("id13", id13);
                                                        string content12 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                                        makeFile(filePath12 + "index.html", content12);

                                                        XmlNode     Question13 = root.SelectSingleNode("//*[@id = '" + node12.Attributes["target"].Value + "']");
                                                        XmlNodeList targets13  = Question13.SelectNodes("options/option");
                                                        foreach (XmlNode node13 in targets13)
                                                        {
                                                            xsltParams.Clear();
                                                            string filePath13 = filePath12 + node13.Attributes["value"].Value + "/";
                                                            string a13        = node13.Attributes["value"].Value;
                                                            string id14       = node13.Attributes["target"].Value;
                                                            xsltParams.Add("id", filePathString);
                                                            xsltParams.Add("id1", id1);
                                                            xsltParams.Add("a1", a1);
                                                            xsltParams.Add("id2", id2);
                                                            xsltParams.Add("a2", a2);
                                                            xsltParams.Add("id3", id3);
                                                            xsltParams.Add("a3", a3);
                                                            xsltParams.Add("id4", id4);
                                                            xsltParams.Add("a4", a4);
                                                            xsltParams.Add("id5", id5);
                                                            xsltParams.Add("a5", a5);
                                                            xsltParams.Add("id6", id6);
                                                            xsltParams.Add("a6", a6);
                                                            xsltParams.Add("id7", id7);
                                                            xsltParams.Add("a7", a7);
                                                            xsltParams.Add("id8", id8);
                                                            xsltParams.Add("a8", a8);
                                                            xsltParams.Add("id9", id9);
                                                            xsltParams.Add("a9", a9);
                                                            xsltParams.Add("id10", id10);
                                                            xsltParams.Add("a10", a10);
                                                            xsltParams.Add("id11", id11);
                                                            xsltParams.Add("a11", a11);
                                                            xsltParams.Add("id12", id12);
                                                            xsltParams.Add("a12", a12);
                                                            xsltParams.Add("id13", id13);
                                                            xsltParams.Add("a13", a13);
                                                            xsltParams.Add("id14", id14);
                                                            string content13 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                                            makeFile(filePath13 + "index.html", content13);

                                                            XmlNode     Question14 = root.SelectSingleNode("//*[@id = '" + node13.Attributes["target"].Value + "']");
                                                            XmlNodeList targets14  = Question14.SelectNodes("options/option");
                                                            foreach (XmlNode node14 in targets14)
                                                            {
                                                                xsltParams.Clear();
                                                                string filePath14 = filePath13 + node14.Attributes["value"].Value + "/";
                                                                string a14        = node14.Attributes["value"].Value;
                                                                string id15       = node14.Attributes["target"].Value;
                                                                xsltParams.Add("id", filePathString);
                                                                xsltParams.Add("id1", id1);
                                                                xsltParams.Add("a1", a1);
                                                                xsltParams.Add("id2", id2);
                                                                xsltParams.Add("a2", a2);
                                                                xsltParams.Add("id3", id3);
                                                                xsltParams.Add("a3", a3);
                                                                xsltParams.Add("id4", id4);
                                                                xsltParams.Add("a4", a4);
                                                                xsltParams.Add("id5", id5);
                                                                xsltParams.Add("a5", a5);
                                                                xsltParams.Add("id6", id6);
                                                                xsltParams.Add("a6", a6);
                                                                xsltParams.Add("id7", id7);
                                                                xsltParams.Add("a7", a7);
                                                                xsltParams.Add("id8", id8);
                                                                xsltParams.Add("a8", a8);
                                                                xsltParams.Add("id9", id9);
                                                                xsltParams.Add("a9", a9);
                                                                xsltParams.Add("id10", id10);
                                                                xsltParams.Add("a10", a10);
                                                                xsltParams.Add("id11", id11);
                                                                xsltParams.Add("a11", a11);
                                                                xsltParams.Add("id12", id12);
                                                                xsltParams.Add("a12", a12);
                                                                xsltParams.Add("id13", id13);
                                                                xsltParams.Add("a13", a13);
                                                                xsltParams.Add("id14", id14);
                                                                xsltParams.Add("a14", a14);
                                                                xsltParams.Add("id15", id15);
                                                                string content14 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                                                makeFile(filePath14 + "index.html", content14);

                                                                XmlNode     Question15 = root.SelectSingleNode("//*[@id = '" + node14.Attributes["target"].Value + "']");
                                                                XmlNodeList targets15  = Question15.SelectNodes("options/option");
                                                                foreach (XmlNode node15 in targets15)
                                                                {
                                                                    xsltParams.Clear();
                                                                    string filePath15 = filePath14 + node15.Attributes["value"].Value + "/";
                                                                    string a15        = node15.Attributes["value"].Value;
                                                                    xsltParams.Add("id", filePathString);
                                                                    xsltParams.Add("id1", id1);
                                                                    xsltParams.Add("a1", a1);
                                                                    xsltParams.Add("id2", id2);
                                                                    xsltParams.Add("a2", a2);
                                                                    xsltParams.Add("id3", id3);
                                                                    xsltParams.Add("a3", a3);
                                                                    xsltParams.Add("id4", id4);
                                                                    xsltParams.Add("a4", a4);
                                                                    xsltParams.Add("id5", id5);
                                                                    xsltParams.Add("a5", a5);
                                                                    xsltParams.Add("id6", id6);
                                                                    xsltParams.Add("a6", a6);
                                                                    xsltParams.Add("id7", id7);
                                                                    xsltParams.Add("a7", a7);
                                                                    xsltParams.Add("id8", id8);
                                                                    xsltParams.Add("a8", a8);
                                                                    xsltParams.Add("id9", id9);
                                                                    xsltParams.Add("a9", a9);
                                                                    xsltParams.Add("id10", id10);
                                                                    xsltParams.Add("a10", a10);
                                                                    xsltParams.Add("id11", id11);
                                                                    xsltParams.Add("a11", a11);
                                                                    xsltParams.Add("id12", id12);
                                                                    xsltParams.Add("a12", a12);
                                                                    xsltParams.Add("id13", id13);
                                                                    xsltParams.Add("a13", a13);
                                                                    xsltParams.Add("id14", id14);
                                                                    xsltParams.Add("a14", a14);
                                                                    xsltParams.Add("id15", id15);
                                                                    xsltParams.Add("a15", a15);
                                                                    string content15 = XsltTransform.TransformXml2(xmlPath, xslPath, xsltParams, "screen");
                                                                    makeFile(filePath15 + "index.html", content15);
                                                                }
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }



            //iterate(xmlPath, xslPath, root, root.SelectSingleNode("//*[@id = '" + node.Attributes["target"].Value + "']"), xsltParams, filePath);
        }
    }