Ecoinformatics site parent site of Partnership for Biodiversity Informatics site parent site of REAP - Home


 

 

 



O Pe NDAP Discovery And Subsetting

Difference between version 14 and version 5:

Line 3 was replaced by line 3
- So my idea was to use a browser to allow the user to navigate to datasets of interest using the OPeNDAP servers web interface. When the user selects a data set by clicking on an of the DAP response types the request is caught and the DDS is rendered as a
+ My idea was to use a browser to allow the user to navigate to data sets of interest using the OPeNDAP servers web interface. When the user selects a data set by clicking on one of the DAP response types the request is caught and the DDS is rendered as a
Line 6 was replaced by line 6
- [{Image src='menu.jpg' caption='Software Installer Snap' }]
+ ![{Image src='menu.jpg' caption='Software Installer Snapshot' }]
Line 8 was replaced by line 8
- Where the interface allows the use to select parts of the hierarchy by clicking the selection boxes. Selecting a node selects all of it's children. Expandin a node and selecting some of it's children cuases the selection icon for the node ito indicate that is partially selected. So I would sketch the UI like this:
+ Where the interface allows the user to select parts of the hierarchy by clicking the selection boxes. Selecting a node selects all of it's children. Expanding a node and selecting some of it's children causes the selection icon for the node to indicate that is partially selected ([PartialSelect.gif]). So I would sketch the UI like this:
Line 11 was replaced by line 11
- [{Image src='db0.jpg' caption='UI Sketch' height='480'}]
+ ![{Image src='db0.jpg' caption='UI Sketch' width='800' link='http://reap.ecoinformatics.org/attach?page=OPeNDAPDiscoveryAndSubsetting%2Fdb0.jpg'}]
Line 14 was replaced by line 14
- So I built a simple prototype. The browser is pretty limited (it doesn't do javascript or Ajax) but it works. Here is a snapshot of the UI pointed at a collection page of the OPeNDAP test server:
+ I built a simple prototype. The browser is pretty limited (it doesn't do javascript or Ajax) but it works. Here is a snapshot of the UI pointed at a collection page of the OPeNDAP test server:
Line 16 was replaced by line 16
- [{Image src='db1.jpg' caption='UI Snapshot 1' }]
+ ![{Image src='db1.jpg' caption='UI Snapshot 1' width='800' link='http://reap.ecoinformatics.org/attach?page=OPeNDAPDiscoveryAndSubsetting%2Fdb1.jpg'}]
At line 17 added 1 line.
+
Line 20 was replaced by line 21
- [{Image src='db2.jpg' caption='UI Snapshot 2' }]
+ ![{Image src='db2.jpg' caption='UI Snapshot 2' width='800' link='http://reap.ecoinformatics.org/attach?page=OPeNDAPDiscoveryAndSubsetting%2Fdb2.jpg'}]
Line 22 was replaced by line 23
- And I stopped there because it's clearly going to get a lot more complex pretty quickly and I want to get peoples input.
+ And I stopped writing code there because it's clearly going to get a lot more complex pretty quickly and it's time to solicit input. The rest of the idea is that when a user selects a variable by highlighting (single clicking on) the name in the data set tree the appropriate sub-setting interface appears in the Sub-setting Pane. By navigating the data set tree, clicking the check boxes, and highlighting the selected variables the user can build the data request that they want.
Line 24 was replaced by line 25
- So I have some questions:
+ I have some questions:
Line 26 was replaced by line 27
- # Does this seem like a reasonable design time inteface?
+ # Does this seem like a reasonable design time interface?
Line 28 was replaced by lines 29-30
- Basically I can see how to implement custom icons and the like in a JTree but I am stuck on how to get the mouse event behavior I want.
+ Basically I can see how to implement custom icons and the like in a JTree but I am stuck on how to get the mouse event behavior I want.
+ I imagine that this kind of tree has been implemented in java by someone somewhere.
Line 33 was replaced by lines 35-57
- ** Nodes that are partially selected have the [PartialSelect.tiff] icon
+ ** Nodes that are partially selected have the [PartialSelect.gif] icon
+
+ I can see a couple of things to try beyond this:
+
+ # I could have the browser pane change to a (lazy loading!) Tree hierarchy when the user drops in the URL for a THREDDS catalog. They could then traverse the THREDDS tree and when they get to a leaf the view would switch the view of metadata on the left with the dataset hierarchy in the center pane.
+ #There is a [pure java open source browser call Lobo|http://lobobrowser.org/] that I may be able to bend to this purpose. Lobo supports both javascript and Ajax - this is important for discovery.
+ # James and I had an interesting conversation about sub-setting OPeNDAP data sets: Every DAP server has a sub-setting tool built into it, accessible via a web browser. Some sites have customized this sub-setting page to work more closely with the data held there. It may be that the smart thing to do is to allow the server to provide the sub-setting interface for the data being served, rather than trying to develop a universal sub-setting interface for the client. To that end a browser like Lobo could be used to embed the rendering of the sub-setting interface in the DAP UI for Kepler. Once the user submits the form to get data, the Kepler UI would intercept the request and use it to configure the actor.
+
+ Any input you all care to give would be welcome!
+
+ N
+
+ ----
+
+ James says:
+
+ How about making the left panes work more like the mac's finder window. Suppose you started with a thredds catalog URL and got it's contents in the leftmost pane. Then click on an item such as a catalog and see that in the pane to the right. Suppose there were many catalogs in a nested hierarchy, the number of panes would be limited to say four, with the leftmost stuff rotating off to the left (and out of the display). Then you get to data and the thing that appears is the IFH in the pane to the right.
+
+ I know that in your text on the wiki you talk about this, but I just wanted to say it too.
+
+ The advantage of using the IFH is two fold: First, it can be customized and we can even install a Kepler version on a Kepler machine and use it to reference data sets/sources that are remote to it (the interface _is_ bundled with the server, but it can actually run on any machine on the network). So it's easy for us to tweak. Second, we can then direct effort to improve the IFH - a long-time goal of mine - and see benefits for all users, not just kepler users. Conversely, Kepler can also see benefits from improvements other projects make to the interface.
+
+ We have not improved the interface at all since I wrote the initial version years ago (but it's widely used). I think this is largely because it's hard to update server-side code in a timely manor (although it's easier with Hyrax and we could think about/propose some innovative update techniques that are just too involved for me to get into here - I have seven minutes left before the telecon. The other reason is that I think most people want to make the 'killer app' and that's just not very often a data server...
At line 34 added 1 line.
+ ----

Back to O Pe NDAP Discovery And Subsetting, or to the Page History.