+ * Returns command(s) to show only the backbone of the peptide (cartoons in
+ * Jmol, chain in Chimera)
+ *
+ * @return
+ */
+ List<StructureCommandI> showBackbone();
+
+ /**
+ * Returns a command to open a file at the given path
+ *
+ * @param file
+ * @return
+ */
+ // refactor if needed to distinguish loading data or session files
+ StructureCommandI loadFile(String file);
+
+ /**
+ * Returns commands to set atom attributes or properties, given a map of
+ * Jalview features as {featureType, {featureValue, AtomSpecModel}}. The
+ * assumption is that one command can be constructed for each feature type and
+ * value combination, to apply it to one or more residues.
+ *
+ * @param featureValues
+ * @return
+ */
+ List<StructureCommandI> setAttributes(
+ Map<String, Map<Object, AtomSpecModel>> featureValues);
+
+ /**
+ * Returns command to open a saved structure viewer session file, or null if
+ * not supported
+ *
+ * @param filepath
+ * @return
+ */
+ StructureCommandI openSession(String filepath);
+
+ /**
+ * Returns command to restore a previously saved version of an existing
+ * structure viewer session file. Default implementation calls 'openSession'
+ *
+ * @param filePath
+ * @return
+ */
+ StructureCommandI restoreSession(String filePath);
+
+ /**
+ * Returns a command to ask the viewer to close down
+ *
+ * @return
+ */
+ StructureCommandI closeViewer();
+
+ /**
+ * Returns one or more commands to ask the viewer to notify model or selection
+ * changes to the given uri. Returns null if this is not supported by the
+ * structure viewer.
+ *
+ * @param uri
+ * @return
+ */
+ List<StructureCommandI> startNotifications(String uri);
+
+ /**
+ * Returns one or more commands to ask the viewer to stop notifying model or
+ * selection changes. Returns null if this is not supported by the structure
+ * viewer.
+ *
+ * @return
+ */
+ List<StructureCommandI> stopNotifications();
+
+ /**
+ * Returns a command to ask the viewer for its current residue selection, or
+ * null if no such command is supported
+ *
+ * @return
+ */
+ StructureCommandI getSelectedResidues();
+
+ /**
+ * Returns a command to list the unique names of residue attributes, or null
+ * if no such command is supported