{"id":55000340,"date":"2017-10-01T00:00:00","date_gmt":"2020-01-24T15:59:44","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=340"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Formularpositionen_lesen_und_setzen","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html","title":{"rendered":"Formularpositionen lesen und setzen"},"content":{"rendered":"<p class='introduction'>Die Position der Formulare Ihrer Datenbank wird normalerweise nur &uuml;ber die Eigenschaft Automatisch zentrieren eingestellt, was dazu f&uuml;hrt, dass ein Formular direkt in der Mitte des Access-Fensters ge&ouml;ffnet wird. Wenn Sie weitergehende Anspr&uuml;che haben, k&ouml;nnen Sie die genaue Position von Formularen nicht nur ermitteln, sondern diese auch setzen. Dieser Artikel zeigt die Funktionen, mit denen Sie dies realisieren k&ouml;nnen.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels finden Sie in der Datenbank <b>1611_FormularePositionieren.accdb<\/b>.<\/p>\n<h2>Formularpositionen lesen<\/h2>\n<p>Wenn Sie die Position eines Formulars lesen wollen, k&ouml;nnen damit verschiedene Positionen gemeint sein: Die absolute Position auf dem Desktop oder die Position innerhalb des Access-Fenster oder auch die Position innerhalb der Arbeitsfl&auml;che im Access-Fenster, also des Bereichs ohne Rahmen, Ribbon und Navigationsbereich.<\/p>\n<p>Um diese Werte zu ermitteln und damit zu experimentieren, legen wir ein neues Formular an, das wie in Bild 1 aussieht und acht Textfelder f&uuml;r die Ausgabe der verschiedenen Werte bereitstellt.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_340_001.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_340_001.png\" alt=\"Formular zur Anzeige der aktuellen Abmessungen des Formulars und des Access-Fensters\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Formular zur Anzeige der aktuellen Abmessungen des Formulars und des Access-Fensters<\/p>\n<p>Nun fehle nur noch einige Zeilen VBA-Code, gew&uuml;rzt mit einigen API-Funktionen, um diese Textfelder zu f&uuml;llen &#8211; optimalerweise im regelm&auml;&szlig;igen Abstand, damit Sie gleich beim Ziehen oder Anpassen der Gr&ouml;&szlig;e von Access-Fenster und dem Formular live die aktuellen Werte angezeigt bekommen.<\/p>\n<h2>Access-Fenster und Formular<\/h2>\n<p>Wenn wir die Position eines Formulars ermitteln wollen, k&ouml;nnen wir diese direkt relativ zum Bildschirmrand ermitteln oder relativ zum Rand des Access-Fensters.<\/p>\n<p>Wenn Sie den Abstand zum Rand des Access-Fensters ermitteln wollen, geht dies nicht direkt, sondern wir m&uuml;ssen dann den Abstand des Formulars zum Bildschirmrand ermitteln und dann den Abstand des Access-Fensters vom Bildschirmrand abziehen. <\/p>\n<h2>Funktion zum Ermitteln Daten des Access-Fensters<\/h2>\n<p>Also programmieren wir zun&auml;chst eine Funktion, welche die Koordinaten des Access-Fensters ermittelt. Diese sieht wie in Listing 1 aus. Diese Funktion namens <b>GetMainWindowPosition<\/b> enth&auml;lt vier Parameter namens <b>sngLeft, sngTop<\/b>, <b>sngWidth <\/b>und <b>sngHeight<\/b>.<\/p>\n<pre><span style=\"color:blue;\">Public Function <\/span>GetMainWindowPosition(sngLeft<span style=\"color:blue;\"> As Single<\/span>, sngTop<span style=\"color:blue;\"> As Single<\/span>, sngWidth<span style=\"color:blue;\"> As Single<\/span>, sngHeight<span style=\"color:blue;\"> As Single<\/span>)\r\n     <span style=\"color:blue;\">Dim <\/span>rectMainWindow<span style=\"color:blue;\"> As <\/span>Rect\r\n     GetWindowRect Application.hWndAccessApp, rectMainWindow\r\n     sngLeft = rectMainWindow.Left\r\n     sngTop = rectMainWindow.Top\r\n     sngWidth = rectMainWindow.<span style=\"color:blue;\">Right<\/span> - rectMainWindow.Left\r\n     sngHeight = rectMainWindow.Bottom - rectMainWindow.Top\r\n<span style=\"color:blue;\">End Function<\/span><\/pre>\n<p class='imagetext'>Listing 1: Diese Funktion ermittelt die Koordinaten der Position des Access-Hauptfensters.<\/p>\n<p>Diesen m&uuml;ssen Sie beim Aufruf vier entsprechende Parameter &uuml;bergeben, die dann gef&uuml;llt werden. Dies sieht in einer kleinen Beispielprozedur etwa wie in Listing 2 aus.<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>Test_GetMainWindowPosition()\r\n     <span style=\"color:blue;\">Dim <\/span>sngLeft<span style=\"color:blue;\"> As Single<\/span>\r\n     <span style=\"color:blue;\">Dim <\/span>sngTop<span style=\"color:blue;\"> As Single<\/span>\r\n     <span style=\"color:blue;\">Dim <\/span>sngWidth<span style=\"color:blue;\"> As Single<\/span>\r\n     <span style=\"color:blue;\">Dim <\/span>sngHeight<span style=\"color:blue;\"> As Single<\/span>\r\n     GetMainWindowPosition sngLeft, sngTop, sngWidth, sngHeight\r\n     <span style=\"color:blue;\">MsgBox<\/span> \"Aktuelle Position und Gr&ouml;&szlig;e des Access-Fensters:\" & <span style=\"color:blue;\">vbCrLf<\/span> & \"Links: \" & sngLeft & <span style=\"color:blue;\">vbCrLf<\/span> & \"Oben: \" & sngTop _\r\n         & <span style=\"color:blue;\">vbCrLf<\/span> & \"Breite: \" & sngWidth & <span style=\"color:blue;\">vbCrLf<\/span> & \"H&ouml;he: \" & sngHeight\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p class='imagetext'>Listing 2: Prozedur mit einem Beispielaufruf der Funktion GetMainWindowPosition<\/p>\n<p>Das Ergebnis kommt wie in Bild 2 in Form eines Meldungsfensters. Die Funktion <b>GetMainWindowPosition<\/b>, die wir &uuml;brigens im Standardmodul <b>mdlKoordinaten <\/b>hinterlegt haben, deklariert zun&auml;chst eine Variable des Typs <b>Rect<\/b>.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_340_002.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_340_002.png\" alt=\"Test der Funktion zum Ermitteln von Position und Gr&ouml;&szlig;e des Access-Fensters\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 2: Test der Funktion zum Ermitteln von Position und Gr&ouml;&szlig;e des Access-Fensters<\/p>\n<p>Diesen Typ m&uuml;ssen Sie zun&auml;chst noch deklarieren, was wie folgt aussieht:<\/p>\n<pre><span style=\"color:blue;\">Public Type<\/span> Rect\r\n    Left<span style=\"color:blue;\"> As Long<\/span>\r\n    Top<span style=\"color:blue;\"> As Long<\/span>\r\n    Right<span style=\"color:blue;\"> As Long<\/span>\r\n    Bottom<span style=\"color:blue;\"> As Long<\/span>\r\n<span style=\"color:blue;\">End Type<\/span><\/pre>\n<p>Diesem benutzerdefinierten Typ k&ouml;nnen Sie Werte &uuml;ber die Punkt-Syntax zuweisen, wie Sie gleich sehen werden. Einen solchen benutzerdefinierten Typ ben&ouml;tigen wir, um Daten mit API-Funktionen auszutauschen. Eine solche verwenden wir n&auml;mlich gleich in der ersten Anweisung der Funktion, n&auml;mlich <b>GetWindowRect<\/b>. Diese muss ebenfalls zuerst noch per Deklaration verf&uuml;gbar gemacht werden:<\/p>\n<pre><span style=\"color:blue;\">Public <\/span>Declare Function GetWindowRect Lib \"user32\" (ByVal hWnd<span style=\"color:blue;\"> As Long<\/span>, lpRect<span style=\"color:blue;\"> As <\/span>Rect)<span style=\"color:blue;\"> As Long<\/span><\/pre>\n<p>Nun kann die Funktion die API-Funktion nutzen und dieser mit <b>Application.hWndAccessApp <\/b>ein Handle auf die aktuelle Access-Anwendung sowie die noch leere Variable <b>rectMainWindow <\/b>des Typs <b>Rect <\/b>&uuml;bergeben. Diese wird dann gef&uuml;llt. Die vier Werte des Typs <b>rectMainWindow <\/b>&uuml;bergeben wir dann an die R&uuml;ckgabeparameter der Funktion &#8211; zum Beispiel so:<\/p>\n<pre>sngLeft = rectMainWindow.Left<\/pre>\n<h2>Funktion zum Ermitteln der Daten eines Formulars<\/h2>\n<p>Damit kommen wir zur zweiten Funktion namens <b>GetFormPosition<\/b> (siehe Listing 3). Diese erwartet einen Parameter mehr als die vorherige Funktion. Dabei handelt es sich um einen Verweis auf das Formular, das untersucht werden soll. Die Funktion soll die Position des Formulars innerhalb des Access-Fensters zur&uuml;ckgeben. Dazu verwenden wir wieder die bereits weiter oben vorgestellte API-Funktion <b>GetWindowRect<\/b>, und zwar direkt zwei Mal. Beim ersten Mal ermitteln wir die Koordinaten des Formulars, das wir mit der Eigenschaft <b>hWnd <\/b>des Formulars als Handle referenzieren, und speichern diese im Typ <b>rectForm<\/b>. Der zweite Einsatz liefert mit dem Typ <b>rectParent<\/b> die Koordinaten des Hauptfensters.<\/p>\n<pre><span style=\"color:blue;\">Public Function <\/span>GetFormPosition(frm<span style=\"color:blue;\"> As <\/span>Form, sngLeft<span style=\"color:blue;\"> As Single<\/span>, sngTop<span style=\"color:blue;\"> As Single<\/span>, sngWidth<span style=\"color:blue;\"> As Single<\/span>, sngHeight<span style=\"color:blue;\"> As Single<\/span>)\r\n     <span style=\"color:blue;\">Dim <\/span>rectForm<span style=\"color:blue;\"> As <\/span>Rect\r\n     <span style=\"color:blue;\">Dim <\/span>rectParent<span style=\"color:blue;\"> As <\/span>Rect\r\n     GetWindowRect frm.hWnd, rectForm\r\n     GetWindowRect Application.hWndAccessApp, rectParent\r\n     sngLeft = rectForm.Left - rectParent.Left\r\n     sngTop = rectForm.Top - rectParent.Top\r\n     sngWidth = rectForm.<span style=\"color:blue;\">Right<\/span> - rectForm.Left\r\n     sngHeight = rectForm.Bottom - rectForm.Top\r\n<span style=\"color:blue;\">End Function<\/span><\/pre>\n<p class='imagetext'>Listing 3: Diese Funktion ermittelt die Koordinaten der Position eines Formulars relativ zum Access-Hauptfenster.<\/p>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000;\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000;\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Access &#091;basics&#093;<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/shop.minhorst.com\/magazine\/282\/access-basics?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000;\">Danach greifen Sie sofort auf <strong>alle rund 400 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000;\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000340\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Password<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/index.php\/data\/wp\/v2\/posts\/55000340?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000340\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"a4912ba1e1\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die Position der Formulare Ihrer Datenbank wird normalerweise nur &uuml;ber die Eigenschaft Automatisch zentrieren eingestellt, was dazu f&uuml;hrt, dass ein Formular direkt in der Mitte des Access-Fensters ge&ouml;ffnet wird. Wenn Sie weitergehende Anspr&uuml;che haben, k&ouml;nnen Sie die genaue Position von Formularen nicht nur ermitteln, sondern diese auch setzen. Dieser Artikel zeigt die Funktionen, mit denen Sie dies realisieren k&ouml;nnen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[66112016,662016,44000004,44000010],"tags":[],"class_list":["post-55000340","post","type-post","status-publish","format-standard","hentry","category-66112016","category-662016","category-Formulare_fuer_die_Dateneingabe","category-Formulare_mit_VBA_programmieren"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v15.9.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Formularpositionen lesen und setzen - Access [basics]<\/title>\n<meta name=\"description\" content=\"Die Position der Formulare Ihrer Datenbank wird normalerweise nur \u00fcber die Eigenschaft Automatisch zentrieren eingestellt, was dazu f\u00fchrt, dass ein Formular direkt in der Mitte des Access-Fensters ge\u00f6ffnet wird. Wenn Sie weitergehende Anspr\u00fcche haben, k\u00f6nnen Sie die genaue Position von Formularen nicht nur ermitteln, sondern diese auch setzen. Dieser Artikel zeigt die Funktionen, mit denen Sie dies realisieren k\u00f6nnen.\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Formularpositionen lesen und setzen - Access [basics]\" \/>\n<meta property=\"og:description\" content=\"Die Position der Formulare Ihrer Datenbank wird normalerweise nur \u00fcber die Eigenschaft Automatisch zentrieren eingestellt, was dazu f\u00fchrt, dass ein Formular direkt in der Mitte des Access-Fensters ge\u00f6ffnet wird. Wenn Sie weitergehende Anspr\u00fcche haben, k\u00f6nnen Sie die genaue Position von Formularen nicht nur ermitteln, sondern diese auch setzen. Dieser Artikel zeigt die Funktionen, mit denen Sie dies realisieren k\u00f6nnen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html\" \/>\n<meta property=\"og:site_name\" content=\"Access [basics]\" \/>\n<meta property=\"article:published_time\" content=\"2020-01-24T15:59:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"-0001-11-30T00:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/..\/tl_files\/images\/pic_340_001.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\">\n\t<meta name=\"twitter:data1\" content=\"12\u00a0Minuten\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/access-basics.de\/#website\",\"url\":\"https:\/\/access-basics.de\/\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/access-basics.de\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html#primaryimage\",\"inLanguage\":\"de\",\"url\":\"..\/tl_files\/images\/pic_340_001.png\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html#webpage\",\"url\":\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html\",\"name\":\"Formularpositionen lesen und setzen - Access [basics]\",\"isPartOf\":{\"@id\":\"https:\/\/access-basics.de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html#primaryimage\"},\"datePublished\":\"2020-01-24T15:59:44+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"author\":{\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\"},\"description\":\"Die Position der Formulare Ihrer Datenbank wird normalerweise nur \\u00fcber die Eigenschaft Automatisch zentrieren eingestellt, was dazu f\\u00fchrt, dass ein Formular direkt in der Mitte des Access-Fensters ge\\u00f6ffnet wird. Wenn Sie weitergehende Anspr\\u00fcche haben, k\\u00f6nnen Sie die genaue Position von Formularen nicht nur ermitteln, sondern diese auch setzen. Dieser Artikel zeigt die Funktionen, mit denen Sie dies realisieren k\\u00f6nnen.\",\"breadcrumb\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/\",\"url\":\"https:\/\/access-basics.de\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html\",\"url\":\"https:\/\/access-basics.de\/index.php\/Formularpositionen_lesen_und_setzen.html\",\"name\":\"Formularpositionen lesen und setzen\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/#personlogo\",\"inLanguage\":\"de\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","_links":{"self":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000340","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/comments?post=55000340"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000340\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000340"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000340"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000340"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}