{"id":2988,"date":"2019-08-28T11:11:34","date_gmt":"2019-08-28T09:11:34","guid":{"rendered":"http:\/\/www.capri-soft.de\/blog\/?p=2988"},"modified":"2019-08-28T11:13:42","modified_gmt":"2019-08-28T09:13:42","slug":"ibm-doors-dxl-layout-dxl-where-the-traceability-wizard-fails","status":"publish","type":"post","link":"https:\/\/www.capri-soft.de\/blog\/?p=2988","title":{"rendered":"IBM Doors DXL: Layout DXL where the traceability wizard fails"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Problem<\/h2>\n\n\n\n<p>In some cases you will run into trouble when you want to use the standard function of Doors to create a traceability for a depth of 2 that is not going into the same direction. To solve this problem the implementation of an own Layout DXL is necessary. <\/p>\n\n\n\n<p>The example below shows the situation with depth 2 and the same Linkmodule in which you can use the standard function to create a Layout DXL column:<\/p>\n\n\n\n<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" version=\"1.1\" width=\"501px\" viewBox=\"-0.5 -0.5 501 71\" style=\"max-width:100%;max-height:71px;\"><defs><\/defs><g><path d=\"M 80 35 L 213.63 35\" fill=\"none\" stroke=\"#000000\" stroke-miterlimit=\"10\" pointer-events=\"none\"><\/path><path d=\"M 218.88 35 L 211.88 38.5 L 213.63 35 L 211.88 31.5 Z\" fill=\"#000000\" stroke=\"#000000\" stroke-miterlimit=\"10\" pointer-events=\"none\"><\/path><g transform=\"translate(117.5,29.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"65\" height=\"11\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;background-color:#ffffff;\">Linkmodule 1<\/div><\/div><\/foreignObject><text x=\"33\" y=\"11\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"11px\" font-family=\"Helvetica\">Linkmodule 1<\/text><\/switch><\/g><ellipse cx=\"40\" cy=\"35\" rx=\"40\" ry=\"35\" fill=\"#ffffff\" stroke=\"#000000\" pointer-events=\"none\"><\/ellipse><g transform=\"translate(35.5,28.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"8\" height=\"12\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 10px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">A<\/div><\/div><\/foreignObject><text x=\"4\" y=\"12\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">A<\/text><\/switch><\/g><path d=\"M 300 35 L 413.63 35\" fill=\"none\" stroke=\"#000000\" stroke-miterlimit=\"10\" pointer-events=\"none\"><\/path><path d=\"M 418.88 35 L 411.88 38.5 L 413.63 35 L 411.88 31.5 Z\" fill=\"#000000\" stroke=\"#000000\" stroke-miterlimit=\"10\" pointer-events=\"none\"><\/path><g transform=\"translate(327.5,29.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"65\" height=\"11\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;background-color:#ffffff;\">Linkmodule 1<\/div><\/div><\/foreignObject><text x=\"33\" y=\"11\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"11px\" font-family=\"Helvetica\">Linkmodule 1<\/text><\/switch><\/g><ellipse cx=\"260\" cy=\"35\" rx=\"40\" ry=\"35\" fill=\"#ffffff\" stroke=\"#000000\" pointer-events=\"none\"><\/ellipse><g transform=\"translate(255.5,28.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"8\" height=\"12\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 10px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">B<\/div><\/div><\/foreignObject><text x=\"4\" y=\"12\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">B<\/text><\/switch><\/g><ellipse cx=\"460\" cy=\"35\" rx=\"40\" ry=\"35\" fill=\"#ffffff\" stroke=\"#000000\" pointer-events=\"none\"><\/ellipse><g transform=\"translate(455.5,28.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"8\" height=\"12\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 10px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">C<\/div><\/div><\/foreignObject><text x=\"4\" y=\"12\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">C<\/text><\/switch><\/g><\/g><\/svg>\n\n\n\n<p>The next situation, which is not possible to master with the standard doors function, shows the problem where depth two with two different direction and link module types gives the needed traceability information for the report.<\/p>\n\n\n\n<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" version=\"1.1\" width=\"603px\" viewBox=\"-0.5 -0.5 603 203\" style=\"max-width:100%;max-height:203px;\"><defs><\/defs><g><rect x=\"350\" y=\"2\" width=\"250\" height=\"140\" fill=\"#ffffff\" stroke=\"#ff0000\" stroke-width=\"4\" pointer-events=\"none\"><\/rect><path d=\"M 110 77 L 243.63 77\" fill=\"none\" stroke=\"#000000\" stroke-miterlimit=\"10\" pointer-events=\"none\"><\/path><path d=\"M 248.88 77 L 241.88 80.5 L 243.63 77 L 241.88 73.5 Z\" fill=\"#000000\" stroke=\"#000000\" stroke-miterlimit=\"10\" pointer-events=\"none\"><\/path><g transform=\"translate(147.5,71.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"65\" height=\"11\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;background-color:#ffffff;\">Linkmodule 1<\/div><\/div><\/foreignObject><text x=\"33\" y=\"11\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"11px\" font-family=\"Helvetica\">Linkmodule 1<\/text><\/switch><\/g><ellipse cx=\"70\" cy=\"77\" rx=\"40\" ry=\"35\" fill=\"#ffffff\" stroke=\"#000000\" pointer-events=\"none\"><\/ellipse><g transform=\"translate(65.5,70.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"8\" height=\"12\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 10px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">A<\/div><\/div><\/foreignObject><text x=\"4\" y=\"12\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">A<\/text><\/switch><\/g><ellipse cx=\"290\" cy=\"77\" rx=\"40\" ry=\"35\" fill=\"#ffffff\" stroke=\"#000000\" pointer-events=\"none\"><\/ellipse><g transform=\"translate(285.5,70.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"8\" height=\"12\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 10px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">B<\/div><\/div><\/foreignObject><text x=\"4\" y=\"12\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">B<\/text><\/switch><\/g><ellipse cx=\"510\" cy=\"77\" rx=\"40\" ry=\"35\" fill=\"#ffffff\" stroke=\"#000000\" pointer-events=\"none\"><\/ellipse><g transform=\"translate(505.5,70.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"8\" height=\"12\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 10px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">C<\/div><\/div><\/foreignObject><text x=\"4\" y=\"12\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">C<\/text><\/switch><\/g><path d=\"M 470 77 L 336.37 77\" fill=\"none\" stroke=\"#000000\" stroke-miterlimit=\"10\" pointer-events=\"none\"><\/path><path d=\"M 331.12 77 L 338.12 73.5 L 336.37 77 L 338.12 80.5 Z\" fill=\"#000000\" stroke=\"#000000\" stroke-miterlimit=\"10\" pointer-events=\"none\"><\/path><g transform=\"translate(367.5,71.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"65\" height=\"11\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; white-space: nowrap; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;background-color:#ffffff;\">Linkmodule 2<\/div><\/div><\/foreignObject><text x=\"33\" y=\"11\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"11px\" font-family=\"Helvetica\">Linkmodule 2<\/text><\/switch><\/g><g transform=\"translate(4.5,15.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"130\" height=\"12\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 130px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">Object in source module<\/div><\/div><\/foreignObject><text x=\"65\" y=\"12\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">Object in source module<\/text><\/switch><\/g><rect x=\"120\" y=\"152\" width=\"120\" height=\"50\" fill=\"#dae8fc\" stroke=\"#6c8ebf\" pointer-events=\"none\"><\/rect><g transform=\"translate(121.5,156.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"116\" height=\"40\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 116px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">Outgoing link of type &#8222;Linkmodule 1&#8220; (i.e. &#8222;Creates&#8220;)<\/div><\/div><\/foreignObject><text x=\"58\" y=\"26\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">[Not supported by viewer]<\/text><\/switch><\/g><path d=\"M 179 82 L 179.74 152\" fill=\"none\" stroke=\"#000000\" stroke-miterlimit=\"10\" stroke-dasharray=\"3 3\" pointer-events=\"none\"><\/path><rect x=\"350\" y=\"152\" width=\"120\" height=\"50\" fill=\"#dae8fc\" stroke=\"#6c8ebf\" pointer-events=\"none\"><\/rect><g transform=\"translate(351.5,156.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"116\" height=\"40\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 116px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">Incominglink of type &#8222;Linkmodule 2 (i.e. &#8222;Triggers&#8220;)<\/div><\/div><\/foreignObject><text x=\"58\" y=\"26\" fill=\"#000000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">[Not supported by viewer]<\/text><\/switch><\/g><path d=\"M 410 82 L 410 152\" fill=\"none\" stroke=\"#000000\" stroke-miterlimit=\"10\" stroke-dasharray=\"3 3\" pointer-events=\"none\"><\/path><g transform=\"translate(390.5,8.5)\"><switch><foreignObject style=\"overflow:visible;\" pointer-events=\"all\" width=\"158\" height=\"26\" requiredFeatures=\"http:\/\/www.w3.org\/TR\/SVG11\/feature#Extensibility\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(255, 0, 0); line-height: 1.2; vertical-align: top; width: 158px; white-space: nowrap; overflow-wrap: normal; text-align: center;\"><div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" style=\"display:inline-block;text-align:inherit;text-decoration:inherit;white-space:normal;\">not possible withoud Standard Traceability Wizard<\/div><\/div><\/foreignObject><text x=\"79\" y=\"19\" fill=\"#FF0000\" text-anchor=\"middle\" font-size=\"12px\" font-family=\"Helvetica\">not possible withoud Standard Traceability Wizard<\/text><\/switch><\/g><\/g><\/svg>\n\n\n\n<h2 class=\"wp-block-heading\">Approach &#8211; Ansatz<\/h2>\n\n\n\n<p>To get the needed traceability information within a module, you can add a layout dxl column by clicking on the column header of the current selected view in the module and add a layout DXL column. This layout DXL column can iterate through the outgoing modules of the current object, catch all objects that are linked and look for incoming links on it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Solution &#8211; L\u00f6sung <\/h2>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\n\/\/\n\/*******************************************************************************\n* Author: Bj\u00f6rn Karpenstein \n* Stakeholder: Bj\u00f6rn Karpenstein\n*\n* Subversion\n* ===================================================\n* $Rev::               $:  Revision of last commit\n* $Author::            $:  Author of last commit\n* $Date::              $:  Date of last commit\n*\n* Change Control\n* ==============\n* n\/a\n*\n* Description\n* ===========\n* This script gives the traceability over 2 modules with two different diection\n* and module types\n*******************************************************************************\/\nstring firstLinkModule  = &quot;\/Product Lifecycle Management\/10 Administration\/Create&quot;;\nstring secondLinkModule = &quot;\/Product Lifecycle Management\/10 Administration\/Triggers&quot;;\n\nSkip dublettenRaus=createString;\n\npragma encoding,&quot;UTF-8&quot;;\npragma runLim, 0;\n\n\/\/Object obj=current;\n \nLink lnk;\nLink inLnk;\nLinkRef lnkRef;\nModName_ otherMod = null;\n \nfor lnk in obj-&gt;firstLinkModule do\n{\n\tstring tmn=fullName target(lnk);\n\t\n\tif(!open module tmn)\n\t{\n\t\tread(tmn,false);\n\t}\n\t\n\tObject keypoint = target(lnk);\n\t\/\/display identifier(keypoint) &quot;\\n&quot;;\n\t\n\tif(null keypoint)\n\t{\n\t\t \/\/display &quot;no link to keypoint&quot;;\n\t}\n\telse\n\t{\t     \n\t\t\/\/display &quot;keypoint : &quot; identifier(keypoint) &quot;&quot;;\n\t\tfor lnkRef in keypoint&lt;-secondLinkModule do\n\t\t{\n\t\t  \/\/display &quot;drin&quot;;\n\t\t  otherMod = module (sourceVersion lnkRef);\n\t\t  if (!null otherMod) \n\t\t  {\n\t\t    if ((!isDeleted otherMod) &amp;&amp; (null data(sourceVersion lnkRef))) \n\t\t    {\n\t\t      load((sourceVersion lnkRef),false);\n\t\t    }\n\t\t  }\n\t\t}\n\t\t     \n\t\tfor inLnk in keypoint&lt;-secondLinkModule do\n\t\t{\n\t\t  \/\/ Get In-Link Object\n\t\t  Object phase = source inLnk;\n\t\t  if ( isDeleted(phase) || null(phase) ) continue;\n\t\t     \n\t\t  string dummy=&quot;&quot;;\n\t\t  if(!find(dublettenRaus, phase.&quot;Object Text&quot; &quot;&quot;, dummy))\n\t\t  {\n\t\t\t  put(dublettenRaus, phase.&quot;Object Text&quot; &quot;&quot;, phase.&quot;Object Text&quot; &quot;&quot;);\n\t\t  }\n\t\t}\n\t}\n}\n\nint phaseCounter=0;\n\n\/\/ Iteration through the SkipList\nfor myIterator in dublettenRaus do\n{\n\tstring keyValue = (string key(dublettenRaus));\n\tstring currentObject = null;\n\t\n\tif(find(dublettenRaus, keyValue, currentObject))\n\t{\n\t   display keyValue;\n\t}\n}\n\ndelete dublettenRaus;\n<\/pre><\/div>\n\n\n<p><\/p>\n<iframe src=\"http:\/\/www.facebook.com\/plugins\/like.php?href=https%3A%2F%2Fwww.capri-soft.de%2Fblog%2F%3Fp%3D2988&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light\" scrolling=\"no\" frameborder=\"0\" allowTransparency=\"true\" style=\"border:none; overflow:hidden; width:450px;margin-top:5px;\"><\/iframe>","protected":false},"excerpt":{"rendered":"<p>Problem In some cases you will run into trouble when you want to use the standard function of Doors to create a traceability for a depth of 2 that is not going into the same direction. To solve this problem the implementation of an own Layout DXL is necessary. The example below shows the situation &hellip; <a href=\"https:\/\/www.capri-soft.de\/blog\/?p=2988\" class=\"more-link\"><span class=\"screen-reader-text\">IBM Doors DXL: Layout DXL where the traceability wizard fails<\/span> weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[1],"tags":[],"class_list":["post-2988","post","type-post","status-publish","format-standard","hentry","category-allgemein"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p4yGeN-Mc","jetpack_likes_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2988","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2988"}],"version-history":[{"count":4,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2988\/revisions"}],"predecessor-version":[{"id":2992,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2988\/revisions\/2992"}],"wp:attachment":[{"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2988"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2988"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2988"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}