<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article
  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="nlm-ta">PLoS ONE</journal-id>
<journal-id journal-id-type="publisher-id">plos</journal-id>
<journal-id journal-id-type="pmc">plosone</journal-id>
<journal-title-group>
<journal-title>PLOS ONE</journal-title>
</journal-title-group>
<issn pub-type="epub">1932-6203</issn>
<publisher>
<publisher-name>Public Library of Science</publisher-name>
<publisher-loc>San Francisco, CA USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">PONE-D-15-09202</article-id>
<article-id pub-id-type="doi">10.1371/journal.pone.0128985</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Research Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>SBGNViz: A Tool for Visualization and Complexity Management of SBGN Process Description Maps</article-title>
<alt-title alt-title-type="running-head">SBGNViz</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" equal-contrib="yes" xlink:type="simple">
<name name-style="western">
<surname>Sari</surname> <given-names>Mecit</given-names></name>
<xref ref-type="aff" rid="aff001"><sup>1</sup></xref>
</contrib>
<contrib contrib-type="author" equal-contrib="yes" xlink:type="simple">
<name name-style="western">
<surname>Bahceci</surname> <given-names>Istemi</given-names></name>
<xref ref-type="aff" rid="aff001"><sup>1</sup></xref>
</contrib>
<contrib contrib-type="author" corresp="yes" xlink:type="simple">
<name name-style="western">
<surname>Dogrusoz</surname> <given-names>Ugur</given-names></name>
<xref ref-type="aff" rid="aff002"><sup>2</sup></xref>
<xref ref-type="aff" rid="aff001"><sup>1</sup></xref>
<xref ref-type="corresp" rid="cor001">*</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple">
<name name-style="western">
<surname>Sumer</surname> <given-names>Selcuk Onur</given-names></name>
<xref ref-type="aff" rid="aff002"><sup>2</sup></xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple">
<name name-style="western">
<surname>Aksoy</surname> <given-names>Bülent Arman</given-names></name>
<xref ref-type="aff" rid="aff002"><sup>2</sup></xref>
<xref ref-type="aff" rid="aff003"><sup>3</sup></xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple">
<name name-style="western">
<surname>Babur</surname> <given-names>Özgün</given-names></name>
<xref ref-type="aff" rid="aff002"><sup>2</sup></xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple">
<name name-style="western">
<surname>Demir</surname> <given-names>Emek</given-names></name>
<xref ref-type="aff" rid="aff002"><sup>2</sup></xref>
</contrib>
</contrib-group>
<aff id="aff001">
<label>1</label>
<addr-line>Computer Engineering Dept, Bilkent University, Ankara, Turkey</addr-line>
</aff>
<aff id="aff002">
<label>2</label>
<addr-line>Computational Biology Center, Memorial Sloan-Kettering Cancer Center, New York, NY, USA</addr-line>
</aff>
<aff id="aff003">
<label>3</label>
<addr-line>Tri-Institutional Training Program in Computational Biology and Medicine, New York, NY, USA</addr-line>
</aff>
<contrib-group>
<contrib contrib-type="editor" xlink:type="simple">
<name name-style="western">
<surname>Provart</surname> <given-names>Nicholas James</given-names></name>
<role>Academic Editor</role>
<xref ref-type="aff" rid="edit1"/>
</contrib>
</contrib-group>
<aff id="edit1">
<addr-line>University of Toronto, CANADA</addr-line>
</aff>
<author-notes>
<fn fn-type="conflict" id="coi001">
<p>The authors have declared that no competing interests exist.</p>
</fn>
<fn fn-type="con" id="contrib001">
<p>Analyzed the data: OB ED UD. Contributed reagents/materials/analysis tools: MS IB SOS BAA. Wrote the paper: UD ED OB MS IB. Conceived: UD ED OB. Software design and development: MS IB SOS BAA UD. Read and approved the paper: MS IB UD SOS BAA OB ED.</p>
</fn>
<corresp id="cor001">* E-mail: <email xlink:type="simple">dogrusoz@cbio.mskcc.org</email></corresp>
</author-notes>
<pub-date pub-type="collection">
<year>2015</year>
</pub-date>
<pub-date pub-type="epub">
<day>1</day>
<month>6</month>
<year>2015</year>
</pub-date>
<volume>10</volume>
<issue>6</issue>
<elocation-id>e0128985</elocation-id>
<history>
<date date-type="received">
<day>2</day>
<month>3</month>
<year>2015</year>
</date>
<date date-type="accepted">
<day>4</day>
<month>5</month>
<year>2015</year>
</date>
</history>
<permissions>
<copyright-year>2015</copyright-year>
<copyright-holder>Sari et al</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/" xlink:type="simple">
<license-p>This is an open access article distributed under the terms of the <ext-link ext-link-type="uri" xlink:href="http://creativecommons.org/licenses/by/4.0/" xlink:type="simple">Creative Commons Attribution License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="info:doi/10.1371/journal.pone.0128985" xlink:type="simple"/>
<abstract>
<sec id="sec001">
<title>Background</title>
<p>Information about cellular processes and pathways is becoming increasingly available in detailed, computable standard formats such as BioPAX and SBGN. Effective visualization of this information is a key recurring requirement for biological data analysis, especially for -omic data. Biological data analysis is rapidly migrating to web based platforms; thus there is a substantial need for sophisticated web based pathway viewers that support these platforms and other use cases.</p>
</sec>
<sec id="sec002">
<title>Results</title>
<p>Towards this goal, we developed a web based viewer named SBGNViz for process description maps in SBGN (SBGN-PD). SBGNViz can visualize both BioPAX and SBGN formats. Unique features of SBGNViz include the ability to nest nodes to arbitrary depths to represent molecular complexes and cellular locations, automatic pathway layout, editing and highlighting facilities to enable focus on sub-maps, and the ability to inspect pathway members for detailed information from EntrezGene. SBGNViz can be used within a web browser without any installation and can be readily embedded into web pages. SBGNViz has two editions built with ActionScript and JavaScript. The JavaScript edition, which also works on touch enabled devices, introduces novel methods for managing and reducing complexity of large SBGN-PD maps for more effective analysis.</p>
</sec>
<sec id="sec003">
<title>Conclusion</title>
<p>SBGNViz fills an important gap by making the large and fast-growing corpus of rich pathway information accessible to web based platforms. SBGNViz can be used in a variety of contexts and in multiple scenarios ranging from visualization of the results of a single study in a web page to building data analysis platforms.</p>
</sec>
</abstract>
<funding-group>
<funding-statement>This work was supported by The Scientific and Technological Research Council of Turkey (#113E161, <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="http://www.tubitak.gov.tr/en">http://www.tubitak.gov.tr/en</ext-link>), UD Foundation for the National Institutes of Health (US) (#U41HG006623 and #GM103504, <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="http://www.fnih.org">http://www.fnih.org</ext-link>), and Defense Advanced Research Projects Agency United States Army Research Office (Big Mechanism Program) (<ext-link ext-link-type="uri" xlink:type="simple" xlink:href="http://www.darpa.mil">http://www.darpa.mil</ext-link>, grant number: W911NF14C0119, grant recipient: ED (Dr. Emek Demir)). The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.</funding-statement>
</funding-group>
<counts>
<fig-count count="9"/>
<table-count count="0"/>
<page-count count="14"/>
</counts>
<custom-meta-group>
<custom-meta id="data-availability" xlink:type="simple">
<meta-name>Data Availability</meta-name>
<meta-value>All relevant data are within the paper.</meta-value>
</custom-meta>
</custom-meta-group>
</article-meta>
</front>
<body>
<sec id="sec004" sec-type="intro">
<title>Introduction</title>
<p>Our knowledge about cellular processes increases at a breakneck rate, both in the axis of static process information captured in pathway models and interaction networks, and in the axis of dynamic -omic profiles that capture alterations and perturbations occurring in different contexts such as a disease or a condition. This rapid growth necessitates a parallel growth in our analysis and interpretation capabilities. A recurring component for a wide range of analysis scenarios is visualization of these networks. Due to the vast size and complexity of these networks, which often lead to the so-called hairball effect, ability to visualize and dynamically layout arbitrary sub-networks at multiple levels of detail is necessary for effective visualization. To keep up with the rapid, distributed growth of data, visualization tools should also use standard community formats such as BioPAX [<xref ref-type="bibr" rid="pone.0128985.ref001">1</xref>] and SBGN [<xref ref-type="bibr" rid="pone.0128985.ref002">2</xref>]. Seamless access to the existing pathway data corpus and -omic profile repositories and being able to overlay this data are highly desirable. Although there are existing standalone software applications that satisfy some of these requirements such as ChiBE [<xref ref-type="bibr" rid="pone.0128985.ref003">3</xref>] and Cytoscape [<xref ref-type="bibr" rid="pone.0128985.ref004">4</xref>], currently there are no web applications offering a fulfilling solution. Since most analysis tools are migrating towards web and cloud based platforms, there is an urgent need for a web based visualization tool that can meet the aforementioned requirements.</p>
<p>We developed a web based visualization tool named SBGNViz for effective analysis of process description maps in SBGN. SBGNViz comes in two editions: ActionScript (AS) and JavaScript (JS). Both editions use the recently developed SBGN-ML [<xref ref-type="bibr" rid="pone.0128985.ref005">5</xref>] file format for storing process description maps in SBGN standard. Through the Paxtools [<xref ref-type="bibr" rid="pone.0128985.ref006">6</xref>] library’s SBGN conversion support, SBGNViz has access to a large public pathway data corpus in BioPAX format. Various editing and highlighting options to enable focus on sub-maps and the ability to inspect genes for detailed information from EntrezGene are also offered by these tools. Full support for compound structures such as molecular complexes and cellular locations as defined in SBGN-PD are provided by SBGNViz software, using nested drawings. The latest versions also include native specialized automatic layout algorithm and complexity management techniques adapted for SBGN-PD maps.</p>
<p>SBGNViz is unique in that it is the only web based visualization tool for SBGN-PD maps with full support for compound structures, including a specialized compound layout capability. In addition, novel methods for reducing complexity of SBGN-PD maps without destroying the validity and integrity of processes were designed and implemented as part of SBGNViz.</p>
</sec>
<sec id="sec005" sec-type="materials|methods">
<title>Methods</title>
<p>In this section, we introduce the algorithms behind the novel complexity management operations provided by SBGNViz JS edition.</p>
<p>Many techniques for navigating and visualizing very large networks to reduce their complexity have been proposed in the literature [<xref ref-type="bibr" rid="pone.0128985.ref007">7</xref>, <xref ref-type="bibr" rid="pone.0128985.ref008">8</xref>]. These range from visual methods like panning, zooming and fisheye views, to expanding and collapsing the nodes of the compound network, to hiding unwanted parts of the topology. However, application of such methods for process description maps, without the use of the domain information, hardly ever results in valid and complete maps (<xref ref-type="fig" rid="pone.0128985.g001">Fig 1</xref>).</p>
<fig id="pone.0128985.g001" position="float">
<object-id pub-id-type="doi">10.1371/journal.pone.0128985.g001</object-id>
<label>Fig 1</label>
<caption>
<title>Use of generic complexity management.</title>
<p>Application of generic complexity management techniques without the use of domain specific knowledge typically results in invalid or incomplete process description maps. (A) An SBGN map for ATM mediated phosphorylation of repair proteins in the context of MRN complex, (B) The same map after NBN instances are selected and the rest (in this case, only one of the four processes in the map) are hidden using generic filtering, and (C) The same map when proper filtering that takes domain-specific information into account is applied.</p>
</caption>
<graphic mimetype="image" xlink:type="simple" position="float" xlink:href="info:doi/10.1371/journal.pone.0128985.g001"/>
</fig>
<p>To overcome this problem in the context of SBGN-PD maps, we keep the following invariants intact for a map, in which a specified node group is to be shown (or hidden):
<list list-type="bullet">
<list-item><p>If a node is specified in a node group to be shown, it must be included.</p></list-item>
<list-item><p>If a non-process node (EPN) is selected to be shown, all the processes it is involved with should be included since SBGN-PD shows the transformation of these biological entities via processes.</p></list-item>
<list-item><p>If a process is selected to be shown, then all of its substrates, products, and effectors should be included as well. Hiding a substrate, product or effector might simply refer to a different process or lead to an inconsistentcy.</p></list-item>
<list-item><p>If a node is selected to be shown, the parent node (a complex or a compartment) should be also included since the complexes are identified with their members and the cellular location that an entity is in might be crucial information.</p></list-item>
<list-item><p>A complex molecule should always be displayed with all of its members since the member composition defines the identity of the complex.</p></list-item>
</list></p>
<sec id="sec006">
<title>Focusing on a node group</title>
<p>We now present an algorithm that takes a group of nodes and expands this group to figure out the minimal sub-map consisting of these nodes, fulfilling the above requirements. Thus, the user can focus on specified nodes, hiding any other part of the map not directly related with the specified entities.</p>
<p specific-use="line"> <bold>algorithm</bold> <sc>ExpandNodes</sc>(nodeGroup)</p>
<p specific-use="line">1  nodeGroup ← nodeGroup ∪ nodeGroup.descendants()</p>
<p specific-use="line">2  nodeGroup ← nodeGroup ∪ nodeGroup.parents()</p>
<p specific-use="line">3  nodeGroup ← nodeGroup ∪ nodeGroup(‘complex’).descendants()</p>
<p specific-use="line">4  processes ← nodeGroup(‘process’)</p>
<p specific-use="line">5  nonProcesses ← nodeGroup(‘!process’)</p>
<p specific-use="line">6  neighborProcesses ← nonProcesses.neighborhood(‘process’)</p>
<p specific-use="line">7  nodeGroup ← nodeGroup ∪ processes.neighborhood() ∪ neighborProcesses</p>
<p specific-use="line">   ∪ neighborProcesses.neighborhood()</p>
<p specific-use="line">8  nodeGroup ← nodeGroup ∪ nodeGroup.parents()</p>
<p specific-use="line">9  nodeGroup ← nodeGroup ∪ nodeGroup(‘complex’).descendants()</p>
<p specific-use="line">10  <bold>return</bold> nodeGroup</p>
<p>As an example, suppose we are interested in a specific process and a specific molecular complex with the protein myosin as a member in a given SBGN-PD map (those nodes selected in orange in <xref ref-type="fig" rid="pone.0128985.g002">Fig 2A</xref>). If the above expand algorithm is applied, the resulting sub-map will be a valid SBGN-PD map of reduced size (<xref ref-type="fig" rid="pone.0128985.g003">Fig 3D</xref>). The steps of algorithm <sc>ExpandNodes</sc> applied to this map are detailed in Figs <xref ref-type="fig" rid="pone.0128985.g002">2</xref> and <xref ref-type="fig" rid="pone.0128985.g003">3</xref>.</p>
<fig id="pone.0128985.g002" position="float">
<object-id pub-id-type="doi">10.1371/journal.pone.0128985.g002</object-id>
<label>Fig 2</label>
<caption>
<title>Expanding a node group.</title>
<p>(A) A complex (containing myosin) and a process that consumes it are selected to be shown. (B) First step of the expansion algorithm adds all children of these nodes (myosin as a member of the complex in this case). (C) Then all parents of the current node group are included in the selection (a complex containing the myosin complex and muscle cytosol). (D) Node group is expanded to include any non-selected members of any complexes.</p>
</caption>
<graphic mimetype="image" xlink:type="simple" position="float" xlink:href="info:doi/10.1371/journal.pone.0128985.g002"/>
</fig>
<fig id="pone.0128985.g003" position="float">
<object-id pub-id-type="doi">10.1371/journal.pone.0128985.g003</object-id>
<label>Fig 3</label>
<caption>
<title>Expanding a node group (continued from <xref ref-type="fig" rid="pone.0128985.g002">Fig 2</xref>).</title>
<p>(A) Current selection includes a process (circled in blue) and a process (circled in red) is a neighbor of the current selection. The neighboring nodes of such processes are appended to the selection. (B) Parents (e.g., actin-myosin complex) of the current selected are included. (C) Any non-selected children of selected complexes are added to the selection. (D) Resulting map includes only those processes initially selected or that the initially selected complex is involved in. The rest are hidden.</p>
</caption>
<graphic mimetype="image" xlink:type="simple" position="float" xlink:href="info:doi/10.1371/journal.pone.0128985.g003"/>
</fig>
</sec>
<sec id="sec007">
<title>Ignoring a node group</title>
<p>Sometimes though, one might be interested in doing the inverse: hiding or deemphasizing certain selected entities in a map. It is natural to think that applying the expand algorithm described earlier on the remaining nodes, those not in the specified node group, should handle this situtation. However, this might undesirably expand the complement of the map to include specified nodes as well. For example, consider the map in <xref ref-type="fig" rid="pone.0128985.g004">Fig 4A</xref>. Suppose those nodes that are to be hidden are selected in orange, including native state of RSK. If we expand the remaining nodes, the native state of RSK will be included back for display; in fact, no nodes will be hidden.</p>
<fig id="pone.0128985.g004" position="float">
<object-id pub-id-type="doi">10.1371/journal.pone.0128985.g004</object-id>
<label>Fig 4</label>
<caption>
<title>Ignoring a node group.</title>
<p>(A) Selected nodes (in orange) are to be hidden from the drawing. (B) First, selected nodes are expanded. (C) Then, the remaining nodes (in orange) are expanded. (D) Only those nodes in the expanded group calculated in C are those nodes to be displayed.</p>
</caption>
<graphic mimetype="image" xlink:type="simple" position="float" xlink:href="info:doi/10.1371/journal.pone.0128985.g004"/>
</fig>
<p>The proper way to apply expansion and adjust the specified node group for the hide case is to first expand the specified nodes, followed by expanding the remaining nodes to decide on which nodes to show. The algorithm below does exactly that.</p>
<p specific-use="line"> <bold>algorithm</bold> <sc>HideSelectedNodes</sc>(nodeGroup, allElems)</p>
<p specific-use="line">1  elemsToShow ← <sc>ExpandRemainingNodes</sc>(nodeGroup, allElems)</p>
<p specific-use="line">2  elemsToHide ← allElems.not(elemsToShow)</p>
<p specific-use="line">3  hide elemsToHide</p>
<p specific-use="line"> <bold>algorithm</bold> <sc>ExpandRemainingNodes</sc>(nodeGroup, allElems)</p>
<p specific-use="line">1  nodeGroup ← <sc>ExpandNodes</sc>(nodeGroup)</p>
<p specific-use="line">2  remainingNodes ← allNodes.not(nodeGroup)</p>
<p specific-use="line">3  remainingNodes ← <sc>ExpandNodes</sc>(remainingNodes)</p>
<p specific-use="line">4  <bold>return</bold> remainingNodes</p>
<p>For the map in <xref ref-type="fig" rid="pone.0128985.g004">Fig 4A</xref>, hiding selected nodes in orange can thus be achieved by first expanding these nodes (<xref ref-type="fig" rid="pone.0128985.g004">Fig 4B</xref>), and then expanding the remaining nodes to end up with a sub-map (<xref ref-type="fig" rid="pone.0128985.g004">Fig 4C</xref>) to show.</p>
</sec>
</sec>
<sec id="sec008">
<title>Implementation</title>
<sec id="sec009">
<title>SBGNViz AS edition</title>
<p>SBGNViz.as is a client-side component based on Cytoscape Web [<xref ref-type="bibr" rid="pone.0128985.ref009">9</xref>] that requires no server side implementation, allowing developers to choose and implement any server side technology. The main network display component is implemented in Flex/ActionScript with a JavaScript API to facilitate any customization and interaction with the network view without needing to change and compile the Flash code. Even though a sample application is available to be used as an end product for visualization of SBGN-ML models (<xref ref-type="fig" rid="pone.0128985.g005">Fig 5</xref>), one can easily customize and embed SBGNViz.as within their own web pages.</p>
<fig id="pone.0128985.g005" position="float">
<object-id pub-id-type="doi">10.1371/journal.pone.0128985.g005</object-id>
<label>Fig 5</label>
<caption>
<title>Sample screenshot from SBNViz AS edition.</title>
</caption>
<graphic mimetype="image" xlink:type="simple" position="float" xlink:href="info:doi/10.1371/journal.pone.0128985.g005"/>
</fig>
<p><bold>Project home page</bold>: <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://code.google.com/p/sbgnviz-as/">https://code.google.com/p/sbgnviz-as/</ext-link>
</p>
<p><bold>Sample deployment</bold>: <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="http://www.cs.bilkent.edu.tr/~ivis/SBGNViz.as/">http://www.cs.bilkent.edu.tr/~ivis/SBGNViz.as/</ext-link>
</p>
<p><bold>Operating system(s)</bold>: Web based, platform independent</p>
<p><bold>Programming language</bold>: HTML + CSS + JavaScript + Adobe Flex</p>
<p><bold>Other requirements</bold>: Most common browsers with recent Adobe Flash</p>
<p><bold>License</bold>: GNU Lesser LGPL</p>
</sec>
<sec id="sec010">
<title>SBGNViz JS edition</title>
<p>SBGNViz.js is also a client-side component that is written purely in JavaScript based on Cytoscape.js [<xref ref-type="bibr" rid="pone.0128985.ref010">10</xref>]. It also comes with a sample application to be used as an end product (<xref ref-type="fig" rid="pone.0128985.g006">Fig 6</xref>) but one can easily customize and embed it within their own web pages as well.</p>
<fig id="pone.0128985.g006" position="float">
<object-id pub-id-type="doi">10.1371/journal.pone.0128985.g006</object-id>
<label>Fig 6</label>
<caption>
<title>Sample screenshot from SBNViz JS edition on a smart phone.</title>
</caption>
<graphic mimetype="image" xlink:type="simple" position="float" xlink:href="info:doi/10.1371/journal.pone.0128985.g006"/>
</fig>
<p><bold>Project home page</bold>: <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://code.google.com/p/sbgnviz-js/">https://code.google.com/p/sbgnviz-js/</ext-link>
</p>
<p><bold>Sample deployment</bold>: <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="http://www.cs.bilkent.edu.tr/~ivis/SBGNViz.js/">http://www.cs.bilkent.edu.tr/~ivis/SBGNViz.js/</ext-link>
</p>
<p><bold>Operating system(s)</bold>: Web based, platform independent</p>
<p><bold>Programming language</bold>: HTML5: HTML + CSS + JavaScript</p>
<p><bold>Other requirements</bold>: Most common browsers with recent versions</p>
<p><bold>License</bold>: GNU Lesser LGPL</p>
</sec>
</sec>
<sec id="sec011">
<title>Features</title>
<sec id="sec012">
<title>Loading and saving diagrams</title>
<p>Both SBGNViz editions allow input and output in SBGN-ML file format. In addition, the current drawing of the model can be saved as a static image in PNG and PDF (AS edition only) formats.</p>
</sec>
<sec id="sec013">
<title>Standard notation</title>
<p>Both editions of SBGNViz comply with the standard notation of SBGN-PD maps, including support for compound structures such as molecular complexes and cellular locations. Nesting structures are respected during geometry changes such as dragging of nodes in the map as well.</p>
</sec>
<sec id="sec014">
<title>Automated layout</title>
<p>A unique feature of SBGNViz is full support for compound structures, including an automated layout algorithm handling such structures without destroying proper nesting relations (<xref ref-type="fig" rid="pone.0128985.g007">Fig 7</xref>). The layout algorithm is executed on the client side using native implementations, making it more suitable for interactive applications.</p>
<fig id="pone.0128985.g007" position="float">
<object-id pub-id-type="doi">10.1371/journal.pone.0128985.g007</object-id>
<label>Fig 7</label>
<caption>
<title>Sample layout.</title>
<p>(A) A sample process description map laid out randomly. (B) The same map laid out using our specialized layout algorithm.</p>
</caption>
<graphic mimetype="image" xlink:type="simple" position="float" xlink:href="info:doi/10.1371/journal.pone.0128985.g007"/>
</fig>
</sec>
<sec id="sec015">
<title>Editing and highlighting</title>
<p>SBGNViz AS and JS editions inherit many customary network visualization features such as zooming and scrolling, deletion of nodes and edges, and highlighting of desired portions of network (<xref ref-type="fig" rid="pone.0128985.g008">Fig 8</xref>) from Cytoscape Web and Cytoscape.js libraries, respectively, adapted for SBGN-PD maps.</p>
<fig id="pone.0128985.g008" position="float">
<object-id pub-id-type="doi">10.1371/journal.pone.0128985.g008</object-id>
<label>Fig 8</label>
<caption>
<title>Sample highlight.</title>
<p>A sample screenshot illustrating how selecting and highlighting processes of a selected protein works</p>
</caption>
<graphic mimetype="image" xlink:type="simple" position="float" xlink:href="info:doi/10.1371/journal.pone.0128985.g008"/>
</fig>
</sec>
<sec id="sec016">
<title>Inspection of gene details</title>
<p>Detailed properties and external references to macromolecules or nucleic acid features may be fetched from the BioGene service [<xref ref-type="bibr" rid="pone.0128985.ref011">11</xref>] on demand (<xref ref-type="fig" rid="pone.0128985.g009">Fig 9</xref>).</p>
<fig id="pone.0128985.g009" position="float">
<object-id pub-id-type="doi">10.1371/journal.pone.0128985.g009</object-id>
<label>Fig 9</label>
<caption>
<title>A sample screenshot illustrating how genes may be inspected for details.</title>
</caption>
<graphic mimetype="image" xlink:type="simple" position="float" xlink:href="info:doi/10.1371/journal.pone.0128985.g009"/>
</fig>
</sec>
<sec id="sec017">
<title>Complexity management operations</title>
<p>SBGN JS edition provides operations for management of SBGN maps to reduce complexity. These operations (“Show Selected” and “Hide Selected”) are implemented using the methods described earlier.</p>
</sec>
</sec>
<sec id="sec018" sec-type="conclusions">
<title>Conclusion</title>
<p>SBGNViz AS edition takes biological maps to be displayed in SBGN-ML file format and renders them in SBGN-PD notation. In addition to regular network visualization software capabilities such as zoom/scroll, highlight, and deletion of nodes/edges, the tool has full support for compound structures such as compartments and molecular complexes, including a client-side specialized automatic layout capability. Furthermore, the user is allowed to dynamically inspect gene-specific information from EntrezGene [<xref ref-type="bibr" rid="pone.0128985.ref012">12</xref>] through BioGene facility.</p>
<p>SBGNViz JS edition has similar features to the AS edition. In addition, the JS edition will work on most common browsers out of the box, without requiring any installations, and may be used on touch enabled devices such as smart phones and tablets. Furthermore, it features novel complexity management techniques for reducing complexity of SBGN maps. This enables users to focus on a part of an SBGN map without worrying about being presented with an incomplete or invalid SBGN map.</p>
<p>These combined features distinguish SBGNViz from tools with similar capabilities such as BioGrapher [<xref ref-type="bibr" rid="pone.0128985.ref013">13</xref>], SBGN-ED [<xref ref-type="bibr" rid="pone.0128985.ref014">14</xref>], Cell Designer [<xref ref-type="bibr" rid="pone.0128985.ref015">15</xref>], and CySBGN [<xref ref-type="bibr" rid="pone.0128985.ref016">16</xref>]. SBGNViz is unique in that it features novel methods for reducing complexity of SBGN-PD maps without destroying the validity and integrity of processes in the map. In addition, it is the only web based visualization tool for SBGN-PD maps with full support for compound structures, including a specialized compound layout capability.</p>
</sec>
</body>
<back>
<ack>
<p>Authors thank Debbie Bemis for critical reading of the manuscript.</p>
</ack>
<ref-list>
<title>References</title>
<ref id="pone.0128985.ref001">
<label>1</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Demir</surname> <given-names>E</given-names></name>, <name name-style="western"><surname>Cary</surname> <given-names>MP</given-names></name>, <name name-style="western"><surname>Paley</surname> <given-names>S</given-names></name>, <name name-style="western"><surname>Fukuda</surname> <given-names>K</given-names></name>, <name name-style="western"><surname>Lemer</surname> <given-names>C</given-names></name>, <name name-style="western"><surname>Vastrik</surname> <given-names>I</given-names></name>, <etal>et al</etal>. <article-title>The BioPAX community standard for pathway data sharing</article-title>. <source>Nature Biotechnology</source>. <year>2010</year>;<volume>28</volume>(<issue>9</issue>):<fpage>935</fpage>–<lpage>942</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1038/nbt.1666" xlink:type="simple">10.1038/nbt.1666</ext-link></comment> <object-id pub-id-type="pmid">20829833</object-id></mixed-citation>
</ref>
<ref id="pone.0128985.ref002">
<label>2</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Novère</surname> <given-names>NL</given-names></name>, <name name-style="western"><surname>Hucka</surname> <given-names>M</given-names></name>, <name name-style="western"><surname>Mi</surname> <given-names>H</given-names></name>, <name name-style="western"><surname>Moodie</surname> <given-names>S</given-names></name>, <name name-style="western"><surname>Schreiber</surname> <given-names>F</given-names></name>, <name name-style="western"><surname>Sorokin</surname> <given-names>A</given-names></name>, <etal>et al</etal>. <article-title>The systems biology graphical notation</article-title>. <source>Nature Biotechnology</source>. <year>2009</year>;<volume>27</volume>(<issue>8</issue>):<fpage>735</fpage>–<lpage>741</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1038/nbt.1558" xlink:type="simple">10.1038/nbt.1558</ext-link></comment> <object-id pub-id-type="pmid">19668183</object-id></mixed-citation>
</ref>
<ref id="pone.0128985.ref003">
<label>3</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Babur</surname> <given-names>O</given-names></name>, <name name-style="western"><surname>Dogrusoz</surname> <given-names>U</given-names></name>, <name name-style="western"><surname>Cakir</surname> <given-names>M</given-names></name>, <name name-style="western"><surname>Aksoy</surname> <given-names>BA</given-names></name>, <name name-style="western"><surname>Schultz</surname> <given-names>N</given-names></name>, <name name-style="western"><surname>Sander</surname> <given-names>C</given-names></name>, <etal>et al</etal>. <article-title>Integrating biological pathways and genomic profiles with ChiBE 2</article-title>. <source>BMC Genomics</source>. <year>2014</year>;<volume>15</volume>:<fpage>642</fpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1186/1471-2164-15-642" xlink:type="simple">10.1186/1471-2164-15-642</ext-link></comment> <object-id pub-id-type="pmid">25086704</object-id></mixed-citation>
</ref>
<ref id="pone.0128985.ref004">
<label>4</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Cline</surname> <given-names>MS</given-names></name>, <name name-style="western"><surname>Smoot</surname> <given-names>M</given-names></name>, <name name-style="western"><surname>Cerami</surname> <given-names>E</given-names></name>, <name name-style="western"><surname>Kuchinsky</surname> <given-names>A</given-names></name>, <name name-style="western"><surname>Landys</surname> <given-names>N</given-names></name>, <name name-style="western"><surname>Workman</surname> <given-names>C</given-names></name>, <etal>et al</etal>. <article-title>Integration of biological networks and gene expression data using Cytoscape</article-title>. <source>Nature Protocols</source>. <year>2007</year>;<volume>2</volume>(<issue>10</issue>):<fpage>2366</fpage>–<lpage>2382</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1038/nprot.2007.324" xlink:type="simple">10.1038/nprot.2007.324</ext-link></comment> <object-id pub-id-type="pmid">17947979</object-id></mixed-citation>
</ref>
<ref id="pone.0128985.ref005">
<label>5</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>van Iersel</surname> <given-names>MP</given-names></name>, <name name-style="western"><surname>Villéger</surname> <given-names>A</given-names></name>, <name name-style="western"><surname>Czauderna</surname> <given-names>T</given-names></name>, <name name-style="western"><surname>Boyd</surname> <given-names>SE</given-names></name>, <name name-style="western"><surname>Bergmann</surname> <given-names>FT</given-names></name>, <name name-style="western"><surname>Luna</surname> <given-names>A</given-names></name>, <etal>et al</etal>. <article-title>Software support for SBGN maps: SBGN-ML and LibSBGN</article-title>. <source>Bioinformatics</source>. <year>2012</year>;<volume>28</volume>(<issue>15</issue>):<fpage>2016</fpage>–<lpage>2021</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1093/bioinformatics/bts270" xlink:type="simple">10.1093/bioinformatics/bts270</ext-link></comment> <object-id pub-id-type="pmid">22581176</object-id></mixed-citation>
</ref>
<ref id="pone.0128985.ref006">
<label>6</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Demir</surname> <given-names>E</given-names></name>, <name name-style="western"><surname>Babur</surname> <given-names>O</given-names></name>, <name name-style="western"><surname>Rodchenkov</surname> <given-names>I</given-names></name>, <name name-style="western"><surname>Aksoy</surname> <given-names>A</given-names></name>, <name name-style="western"><surname>Fukuda</surname> <given-names>K</given-names></name>, <name name-style="western"><surname>Gross</surname> <given-names>B</given-names></name>, <etal>et al</etal>. <article-title>Paxtools: A library for accessing, analyzing and creating biological pathway data</article-title>. <source>PloS Computational Biology</source>. <year>2013</year>;<volume>9</volume>(<issue>9</issue>):<fpage>e1003194</fpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1371/journal.pcbi.1003194" xlink:type="simple">10.1371/journal.pcbi.1003194</ext-link></comment> <object-id pub-id-type="pmid">24068901</object-id></mixed-citation>
</ref>
<ref id="pone.0128985.ref007">
<label>7</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Herman</surname> <given-names>I</given-names></name>, <name name-style="western"><surname>Melançon</surname> <given-names>G</given-names></name>, <name name-style="western"><surname>Marshall</surname> <given-names>MS</given-names></name>. <article-title>Graph Visualization and Navigation in Information Visualization: A Survey</article-title>. <source>IEEE Transactions on Visualization and Computer Graphics</source>. <year>2000</year>;<volume>6</volume>(<issue>1</issue>):<fpage>24</fpage>–<lpage>43</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1109/2945.841119" xlink:type="simple">10.1109/2945.841119</ext-link></comment></mixed-citation>
</ref>
<ref id="pone.0128985.ref008">
<label>8</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Dogrusoz</surname> <given-names>U</given-names></name>, <name name-style="western"><surname>Genc</surname> <given-names>B</given-names></name>. <article-title>A multi-graph approach to complexity management in interactive graph visualization</article-title>. <source>Computers &amp; Graphics</source>. <year>2006</year>;<volume>30</volume>(<issue>1</issue>):<fpage>86</fpage>–<lpage>97</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1016/j.cag.2005.10.015" xlink:type="simple">10.1016/j.cag.2005.10.015</ext-link></comment></mixed-citation>
</ref>
<ref id="pone.0128985.ref009">
<label>9</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Lopes</surname> <given-names>CT</given-names></name>, <name name-style="western"><surname>Franz</surname> <given-names>M</given-names></name>, <name name-style="western"><surname>Kazi</surname> <given-names>F</given-names></name>, <name name-style="western"><surname>Donaldson</surname> <given-names>SL</given-names></name>, <name name-style="western"><surname>Morris</surname> <given-names>Q</given-names></name>, <name name-style="western"><surname>Bader</surname> <given-names>GD</given-names></name>. <article-title>Cytoscape Web: an interactive web-based network browser</article-title>. <source>Bioinformatics</source>. <year>2010</year>;<volume>26</volume>(<issue>18</issue>):<fpage>2347</fpage>–<lpage>2348</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1093/bioinformatics/btq430" xlink:type="simple">10.1093/bioinformatics/btq430</ext-link></comment> <object-id pub-id-type="pmid">20656902</object-id></mixed-citation>
</ref>
<ref id="pone.0128985.ref010">
<label>10</label>
<mixed-citation xlink:type="simple" publication-type="other">Cytoscape.js: A graph theory library for analysis and visualisation;. Accessed: 2015-02-20. <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="http://js.cytoscape.org">http://js.cytoscape.org</ext-link>.</mixed-citation>
</ref>
<ref id="pone.0128985.ref011">
<label>11</label>
<mixed-citation xlink:type="simple" publication-type="other">BioGene: an information tool for biological research;. Accessed: 2015-02-20. <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="http://cbio.mskcc.org/biogene">http://cbio.mskcc.org/biogene</ext-link>.</mixed-citation>
</ref>
<ref id="pone.0128985.ref012">
<label>12</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Maglott</surname> <given-names>D</given-names></name>, <name name-style="western"><surname>Ostell</surname> <given-names>J</given-names></name>, <name name-style="western"><surname>Pruitt</surname> <given-names>KD</given-names></name>, <name name-style="western"><surname>Tatusova</surname> <given-names>T</given-names></name>. <source>Nucleic Acids Res</source>. <year>2005</year> <month>January</month>;<volume>33</volume>(<issue>Database issue</issue>):<fpage>54</fpage>–<lpage>58</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1093/nar/gki031" xlink:type="simple">10.1093/nar/gki031</ext-link></comment></mixed-citation>
</ref>
<ref id="pone.0128985.ref013">
<label>13</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Krause</surname> <given-names>F</given-names></name>, <name name-style="western"><surname>Schulz</surname> <given-names>M</given-names></name>, <name name-style="western"><surname>Ripkens</surname> <given-names>B</given-names></name>, <name name-style="western"><surname>Flöttmann</surname> <given-names>M</given-names></name>, <name name-style="western"><surname>Krantz</surname> <given-names>M</given-names></name>, <name name-style="western"><surname>Klipp</surname> <given-names>E</given-names></name>, <etal>et al</etal>. <article-title>Biographer: web-based editing and rendering of SBGN compliant biochemical networks</article-title>. <source>Bioinformatics</source>. <year>2013</year>;<volume>29</volume>(<issue>11</issue>):<fpage>1467</fpage>–<lpage>1468</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1093/bioinformatics/btt159" xlink:type="simple">10.1093/bioinformatics/btt159</ext-link></comment> <object-id pub-id-type="pmid">23574737</object-id></mixed-citation>
</ref>
<ref id="pone.0128985.ref014">
<label>14</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Czauderna</surname> <given-names>T</given-names></name>, <name name-style="western"><surname>Klukas</surname> <given-names>C</given-names></name>, <name name-style="western"><surname>Schreiber</surname> <given-names>F</given-names></name>. <article-title>Editing, validating and translating of SBGN maps</article-title>. <source>Bioinformatics</source>. <year>2010</year>;<volume>26</volume>(<issue>18</issue>):<fpage>2340</fpage>–<lpage>2341</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1093/bioinformatics/btq407" xlink:type="simple">10.1093/bioinformatics/btq407</ext-link></comment> <object-id pub-id-type="pmid">20628075</object-id></mixed-citation>
</ref>
<ref id="pone.0128985.ref015">
<label>15</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Funahashi</surname> <given-names>A</given-names></name>, <name name-style="western"><surname>Morohashi</surname> <given-names>M</given-names></name>, <name name-style="western"><surname>Kitano</surname> <given-names>H</given-names></name>, <name name-style="western"><surname>Tanimura</surname> <given-names>N</given-names></name>. <article-title>CellDesigner: a process diagram editor for gene-regulatory and biochemical networks</article-title>. <source>Biosilico</source>. <year>2003</year>;<volume>1</volume>(<issue>5</issue>):<fpage>159</fpage>–<lpage>162</lpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1016/S1478-5382(03)02370-9" xlink:type="simple">10.1016/S1478-5382(03)02370-9</ext-link></comment></mixed-citation>
</ref>
<ref id="pone.0128985.ref016">
<label>16</label>
<mixed-citation xlink:type="simple" publication-type="journal">
<name name-style="western"><surname>Gonçalves</surname> <given-names>EJV</given-names></name>, <name name-style="western"><surname>van Iersel</surname> <given-names>M</given-names></name>, <name name-style="western"><surname>Saez-Rodriguez</surname> <given-names>J</given-names></name>. <article-title>CySBGN: A Cytoscape plug-in to integrate SBGN maps</article-title>. <source>BMC Bioinformatics</source>. <year>2013</year>;<volume>14</volume>:<fpage>17</fpage>. <comment>doi: <ext-link ext-link-type="uri" xlink:href="http://dx.doi.org/10.1186/1471-2105-14-17" xlink:type="simple">10.1186/1471-2105-14-17</ext-link></comment> <object-id pub-id-type="pmid">23324051</object-id></mixed-citation>
</ref>
</ref-list>
</back>
</article>