Differences between revisions 45 and 46
Revision 45 as of 2005-10-04 19:47:51
Size: 2898
Editor: mskresolve-b
Comment:
Revision 46 as of 2005-10-04 19:52:03
Size: 2740
Editor: mskresolve-b
Comment:
Deletions are marked like this. Additions are marked like this.
Line 11: Line 11:
9/30/2005, Version 0.1 of the proposal is below. This represents Ethan's first stab at creating a new API. 10/4/2005, Version 0.2 of the proposal is below. This represents a beta version of the API, with input from: Nerius, Iliana, Rowan, Gary and Ethan.
Line 21: Line 21:
  * I propose that the interface be called {{{AttributeData}}}, rather than {{{CytoscapeData}}}. I think this is more descriptive, and besides, not all our classes have to have the word Cytoscape in it. ["/RFC1 Comment Name"]   * The new interface is now called {{{CyAttributes}}}. ["/RFC1 Comment Name"]
Line 23: Line 23:
  * We provide several overloaded version of setAttribute, one for each basic data type, e.g. {{{setAttribute(String id, String attributeName, double value)}}}. We also provide several varients of getAttribute, e.g. {{{Double getDoubleAttribute(String id, String attributeName)}}}. ["/RFC1 Comment Getters Setters"]   * The API provides several overloaded version of {{{setAttribute}}}, one for each basic data type, e.g. {{{setAttribute(String id, String attributeName, double value)}}}. It also provides several varients of getAttribute, e.g. {{{Double getDoubleAttribute(String id, String attributeName)}}}. ["/RFC1 Comment Getters Setters"]
Line 25: Line 25:
  * {{{AttributeData}}} provides support for 'simple' lists. By simple, I mean that each list can only contain Objects of type: Boolean, Integer, Double and String, and each item must be of the same data type. {{{AttributeData}}} enforces this requirement explicitly. See proposed API below. ["/RFC1 Comment Lists"]   * {{{CyAttributes}}} provides support for 'simple' lists. A 'simple' list is defined as follows:
     * All items within the list are of the same type, and are chosen from one of the following: Boolean, Integer, Double or String. ["/RFC1 Comment Lists"]

TableOfContents([2])

About this Document

This is an official Request for Comment (RFC) for replacing GraphObjAttributes.

Status

10/4/2005, Version 0.2 of the proposal is below. This represents a beta version of the API, with input from: Nerius, Iliana, Rowan, Gary and Ethan.

How to Comment:

To view/add comments, click on any of 'Comment' links below. By adding your ideas to the Wiki directly, we can more easily organize everyone's ideas, and keep clear records. Be sure to include today's date and your name for each comment. Here is an example to get things started: ["/RFC1 Comment Name"].

Try to keep your comments as concrete and constructive as possible. For example, if you find a part of the API makes no sense, please say so, but don't stop there. Take the extra step and propose alternatives.

General Notes:

  • The new interface is now called CyAttributes. ["/RFC1 Comment Name"]

  • The API provides several overloaded version of setAttribute, one for each basic data type, e.g. setAttribute(String id, String attributeName, double value). It also provides several varients of getAttribute, e.g. Double getDoubleAttribute(String id, String attributeName). ["/RFC1 Comment Getters Setters"]

  • CyAttributes provides support for 'simple' lists. A 'simple' list is defined as follows:

    • All items within the list are of the same type, and are chosen from one of the following: Boolean, Integer, Double or String. ["/RFC1 Comment Lists"]
  • AttributeData provides support for 'simple' maps. By simple, I mean that all keys in the map must be of type String, and all values must be of the same type, and must be one of: Boolean, Integer, Double, and String. AttributeData enforces these requirement explicitly. See proposed API below. ["/RFC1 Comment Maps"]

  • To do complicated things, such as create arbitarily complex data structures, you can obtain a copy of CyData and CyDataDefinition from AttributeData. Advanced users who need this functionality can read through the CyData and CyDataDefinition Javadocs. ["/RFC1 Comment Complex Data Structures"]

  • Item not yet covered: Event / Listener Framework ["/RFC1 Comment Event Framework"]
  • Item not yet covered: support for Labels (Rowan has this feature in the current implementation of CytoscapeData) ["/RFC1 Comment Labels"]

  • Item not yet covered: recommended attribute names ["/RFC1 Comment Attribute Names"]
  • ["/RFC1 Comment API"]

Proposed API: Version 0.1

RFC_1 (last edited 2009-02-12 01:04:12 by localhost)

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