{"id":702,"date":"2012-04-06T05:45:27","date_gmt":"2012-04-06T13:45:27","guid":{"rendered":"http:\/\/seedcodenext.wordpress.com\/?p=702"},"modified":"2012-04-06T05:45:27","modified_gmt":"2012-04-06T13:45:27","slug":"filemaker-12-why-sql-context-independent","status":"publish","type":"post","link":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/","title":{"rendered":"FileMaker SQL: Why Use It? (Context Independent)"},"content":{"rendered":"<h2>FileMaker SQL: Simplify and Stay on Screen<\/h2>\n<p>FileMaker 12 lets us run SQL queries against our own FileMaker tables. This has been possible with plugins for a while and a number of serious devs like Mike Lee, Greg Lane, and Kevin Frank have been talking about what a great technique this is. I completely agree and think <span style=\"text-decoration: underline;\">the new ExecuteSQL calc function is <strong>the<\/strong> killer feature of FileMaker 12<\/span>.<\/p>\n<h2>Before SQL<\/h2>\n<p>There are a few reasons for this and I hope to get to write about more of them. But for now, consider the following simple script that checks to see if any records match a given ID:<\/p>\n<div class=\"lightbox\">\n<figure id=\"attachment_703\" aria-describedby=\"caption-attachment-703\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png\"><img fetchpriority=\"high\" decoding=\"async\" class=\"size-medium wp-image-703 \" title=\"BeforeScript\" alt=\"A script before FileMaker SQL\" src=\"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300\" width=\"300\" height=\"192\" \/><\/a><figcaption id=\"caption-attachment-703\" class=\"wp-caption-text\">Before SQL (click for a larger version)<\/figcaption><\/figure>\n<\/div>\n<p>There is nothing really wrong with this script and in fact it comes from our FileMaker 10 calendar. But look at all the work we have to do to make sure we&#8217;re <span style=\"color: #008000;\"><em>in the right context<\/em><\/span> to perform the find. We have to:<\/p>\n<ul>\n<li>Record our current context and find criteria<\/li>\n<li>Draw a new off-screen window<\/li>\n<li>Navigate to the new layout \/ context<\/li>\n<li>Execute our find, recording the outcome<\/li>\n<li>Close the off-screen window and return to our original context with the results<\/li>\n<\/ul>\n<p>Kind of complicated. And frustrating to debug as the action is happening off-screen.<\/p>\n<h2>After SQL<\/h2>\n<p>Now take a look at the same script in FileMaker 12:<\/p>\n<div class=\"lightbox\">\n<figure id=\"attachment_704\" aria-describedby=\"caption-attachment-704\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/afterscript.png\"><img decoding=\"async\" class=\"size-medium wp-image-704 \" title=\"AfterScript\" alt=\"A script after using FileMaker SQL\" src=\"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/afterscript.png?w=300\" width=\"300\" height=\"105\" \/><\/a><figcaption id=\"caption-attachment-704\" class=\"wp-caption-text\">SQL Version (click for a larger image)<\/figcaption><\/figure>\n<\/div>\n<p>Because the new ExecuteSQL calc function lets us search for records <span style=\"color: #008000;\"><em>independent of context<\/em><\/span>, we don&#8217;t need to manage layouts and windows. We can just ask FileMaker if the records exist. Fewer moving parts means simpler scripts, which means more stable solutions: no question about it.<\/p>\n<p>(For what it&#8217;s worth, we could have written that as just one line, putting the ExecuteSQL calc in the ExitScript result, but I find these things are easier to debug if you can look in the script debugger for $sc_Result before the script exits. That way, I can alter it right here if I need to.)<\/p>\n<h2>Learning SQL<\/h2>\n<p>FileMaker&#8217;s new ExecuteSQL function only accepts versions of the SELECT statement so there isn&#8217;t <em>that<\/em> much SQL to learn But it does support joins, union, and groupby, so if you already know your way around this stuff you&#8217;ll be rewarded. If you don&#8217;t, SeedCode will soon be releasing a <a href=\"\/filemaker-sql-explorer\/\">free tool<\/a> to help. (You&#8217;ll love it.) If you&#8217;re not getting our newsletter, <a href=\"\/newsletter-signup\/\" target=\"_blank\" rel=\"noopener\">sign up<\/a> here to be notified as soon as we ship.<\/p>\n<p><em>(Note: the <a href=\"\/filemaker-sql-explorer\/\">free SQL Explorer<\/a> is now available.)<\/em><\/p>\n<p>And if you&#8217;re wondering what you can possibly do with just the SELECT statement (which returns lists of matching data), think <a title=\"Virtual\u00a0List\" href=\"http:\/\/seedcodenext.wordpress.com\/2011\/11\/05\/virtual-list\/\">Virtual List<\/a> and stay tuned.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>FileMaker SQL: Simplify and Stay on Screen FileMaker 12 lets us run SQL queries against our own FileMaker tables. This has been possible with plugins for a while and a number of serious devs like Mike Lee, Greg Lane, and Kevin Frank have been talking about what a great technique this is. I completely agree and think the new ExecuteSQL calc function is the killer feature of FileMaker 12. Before SQL There are a few reasons for this and I hope to get to write about more of them. But for now, consider the following simple script that checks to see if any records match a given ID: There is nothing really wrong with this script and in fact it comes from our FileMaker 10 calendar. But look at all the work we have to do to make sure we&#8217;re in the right context to perform the find. We have to: Record our current context and find criteria Draw a new off-screen window Navigate to the new layout \/ context Execute our find, recording the outcome Close the off-screen window and return to our original context with the results Kind of complicated. And frustrating to debug as the action is happening off-screen. After SQL Now take a look at the same script in FileMaker 12: Because the new ExecuteSQL calc function lets us search for records independent of context, we don&#8217;t need to manage layouts and windows. We can just ask FileMaker if the records exist. Fewer moving parts means simpler scripts, which means more stable solutions: no question about it. (For what it&#8217;s worth, we could have written that as just one line, putting the ExecuteSQL calc in the ExitScript result, but I find these things are easier to debug if you can look in the script debugger for $sc_Result before the script exits. That way, I can alter it right here if I need to.) Learning SQL FileMaker&#8217;s new ExecuteSQL function only accepts versions of the SELECT statement so there isn&#8217;t that much SQL to learn But it does support joins, union, and groupby, so if you already know your way around this stuff you&#8217;ll be rewarded. If you don&#8217;t, SeedCode will soon be releasing a free tool to help. (You&#8217;ll love it.) If you&#8217;re not getting our newsletter, sign up here to be notified as soon as we ship. (Note: the free SQL Explorer is now available.) And if you&#8217;re wondering what you can possibly do with just the SELECT statement (which returns lists of matching data), think Virtual List and stay tuned.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[17,18],"class_list":["post-702","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-filemaker-12","tag-filemaker-sql"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>FileMaker SQL: Why Use It? (Context Independent) - SeedCode<\/title>\n<meta name=\"description\" content=\"FileMaker SQL: Overview. Links &amp; Resources. Starting in version 12, FileMaker lets us run SQL queries against our own FileMaker tables.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"FileMaker SQL: Why Use It? (Context Independent) - SeedCode\" \/>\n<meta property=\"og:description\" content=\"FileMaker SQL: Overview. Links &amp; Resources. Starting in version 12, FileMaker lets us run SQL queries against our own FileMaker tables.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/\" \/>\n<meta property=\"og:site_name\" content=\"SeedCode\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/seedcoder\" \/>\n<meta property=\"article:published_time\" content=\"2012-04-06T13:45:27+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300\" \/>\n<meta name=\"author\" content=\"seedcode\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dayback\" \/>\n<meta name=\"twitter:site\" content=\"@dayback\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"seedcode\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/\"},\"author\":{\"name\":\"seedcode\",\"@id\":\"https:\/\/seedcode.com\/#\/schema\/person\/af42f3f8cbfc8652fb0ffbb3f46f260f\"},\"headline\":\"FileMaker SQL: Why Use It? (Context Independent)\",\"datePublished\":\"2012-04-06T13:45:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/\"},\"wordCount\":467,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/seedcode.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300\",\"keywords\":[\"FileMaker 12\",\"FileMaker SQL\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/\",\"url\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/\",\"name\":\"FileMaker SQL: Why Use It? (Context Independent) - SeedCode\",\"isPartOf\":{\"@id\":\"https:\/\/seedcode.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300\",\"datePublished\":\"2012-04-06T13:45:27+00:00\",\"description\":\"FileMaker SQL: Overview. Links & Resources. Starting in version 12, FileMaker lets us run SQL queries against our own FileMaker tables.\",\"breadcrumb\":{\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#primaryimage\",\"url\":\"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300\",\"contentUrl\":\"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/seedcode.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"FileMaker SQL: Why Use It? (Context Independent)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/seedcode.com\/#website\",\"url\":\"https:\/\/seedcode.com\/\",\"name\":\"SeedCode\",\"description\":\"Build the Software You&#039;ve Always Wanted\",\"publisher\":{\"@id\":\"https:\/\/seedcode.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/seedcode.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/seedcode.com\/#organization\",\"name\":\"SeedCode\",\"url\":\"https:\/\/seedcode.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/seedcode.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/seedcode.com\/wp-content\/uploads\/2022\/12\/SeedCodeLogo.png\",\"contentUrl\":\"https:\/\/seedcode.com\/wp-content\/uploads\/2022\/12\/SeedCodeLogo.png\",\"width\":595,\"height\":189,\"caption\":\"SeedCode\"},\"image\":{\"@id\":\"https:\/\/seedcode.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/seedcoder\",\"https:\/\/x.com\/dayback\",\"https:\/\/www.linkedin.com\/company\/seedcode\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/seedcode.com\/#\/schema\/person\/af42f3f8cbfc8652fb0ffbb3f46f260f\",\"name\":\"seedcode\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/seedcode.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f0c386c5b845ee7fe111b36b2d87e983811f1f549682de9597a934b9dfd45469?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f0c386c5b845ee7fe111b36b2d87e983811f1f549682de9597a934b9dfd45469?s=96&d=mm&r=g\",\"caption\":\"seedcode\"},\"sameAs\":[\"https:\/\/seedcode.com\"],\"url\":\"https:\/\/seedcode.com\/author\/seedcode\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"FileMaker SQL: Why Use It? (Context Independent) - SeedCode","description":"FileMaker SQL: Overview. Links & Resources. Starting in version 12, FileMaker lets us run SQL queries against our own FileMaker tables.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/","og_locale":"en_US","og_type":"article","og_title":"FileMaker SQL: Why Use It? (Context Independent) - SeedCode","og_description":"FileMaker SQL: Overview. Links & Resources. Starting in version 12, FileMaker lets us run SQL queries against our own FileMaker tables.","og_url":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/","og_site_name":"SeedCode","article_publisher":"https:\/\/www.facebook.com\/seedcoder","article_published_time":"2012-04-06T13:45:27+00:00","og_image":[{"url":"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300","type":"","width":"","height":""}],"author":"seedcode","twitter_card":"summary_large_image","twitter_creator":"@dayback","twitter_site":"@dayback","twitter_misc":{"Written by":"seedcode","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#article","isPartOf":{"@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/"},"author":{"name":"seedcode","@id":"https:\/\/seedcode.com\/#\/schema\/person\/af42f3f8cbfc8652fb0ffbb3f46f260f"},"headline":"FileMaker SQL: Why Use It? (Context Independent)","datePublished":"2012-04-06T13:45:27+00:00","mainEntityOfPage":{"@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/"},"wordCount":467,"commentCount":2,"publisher":{"@id":"https:\/\/seedcode.com\/#organization"},"image":{"@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#primaryimage"},"thumbnailUrl":"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300","keywords":["FileMaker 12","FileMaker SQL"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/","url":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/","name":"FileMaker SQL: Why Use It? (Context Independent) - SeedCode","isPartOf":{"@id":"https:\/\/seedcode.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#primaryimage"},"image":{"@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#primaryimage"},"thumbnailUrl":"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300","datePublished":"2012-04-06T13:45:27+00:00","description":"FileMaker SQL: Overview. Links & Resources. Starting in version 12, FileMaker lets us run SQL queries against our own FileMaker tables.","breadcrumb":{"@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#primaryimage","url":"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300","contentUrl":"http:\/\/205.186.131.92\/wp-content\/uploads\/2012\/03\/beforescript.png?w=300"},{"@type":"BreadcrumbList","@id":"https:\/\/seedcode.com\/filemaker-12-why-sql-context-independent\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/seedcode.com\/"},{"@type":"ListItem","position":2,"name":"FileMaker SQL: Why Use It? (Context Independent)"}]},{"@type":"WebSite","@id":"https:\/\/seedcode.com\/#website","url":"https:\/\/seedcode.com\/","name":"SeedCode","description":"Build the Software You&#039;ve Always Wanted","publisher":{"@id":"https:\/\/seedcode.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/seedcode.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/seedcode.com\/#organization","name":"SeedCode","url":"https:\/\/seedcode.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/seedcode.com\/#\/schema\/logo\/image\/","url":"https:\/\/seedcode.com\/wp-content\/uploads\/2022\/12\/SeedCodeLogo.png","contentUrl":"https:\/\/seedcode.com\/wp-content\/uploads\/2022\/12\/SeedCodeLogo.png","width":595,"height":189,"caption":"SeedCode"},"image":{"@id":"https:\/\/seedcode.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/seedcoder","https:\/\/x.com\/dayback","https:\/\/www.linkedin.com\/company\/seedcode\/"]},{"@type":"Person","@id":"https:\/\/seedcode.com\/#\/schema\/person\/af42f3f8cbfc8652fb0ffbb3f46f260f","name":"seedcode","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/seedcode.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/f0c386c5b845ee7fe111b36b2d87e983811f1f549682de9597a934b9dfd45469?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f0c386c5b845ee7fe111b36b2d87e983811f1f549682de9597a934b9dfd45469?s=96&d=mm&r=g","caption":"seedcode"},"sameAs":["https:\/\/seedcode.com"],"url":"https:\/\/seedcode.com\/author\/seedcode\/"}]}},"_links":{"self":[{"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/posts\/702","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/comments?post=702"}],"version-history":[{"count":0,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/posts\/702\/revisions"}],"wp:attachment":[{"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/media?parent=702"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/categories?post=702"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/tags?post=702"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}