Differences between revisions 2 and 3
Revision 2 as of 2011-03-01 20:21:38
Size: 2307
Editor: 142
Comment:
Revision 3 as of 2011-03-01 20:33:55
Size: 2466
Editor: 142
Comment:
Deletions are marked like this. Additions are marked like this.
Line 18: Line 18:
    1. Visual properties of inaccessible types (e.g. org.cytoscape.ding.NodeShape) are awkward to set programmatically.     1. ['''UC1''','''UC2'''] Very awkward to serialize visual properties for formats other than XGMML.
        * Currently, we need to map between XGMML attribute strings and the target format's strings (e.g. GML).
    1. ['''UC3''']
Visual properties of inaccessible types (e.g. org.cytoscape.ding.NodeShape) are awkward to set programmatically.
Line 20: Line 22:
    1. Visual properties of inaccessible types (e.g. org.cytoscape.ding.NodeShape) are awkward to use with discrete mappers programmatically.
    1. Not possible to serialize visual properties for formats other than XGMML.
    1. ['''UC4'''] Visual properties of inaccessible types (e.g. org.cytoscape.ding.NodeShape) are awkward to use with discrete mappers programmatically.

Visual Property Discussion

Existing System

visualprops-1.png

Legend

  • Green arrows: Serialization relationships
  • Blue arrows: Parsing relationships

Use Cases

Issues

  1. [UC1,UC2] Very awkward to serialize visual properties for formats other than XGMML.

    • Currently, we need to map between XGMML attribute strings and the target format's strings (e.g. GML).
  2. [UC3] Visual properties of inaccessible types (e.g. org.cytoscape.ding.NodeShape) are awkward to set programmatically.

    • Currently, you need to use a VisualProperty instance to construct a NodeShape instance by parsing the serialized form of the desired shape.

  3. [UC4] Visual properties of inaccessible types (e.g. org.cytoscape.ding.NodeShape) are awkward to use with discrete mappers programmatically.

Assumptions

  • RenderingEngine implementations and I/O implementations cannot know about one another.

Options

  • O1: No change. Let RenderingEngines handle visual property serialization.

    • RenderingEngine implementation can only serialize to and from one format.

    • Inhibited: UC1, UC2

    • Awkward: UC3, UC4.


visualprops-2.png

  • O2: Same as O1 but serialization format is not specific to any particular format.

    • Converting between generic format and a particular file type's format is just a string mapping.
    • Flexible, but potentially difficult to validate.
    • List of allowable string values would need to be documented somewhere.
    • Awkward: UC3, UC4.


visualprops-3.png

  • O3: Let CyNetworkViewReader/WriterFactories handle visual property serialization.

    • All visual property types would need to be exposed as API.
    • RenderingEngines can still introduce arbitrary visual property types.

      • However, these would not be accessible programmatically unless the vendor also supplies an API bundle for the new types.

Outdated_Cytoscape_3.0/Mini_Retreat2/VisualPropertyDiscussion (last edited 2011-03-02 16:42:51 by 142)

Funding for Cytoscape is provided by a federal grant from the U.S. National Institute of General Medical Sciences (NIGMS) of the Na tional Institutes of Health (NIH) under award number GM070743-01. Corporate funding is provided through a contract from Unilever PLC.

MoinMoin Appliance - Powered by TurnKey Linux