[{"data":1,"prerenderedAt":478},["ShallowReactive",2],{"/nw/save-graphml":3,"/nw/save-graphml-surround":467},{"id":4,"title":5,"body":6,"description":435,"extension":436,"meta":437,"navigation":454,"path":463,"seo":464,"stem":465,"__hash__":466},"content/nw/save-graphml.md","Networks Extension Dictionary: save-graphml",{"type":7,"value":8,"toc":425},"minimark",[9],[10,11,15,16,15,26,47,51,307,310,319,322],"div",{"className":12,"id":14},[13],"dict_entry","save-graphml","\n  ",[17,18,20,21,15],"h3",{"id":19},"nwsave-graphml","\n    ",[22,23,25],"a",{"href":24},"#save-graphml","nw:save-graphml",[27,28,32],"h4",{"id":29,"className":30},"nwsave-graphml-file-name",[31],"section-heading",[22,33,20,37,15],{"className":34,"href":36},[35],"section-anchor","#----nwsave-graphml-file-name--",[38,39,42,43],"span",{"className":40},[41],"prim_example","nw:save-graphml ",[44,45,46],"i",{},"file-name",[48,49,50],"p",{},"You can save the current graph to GraphML. The following NetLogo code:",[52,53,54],"pre",{},[55,56,57,63,64,69,70,73,63,79,83,84,69,88,63,94,69,98,63,103,83,107,69,111,63,117,69,121,123,63,129,83,133,69,137,139,63,145,83,149,69,153,63,159,69,163,165,83,171,175,177,178,183,177,185,83,189,194,195,197,198,83,202,83,205,210,212,213,177,215,83,219,194,222,197,224,83,227,83,230,234,197,236,83,240,83,243,247,197,249,83,253,83,256,194,259,261,262,83,265,83,268,272,274,275,212,277,177,279,83,283,83,288,292,177,294,83,297,301],"code",{},[38,58,62],{"className":59},[60,61],"token","keyword","extensions"," [ ",[38,65,68],{"className":66},[60,67],"variable","nw"," ]",[71,72],"br",{},[38,74,76,78],{"className":75},[60,61],[71,77],{},"breed",[38,80,82],{"className":81},[60,67],"bankers"," ",[38,85,87],{"className":86},[60,67],"banker",[38,89,91,93],{"className":90},[60,61],[71,92],{},"bankers-own",[38,95,97],{"className":96},[60,67],"bank-name",[38,99,101,78],{"className":100},[60,61],[71,102],{},[38,104,106],{"className":105},[60,67],"clients",[38,108,110],{"className":109},[60,67],"client",[38,112,114,116],{"className":113},[60,61],[71,115],{},"clients-own",[38,118,120],{"className":119},[60,67],"hometown",[71,122],{},[38,124,126,128],{"className":125},[60,61],[71,127],{},"undirected-link-breed",[38,130,132],{"className":131},[60,67],"friendships",[38,134,136],{"className":135},[60,67],"friendship",[71,138],{},[38,140,142,144],{"className":141},[60,61],[71,143],{},"directed-link-breed",[38,146,148],{"className":147},[60,67],"accounts",[38,150,152],{"className":151},[60,67],"account",[38,154,156,158],{"className":155},[60,61],[71,157],{},"accounts-own",[38,160,162],{"className":161},[60,67],"amount",[71,164],{},[38,166,168,170],{"className":167},[60,61],[71,169],{},"to",[38,172,174],{"className":173},[60,67],"go",[71,176],{},"  ",[38,179,182],{"className":180},[60,181],"command","clear-all",[71,184],{},[38,186,188],{"className":187},[60,67],"create-bankers",[38,190,193],{"className":191},[60,192],"number","1"," [",[71,196],{},"    ",[38,199,201],{"className":200},[60,181],"set",[38,203,97],{"className":204},[60,67],[38,206,209],{"className":207},[60,208],"string","\"The Bank\"",[71,211],{},"  ]",[71,214],{},[38,216,218],{"className":217},[60,67],"create-clients",[38,220,193],{"className":221},[60,192],[71,223],{},[38,225,201],{"className":226},[60,181],[38,228,120],{"className":229},[60,67],[38,231,233],{"className":232},[60,208],"\"Turtle City\"",[71,235],{},[38,237,239],{"className":238},[60,67],"create-friendship-with",[38,241,87],{"className":242},[60,67],[38,244,246],{"className":245},[60,192],"0",[71,248],{},[38,250,252],{"className":251},[60,67],"create-account-to",[38,254,87],{"className":255},[60,67],[38,257,246],{"className":258},[60,192],[71,260],{},"      ",[38,263,201],{"className":264},[60,181],[38,266,162],{"className":267},[60,67],[38,269,271],{"className":270},[60,192],"9999.99",[71,273],{},"    ]",[71,276],{},[71,278],{},[38,280,282],{"className":281},[60,67],"nw:set-context",[38,284,287],{"className":285},[60,286],"reporter","turtles",[38,289,291],{"className":290},[60,286],"links",[71,293],{},[38,295,25],{"className":296},[60,67],[38,298,300],{"className":299},[60,208],"\"example.graphml\"",[38,302,304,306],{"className":303},[60,61],[71,305],{},"end",[48,308,309],{},"Will produce the following GraphML file:",[52,311,317],{"className":312,"code":314,"language":315,"meta":316},[313],"language-XML","\u003C?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\u003Cgraphml xmlns=\"http://graphml.graphdrawing.org/xmlns/graphml\"\nxmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\nxsi:schemaLocation=\"http://graphml.graphdrawing.org/xmlns/graphml\">\n\u003Ckey id=\"PEN-MODE\" for=\"node\" attr.name=\"PEN-MODE\" attr.type=\"string\"/>\n\u003Ckey id=\"YCOR\" for=\"node\" attr.name=\"YCOR\" attr.type=\"double\"/>\n\u003Ckey id=\"PEN-SIZE\" for=\"node\" attr.name=\"PEN-SIZE\" attr.type=\"double\"/>\n\u003Ckey id=\"LABEL\" for=\"node\" attr.name=\"LABEL\" attr.type=\"string\"/>\n\u003Ckey id=\"SHAPE\" for=\"node\" attr.name=\"SHAPE\" attr.type=\"string\"/>\n\u003Ckey id=\"BREED\" for=\"node\" attr.name=\"BREED\" attr.type=\"string\"/>\n\u003Ckey id=\"WHO\" for=\"node\" attr.name=\"WHO\" attr.type=\"double\"/>\n\u003Ckey id=\"HIDDEN?\" for=\"node\" attr.name=\"HIDDEN?\" attr.type=\"boolean\"/>\n\u003Ckey id=\"LABEL-COLOR\" for=\"node\" attr.name=\"LABEL-COLOR\" attr.type=\"double\"/>\n\u003Ckey id=\"HEADING\" for=\"node\" attr.name=\"HEADING\" attr.type=\"double\"/>\n\u003Ckey id=\"BANK-NAME\" for=\"node\" attr.name=\"BANK-NAME\" attr.type=\"string\"/>\n\u003Ckey id=\"HOMETOWN\" for=\"node\" attr.name=\"HOMETOWN\" attr.type=\"string\"/>\n\u003Ckey id=\"COLOR\" for=\"node\" attr.name=\"COLOR\" attr.type=\"double\"/>\n\u003Ckey id=\"XCOR\" for=\"node\" attr.name=\"XCOR\" attr.type=\"double\"/>\n\u003Ckey id=\"SIZE\" for=\"node\" attr.name=\"SIZE\" attr.type=\"double\"/>\n\u003Ckey id=\"END1\" for=\"edge\" attr.name=\"END1\" attr.type=\"string\"/>\n\u003Ckey id=\"TIE-MODE\" for=\"edge\" attr.name=\"TIE-MODE\" attr.type=\"string\"/>\n\u003Ckey id=\"END2\" for=\"edge\" attr.name=\"END2\" attr.type=\"string\"/>\n\u003Ckey id=\"LABEL-COLOR\" for=\"edge\" attr.name=\"LABEL-COLOR\" attr.type=\"double\"/>\n\u003Ckey id=\"THICKNESS\" for=\"edge\" attr.name=\"THICKNESS\" attr.type=\"double\"/>\n\u003Ckey id=\"LABEL\" for=\"edge\" attr.name=\"LABEL\" attr.type=\"string\"/>\n\u003Ckey id=\"SHAPE\" for=\"edge\" attr.name=\"SHAPE\" attr.type=\"string\"/>\n\u003Ckey id=\"BREED\" for=\"edge\" attr.name=\"BREED\" attr.type=\"string\"/>\n\u003Ckey id=\"COLOR\" for=\"edge\" attr.name=\"COLOR\" attr.type=\"double\"/>\n\u003Ckey id=\"AMOUNT\" for=\"edge\" attr.name=\"AMOUNT\" attr.type=\"double\"/>\n\u003Ckey id=\"HIDDEN?\" for=\"edge\" attr.name=\"HIDDEN?\" attr.type=\"boolean\"/>\n\u003Cgraph edgedefault=\"undirected\">\n\u003Cnode id=\"client 1\">\n\u003Cdata key=\"PEN-MODE\">up\u003C/data>\n\u003Cdata key=\"YCOR\">0\u003C/data>\n\u003Cdata key=\"PEN-SIZE\">1\u003C/data>\n\u003Cdata key=\"LABEL\">\u003C/data>\n\u003Cdata key=\"SHAPE\">default\u003C/data>\n\u003Cdata key=\"BREED\">clients\u003C/data>\n\u003Cdata key=\"WHO\">1\u003C/data>\n\u003Cdata key=\"HIDDEN?\">false\u003C/data>\n\u003Cdata key=\"LABEL-COLOR\">9.9\u003C/data>\n\u003Cdata key=\"HEADING\">356\u003C/data>\n\u003Cdata key=\"HOMETOWN\">Turtle City\u003C/data>\n\u003Cdata key=\"COLOR\">115\u003C/data>\n\u003Cdata key=\"XCOR\">0\u003C/data>\n\u003Cdata key=\"SIZE\">1\u003C/data>\n\u003C/node>\n\u003Cnode id=\"banker 0\">\n\u003Cdata key=\"PEN-MODE\">up\u003C/data>\n\u003Cdata key=\"YCOR\">0\u003C/data>\n\u003Cdata key=\"PEN-SIZE\">1\u003C/data>\n\u003Cdata key=\"LABEL\">\u003C/data>\n\u003Cdata key=\"SHAPE\">default\u003C/data>\n\u003Cdata key=\"BREED\">bankers\u003C/data>\n\u003Cdata key=\"WHO\">0\u003C/data>\n\u003Cdata key=\"HIDDEN?\">false\u003C/data>\n\u003Cdata key=\"LABEL-COLOR\">9.9\u003C/data>\n\u003Cdata key=\"HEADING\">32\u003C/data>\n\u003Cdata key=\"BANK-NAME\">The Bank\u003C/data>\n\u003Cdata key=\"COLOR\">85\u003C/data>\n\u003Cdata key=\"XCOR\">0\u003C/data>\n\u003Cdata key=\"SIZE\">1\u003C/data>\n\u003C/node>\n\u003Cedge source=\"client 1\" target=\"banker 0\">\n\u003Cdata key=\"END1\">(client 1)\u003C/data>\n\u003Cdata key=\"TIE-MODE\">none\u003C/data>\n\u003Cdata key=\"END2\">(banker 0)\u003C/data>\n\u003Cdata key=\"LABEL-COLOR\">9.9\u003C/data>\n\u003Cdata key=\"THICKNESS\">0\u003C/data>\n\u003Cdata key=\"LABEL\">\u003C/data>\n\u003Cdata key=\"SHAPE\">default\u003C/data>\n\u003Cdata key=\"BREED\">accounts\u003C/data>\n\u003Cdata key=\"COLOR\">5\u003C/data>\n\u003Cdata key=\"AMOUNT\">9999.99\u003C/data>\n\u003Cdata key=\"HIDDEN?\">false\u003C/data>\n\u003C/edge>\n\u003Cedge source=\"banker 0\" target=\"client 1\">\n\u003Cdata key=\"END1\">(banker 0)\u003C/data>\n\u003Cdata key=\"TIE-MODE\">none\u003C/data>\n\u003Cdata key=\"END2\">(client 1)\u003C/data>\n\u003Cdata key=\"LABEL-COLOR\">9.9\u003C/data>\n\u003Cdata key=\"THICKNESS\">0\u003C/data>\n\u003Cdata key=\"LABEL\">\u003C/data>\n\u003Cdata key=\"SHAPE\">default\u003C/data>\n\u003Cdata key=\"BREED\">friendships\u003C/data>\n\u003Cdata key=\"COLOR\">5\u003C/data>\n\u003Cdata key=\"HIDDEN?\">false\u003C/data>\n\u003C/edge>\n\u003C/graph>\n\u003C/graphml>\n","XML","",[55,318,314],{"__ignoreMap":316},[48,320,321],{},"A few things to notice:",[323,324,325,329,347,369],"ul",{},[326,327,328],"li",{},"The breed is stored as data field, both for nodes and edges.  Note that the breed is stored in its plural form.",[326,330,331,332,335,336,335,339,342,343,346],{},"The data includes both NetLogo’s internal variables and the variables that were defined as either ",[55,333,334],{},"breeds-own",", ",[55,337,338],{},"turtles-own",[55,340,341],{},"linkbreeds-own"," or ",[55,344,345],{},"links-own",".",[326,348,349,350,353,354,335,357,360,361,364,365,368],{},"Each key gets an ",[55,351,352],{},"attr.type"," based on the actual types of the values contained in the agent variables. The three possible types are ",[55,355,356],{},"\"string\"",[55,358,359],{},"\"double\""," and ",[55,362,363],{},"\"boolean\"",". To determine the attribute type of a particular agent variable, the extension will look at the first agent in the graph. To see which agent is first, you can look at the result of ",[55,366,367],{},"nw:get-context",". Note that variables containing other types of values, such as turtles, patches, lists, etc., will be stored as strings.",[326,370,371,372,390,391,406,407,413,414,360,417,420,421,346],{},"This example only has a directed link, and you will notice the ",[55,373,374,83,378,382,386],{},[38,375,377],{"className":376},[60,67],"\u003Cgraph",[38,379,381],{"className":380},[60,67],"edgedefault=",[38,383,385],{"className":384},[60,208],"\"directed\"",[38,387,389],{"className":388},[60,286],">"," element. If we had only undirected links, we would have ",[55,392,393,83,396,399,403],{},[38,394,377],{"className":395},[60,67],[38,397,381],{"className":398},[60,67],[38,400,402],{"className":401},[60,208],"\"undirected\"",[38,404,389],{"className":405},[60,286],". What if we try to mix both kinds of link? At the moment, the extension will save such a “mixed” graph as if it were an undirected graph (see ",[22,408,412],{"href":409,"rel":410},"https://github.com/NetLogo/NW-Extension/issues/58",[411],"nofollow","this issue"," for more details). The order of the ",[55,415,416],{},"source",[55,418,419],{},"target"," will be respected, however, so if you know which breeds represent directed links, you can figure it out ",[422,423,424],"em",{},"a posteriori",{"title":316,"searchDepth":426,"depth":427,"links":428},5,3,[429],{"id":19,"depth":427,"text":430,"children":431},"\n    nw:save-graphml\n  ",[432],{"id":29,"depth":433,"text":434},4,"\n    nw:save-graphml file-name\n  ","Documentation for the save-graphml primitive.","md",{"source":438,"metadataOutputPath":439,"projectConfig":440,"language":447,"inheritFrom":455,"output":454,"version":441,"layout":456,"dictionaryDisplayName":457,"dictionaryHomeDirectory":458,"indexFileURI":459,"currentItemId":14,"currentItemLabel":25,"primRoot":68,"icon":460,"extensionName":461,"assetsRoot":442},"../../external/extensions/nw/nw/save-graphml.md","content/nw/save-graphml.metadata.yaml",{"version":441,"projectRoot":346,"scanRoot":442,"outputRoot":443,"defaults":444,"engine":450,"partials":451,"dedupeIdenticalDiskWrites":454},"7.0.4","/home/runner/work/Helio/Helio/external/extensions/nw","content",{"inheritFrom":445,"language":447,"output":448,"extension":436,"title":449,"version":441},[446],0,"en",false,"NetLogo User Manual","mustache",{"directoryPaths":452,"extensions":453},[346],[450,436],true,[446],"catalog","Networks Extension Dictionary","/nw.html","/_index/extensions/nw.txt","i-lucide-network",{"shortName":68,"fullName":462},"Networks","/nw/save-graphml",{"title":5,"description":435},"nw/save-graphml","SXpJzHQ_TZJ3bjR-xiOtcRagNfQbRCcGM4CIsIw257Y",[468,473],{"title":469,"path":470,"stem":471,"description":472},"Networks Extension Dictionary: save","/nw/save","nw/save","Documentation for the save primitive.",{"title":474,"path":475,"stem":476,"description":477},"Networks Extension Dictionary: save-matrix","/nw/save-matrix","nw/save-matrix","Documentation for the save-matrix primitive.",1777657888756]