{"id":134,"date":"2008-04-18T09:11:00","date_gmt":"2008-04-18T09:11:00","guid":{"rendered":"\/lisa\/post\/2008\/04\/18\/YAPS-(Yet-another-postscript)-on-Custom-Excel-for-RS.aspx"},"modified":"2008-04-18T09:11:00","modified_gmt":"2008-04-18T09:11:00","slug":"yaps-yet-another-postscript-on-custom-excel-for-rs","status":"publish","type":"post","link":"https:\/\/spacefold.com\/lisa\/2008\/04\/18\/yaps-yet-another-postscript-on-custom-excel-for-rs\/","title":{"rendered":"YAPS (Yet another postscript) on Custom Excel for RS"},"content":{"rendered":"<p>\nI really can&#39;t believe I&#39;m revisiting this subject&#8230; I thought I was <a href=\"\/lisa\/2008\/03\/22\/Another-postscript-to-QnD-Excel-in-RS-post\/\" title=\"Another postscript to to QnD Excel in RS\">done with it<\/a>&nbsp;&#8230; but this is worth saying because it&#39;s helpful to anybody generating SSML (Excel 2003 XML dialect) whether they are interested in RS or not.&nbsp; I also can&#39;t believe I never figured this out before &#8212; because I generate a <em>lot<\/em> of SSML, for all kinds of custom reports.\n<\/p>\n<p>\nSo last time I said this&nbsp;\n<\/p>\n<p class=\"NB\">\n[&#8230;] It also happens to be a situation, alluded to in my&nbsp;walkthrough,&nbsp;where you have to be careful that your dynamically-driven tab names are actually <em>legal<\/em> tab names in Excel.&nbsp; In this case, I used the following code to validate and change the tab names if necessary: <\/p>\n<p><span style=\"color: #0000ff\">&lt;<\/span><span style=\"color: #ac306d\">xsl:template <\/span><span style=\"color: #d00020\">name=<\/span><span style=\"color: #000090\">&quot;StripSheetName&quot;<\/span><span style=\"color: #0000ff\">&gt;<br \/>\n<\/span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #0000ff\">&lt;<\/span><span style=\"color: #ac306d\">xsl:param <\/span><span style=\"color: #d00020\">name=<\/span><span style=\"color: #000090\">&quot;item&quot;<\/span><span style=\"color: #d00020\">\/<\/span><span style=\"color: #0000ff\">&gt;<br \/>\n<\/span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #0000ff\">&lt;<\/span><span style=\"color: #ac306d\">xsl:variable <\/span><span style=\"color: #d00020\">name=<\/span><span style=\"color: #000090\">&quot;i1&quot;<\/span><span style=\"color: #0000ff\">&gt;<br \/>\n<\/span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #0000ff\">&lt;<\/span><span style=\"color: #ac306d\">xsl:value-of <\/span><span style=\"color: #d00020\">select=<\/span><span style=\"color: #000090\">&quot;translate($item,&#39;&amp;quot;&ldquo;&rdquo;&#39;,&#39;&#39;)&quot;<\/span><span style=\"color: #d00020\">\/<\/span><span style=\"color: #0000ff\">&gt;<br \/>\n<\/span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #0000ff\">&lt;<\/span><span style=\"color: #ac306d\">\/xsl:variable<\/span><span style=\"color: #0000ff\">&gt;<br \/>\n<\/span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #0000ff\">&lt;<\/span><span style=\"color: #ac306d\">xsl:value-of <\/span><span style=\"color: #d00020\">select=<\/span><span style=\"color: #000090\">&quot;translate($i1,&amp;quot;\/\\&#39;&amp;quot;,&amp;quot;&amp;quot;)&quot;<\/span><span style=\"color: #d00020\">\/<\/span><span style=\"color: #0000ff\">&gt;<br \/>\n<\/span><span style=\"color: #0000ff\">&lt;<\/span><span style=\"color: #ac306d\">\/xsl:template<\/span><span style=\"color: #0000ff\">&gt;<\/span> <\/p>\n<p>&#8230; looks a bit wierd and it may not turn out to be sufficient, but basically all I&#39;m doing is taking out characters I know to be illegal.&nbsp; If I find more, I&#39;ll add more.\n<\/p>\n<p>\nGuess what?&nbsp; It didn&#39;t turn out to be sufficient.&nbsp;\n<\/p>\n<p>\nThe items I&#39;m using for tab names in this report are particularly long and (who knew?) Excel has a tab name limit of 31 characters.&nbsp;Before you ask, it&#39;s not in the <a href=\"http:\/\/office.microsoft.com\/en-us\/excel\/HP051992911033.aspx?pid=CH062527721033\" target=\"_blank\" title=\"MS Office Excel specifications and limits\" rel=\"noopener\">Excel specifications and limits<\/a> page as far as I can see.&nbsp;\n<\/p>\n<p>\nAlso before you ask I figured out the exact number by typing <strong>1234512345123451234512345123451<\/strong> into a tab.&nbsp; That last &quot;1&quot; is the last character Excel will let you type.&nbsp; If anybody has a better source of information, I&#39;m all ears.\n<\/p>\n<p>\nSo, I smartened up the template you see above a little bit.&nbsp; In this particular workbook, we&#39;re adding some verbiage onto the end of entries for each tab, which you&#39;ll see referenced; other than that, you may be able to use this puppy.&nbsp;\n<\/p>\n<p>\nI&#39;m&nbsp;stripping blank spaces out to conserve some tablength room in this version; this isn&#39;t required, because spaces are allowed in&nbsp;tab names, but I was trying to save some room for more meaningful content.&nbsp;&nbsp; You&#39;ll also notice a use of&nbsp;two dots (&quot;..&quot;) wherever I&#39;m truncating a tab name, and your strategy might be slightly different&#8230;&nbsp;\n<\/p>\n<p>\nIn any case, all-in-all,&nbsp;something like this should work for you.\n<\/p>\n<p class=\"code\">\n&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:template <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">name=<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;StripSheetName&quot;<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font><br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:param <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">name=<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;item&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">\/<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:param <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">name =<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;secondTable&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">\/<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp; &lt;!&#8211; get rid of smart quote and quote marks, not allowed <br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; and remove spaces too, to save room &#8211;&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:variable <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">name=<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;i1&quot;<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:value-of <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">select=<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;translate($item,&#39; &amp;quot;&ldquo;&rdquo;&#39;,&#39;&#39;)&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">\/<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">\/xsl:variable<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp; &lt;!&#8211; get rid of other disallowed characters, including <br \/>\n&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; single-quote (apostrophe) &#8211;&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:variable <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">name=<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;i2&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\"> select=<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;translate($i1,&amp;quot;\/\\&#39;&amp;quot;,&amp;quot;&amp;quot;)&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">\/<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font><br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:variable <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">name=<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;i3&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\"> <\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:choose<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:when <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">test=<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;string-length($i2) &amp;gt; 20&quot;<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!&#8211;&nbsp;truncate, leaving enough spare room for suffix,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;and add dots &#8211;&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:value-of <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">select =<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;concat(substring($i2,1,18),&#39;..&#39;)&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">\/<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">\/xsl:when<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:otherwise<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:value-of <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">select =<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;$i2&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">\/<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">\/xsl:otherwise<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">\/xsl:choose<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">\/xsl:variable<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<br \/>\n<\/span><br \/>\n&nbsp;&nbsp;&nbsp; &lt;!&#8211; add appropriate suffix for this tab &#8211;&gt;<br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:choose<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:when <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">test =<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;$secondTable&quot;<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:value-of <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">select =<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;concat($i3,&#39;ByActivity&#39;)&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">\/<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">\/xsl:when<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:otherwise<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">xsl:value-of <\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">select =<\/font><\/span><span class=\"c5M9S0\"><font color=\"#000090\">&quot;concat($i3,&#39;ByCategory&#39;)&quot;<\/font><\/span><span class=\"c18YC0\"><font color=\"#d00020\">\/<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">\/xsl:otherwise<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">\/xsl:choose<\/font><\/span><font color=\"#0000ff\"><span class=\"c9Y6TC\">&gt;<\/span><br \/>\n<\/font><br \/>\n&nbsp;&nbsp;&nbsp;<span class=\"c9Y6TC\"><font color=\"#0000ff\">&lt;<\/font><\/span><span class=\"c49DIK\"><font color=\"#ac306d\">\/xsl:template<\/font><\/span><span class=\"c9Y6TC\"><font color=\"#0000ff\">&gt;<\/font><\/span>\n<\/p>\n<p>\n&nbsp;\n<\/p>\n<p>\nAlso before you ask: what you see up there with escaped characters is correct (for example where you see &amp;gt; (for greater than, in XSLT) that&#39;s not an error of HTML formatting.&nbsp;\n<\/p>\n<p>\nThe parts that look especially weird come from explicitly specifying delimiters, such as quotation marks, as string literals, but this really does work, and you may really need to do it now and again.\n<\/p>\n<p>\nEnjoy&#8230; and god bless Excel and all its peculiarities &lt;sob&gt;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I really can&#39;t believe I&#39;m revisiting this subject&#8230; I thought I was done with it&nbsp;&#8230; but this is worth saying because it&#39;s helpful to anybody generating SSML (Excel 2003 XML dialect) whether they are interested in RS or not.&nbsp; I also can&#39;t believe I never figured this out before &#8212; because I generate a lot<a class=\"more-link\" href=\"https:\/\/spacefold.com\/lisa\/2008\/04\/18\/yaps-yet-another-postscript-on-custom-excel-for-rs\/\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,5,10],"tags":[],"class_list":["post-134","post","type-post","status-publish","format-standard","hentry","category-asp-net","category-reporting","category-xml-xslt"],"_links":{"self":[{"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/posts\/134","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/comments?post=134"}],"version-history":[{"count":0,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/posts\/134\/revisions"}],"wp:attachment":[{"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/media?parent=134"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/categories?post=134"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/tags?post=134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}